[asterisk-dev] Asterisk 16 / pjsip: actual SDP handling in case of late offer during outbound call seems to break call
Joshua C. Colp
jcolp at digium.com
Fri Aug 9 13:09:52 CDT 2019
On Fri, Aug 9, 2019, at 2:58 PM, Michael Maier wrote:
<snip>
>
> I think I probably realized now the real problem of the wrong SDP
> session version: Based on this patch
>
> diff -urN asterisk-16.3.0.orig/res/res_pjsip/pjsip_message_filter.c
> asterisk-16.3.0/res/res_pjsip/pjsip_message_filter.c
> --- asterisk-16.3.0.orig/res/res_pjsip/pjsip_message_filter.c
> 2019-04-04 16:49:57.000000000 +0200
> +++ asterisk-16.3.0/res/res_pjsip/pjsip_message_filter.c
> 2019-06-18 14:46:57.784000000 +0200
> @@ -341,6 +341,10 @@
> }
> }
>
> + /* set new sdp version */
> + ast_debug(5, "increment SDP version, starting from
> %x\n",sdp->origin.version);
> + sdp->origin.version+=1;
> +
> pjsip_tx_data_invalidate_msg(tdata);
> }
>
> ---------------------------------------------------------------------------------------------------------------------------
>
> I detected, that the starting point is wrong during the following call
> to the provider:
>
>
> INVITE / SDP session version starts at 0x1c91867
> INVITE + AUTH / SDP session version starts at 0x1C91868 (this is ok)
>
> ReInvite 1 from Provider
> OK ReInvite / SDP session version starts at 0x1C91867 (this is not ok
> - should start at 0x1C91869 and not from beginning)
>
> ReInvite 2 from Provider
> OK ReInvite / SDP session version starts at 0x1C91867 (this is not ok
> - should start at 0x1C91870 and not from beginning)
>
> Seems, that asterisk uses for the 200 OKs the initial session, starting
> at the first INVITE instead of using the session data based on the
> INVITE + AUTH.
> Or is there my patch broken?
I don't really understand your question. I don't think the patch is the true fix, it's just a convenient place to increment it. I haven't looked deeply into things so I don't really have anything additional to add.
--
Joshua C. Colp
Digium - A Sangoma Company | Senior Software Developer
445 Jan Davis Drive NW - Huntsville, AL 35806 - US
Check us out at: www.digium.com & www.asterisk.org
More information about the asterisk-dev
mailing list