summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenny Prijono <bennylp@teluu.com>2009-06-25 11:29:49 +0000
committerBenny Prijono <bennylp@teluu.com>2009-06-25 11:29:49 +0000
commitef65df46ee1615f43734c36a14c9d0254113b697 (patch)
tree448924c4ed2a84cba3cefc6b03fd37347a418f71
parenta84c68a1426bd6b2dc6494cbaada6f16a1c5b29b (diff)
Ticket #843: Error parsing status line in sipfrag message body in call transfer scenario (thanks Tomáš Valenta for the report!)
- backported changes from #842 git-svn-id: http://svn.pjsip.org/repos/pjproject/branches/1.0@2802 74dad513-b988-da41-8d7b-12977e46ad98
-rw-r--r--pjsip/src/pjsip/sip_parser.c3
-rw-r--r--pjsip/src/pjsua-lib/pjsua_call.c6
2 files changed, 5 insertions, 4 deletions
diff --git a/pjsip/src/pjsip/sip_parser.c b/pjsip/src/pjsip/sip_parser.c
index e86cf601..a5a8e033 100644
--- a/pjsip/src/pjsip/sip_parser.c
+++ b/pjsip/src/pjsip/sip_parser.c
@@ -1588,7 +1588,8 @@ PJ_DEF(pj_status_t) pjsip_parse_status_line( char *buf, pj_size_t size,
PJ_USE_EXCEPTION;
pj_bzero(status_line, sizeof(*status_line));
- pj_scan_init(&scanner, buf, size, 0, &on_syntax_error);
+ pj_scan_init(&scanner, buf, size, PJ_SCAN_AUTOSKIP_WS_HEADER,
+ &on_syntax_error);
PJ_TRY {
int_parse_status_line(&scanner, status_line);
diff --git a/pjsip/src/pjsua-lib/pjsua_call.c b/pjsip/src/pjsua-lib/pjsua_call.c
index 5d73faeb..2276da3e 100644
--- a/pjsip/src/pjsua-lib/pjsua_call.c
+++ b/pjsip/src/pjsua-lib/pjsua_call.c
@@ -3403,7 +3403,7 @@ static void xfer_client_on_evsub_state( pjsip_evsub *sub, pjsip_event *event)
msg = rdata->msg_info.msg;
body = msg->body;
if (!body) {
- PJ_LOG(4,(THIS_FILE,
+ PJ_LOG(2,(THIS_FILE,
"Warning: received NOTIFY without message body"));
return;
}
@@ -3412,7 +3412,7 @@ static void xfer_client_on_evsub_state( pjsip_evsub *sub, pjsip_event *event)
if (pj_stricmp2(&body->content_type.type, "message") != 0 ||
pj_stricmp2(&body->content_type.subtype, "sipfrag") != 0)
{
- PJ_LOG(4,(THIS_FILE,
+ PJ_LOG(2,(THIS_FILE,
"Warning: received NOTIFY with non message/sipfrag "
"content"));
return;
@@ -3422,7 +3422,7 @@ static void xfer_client_on_evsub_state( pjsip_evsub *sub, pjsip_event *event)
status = pjsip_parse_status_line((char*)body->data, body->len,
&status_line);
if (status != PJ_SUCCESS) {
- PJ_LOG(4,(THIS_FILE,
+ PJ_LOG(2,(THIS_FILE,
"Warning: received NOTIFY with invalid "
"message/sipfrag content"));
return;