Переглянути джерело

modules/siputils: generate error message if parsing of is_gruu() uri fails

(cherry picked from commit 365a60772de9c1d2f19ecf52b12f6d75b348e996)
(cherry picked from commit 7453f5e3b10b4a257eb2e1e1650bfabc5f381ec5)
Juha Heinanen 11 роки тому
батько
коміт
9058b2ff76
1 змінених файлів з 10 додано та 5 видалено
  1. 10 5
      modules/siputils/sipops.c

+ 10 - 5
modules/siputils/sipops.c

@@ -87,7 +87,7 @@ int w_cmp_aor(struct sip_msg *msg, char *uri1, char *uri2)
 
 
 int w_is_gruu(sip_msg_t *msg, char *uri1, char *p2)
 int w_is_gruu(sip_msg_t *msg, char *uri1, char *p2)
 {
 {
-	str s1;
+        str s1, *s2;
 	sip_uri_t turi;
 	sip_uri_t turi;
 	sip_uri_t *puri;
 	sip_uri_t *puri;
 
 
@@ -98,12 +98,17 @@ int w_is_gruu(sip_msg_t *msg, char *uri1, char *p2)
 			LM_ERR("cannot get first parameter\n");
 			LM_ERR("cannot get first parameter\n");
 			return -8;
 			return -8;
 		}
 		}
-		if(parse_uri(s1.s, s1.len, &turi)!=0)
-			return -1;
+		if(parse_uri(s1.s, s1.len, &turi)!=0) {
+		    LM_ERR("parsing of uri '%.*s' failed\n", s1.len, s1.s);
+		    return -1;
+		}
 		puri = &turi;
 		puri = &turi;
 	} else {
 	} else {
-		if(parse_sip_msg_uri(msg)<0)
-			return -1;
+  	        if(parse_sip_msg_uri(msg)<0) {
+		    s2 = GET_RURI(msg);
+  		    LM_ERR("parsing of uri '%.*s' failed\n", s2->len, s2->s);
+		    return -1;
+		}
 		puri = &msg->parsed_uri;
 		puri = &msg->parsed_uri;
 	}
 	}
 	if(puri->gr.s!=NULL)
 	if(puri->gr.s!=NULL)