diff options
author | Benny Prijono <bennylp@teluu.com> | 2009-06-25 11:29:49 +0000 |
---|---|---|
committer | Benny Prijono <bennylp@teluu.com> | 2009-06-25 11:29:49 +0000 |
commit | ef65df46ee1615f43734c36a14c9d0254113b697 (patch) | |
tree | 448924c4ed2a84cba3cefc6b03fd37347a418f71 | |
parent | a84c68a1426bd6b2dc6494cbaada6f16a1c5b29b (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.c | 3 | ||||
-rw-r--r-- | pjsip/src/pjsua-lib/pjsua_call.c | 6 |
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; |