Skip to content
Snippets Groups Projects
Commit db21f7f2 authored by Kevin Harwell's avatar Kevin Harwell
Browse files

pjsip: 183 without To tag does not negotiate media

If a 183 with sdp response is receive without a To tag the sdp is not
negotiated. According to RFC 3261 section 12.1.2 while a To tag is required,
the client needs to still be able to handle the missing tag case for
backwards compatibility.

This patch, accepted by and applied to pjproject, makes it so if an incoming
180/183 with SDP comes in without a To tag it gets appropriately handled.

ASTERISK-27442 #close

Change-Id: Ic9d6b01e05e8f4874eebbd7adfe05d932025d203
parent ac6b029f
No related branches found
No related tags found
No related merge requests found
diff --git a/pjsip/src/pjsip-ua/sip_inv.c b/pjsip/src/pjsip-ua/sip_inv.c
index c9686a0..fc52a63 100644
--- a/pjsip/src/pjsip-ua/sip_inv.c
+++ b/pjsip/src/pjsip-ua/sip_inv.c
@@ -4156,9 +4156,10 @@ static void inv_on_state_calling( pjsip_inv_session *inv, pjsip_event *e)
status = pjsip_inv_send_msg(inv, cancel);
}
- if (dlg->remote.info->tag.slen) {
+ if (tsx->status_code != 100) {
- inv_set_state(inv, PJSIP_INV_STATE_EARLY, e);
+ if (dlg->remote.info->tag.slen)
+ inv_set_state(inv, PJSIP_INV_STATE_EARLY, e);
inv_check_sdp_in_incoming_msg(inv, tsx,
e->body.tsx_state.src.rdata);
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment