Summary:ASTERISK-20781: [patch] One leg of the call is locked when a session timer below 60 is received by the asterisk.
Reporter:Everson Pereira (everson.pereira)Labels:patch
Date Opened:2012-12-11 06:24:00.000-0600Date Closed:
Versions: 10.9.0 13.18.4 Frequency of
Environment:Attachments:( 0) ASTERISK-20781.patch
( 1) console.txt
( 2) full
( 3) ngrep.txt
( 4) sip.conf
( 5) uac-session-timer.xml
Description:When Asterisk receives an INVITE from a client a session timer with less than 60 seconds, asterisk rejects the call, but the call leg is locked and when you use the command core show channels the call is listed even though it was rejected.

If I change the line 28751, line 29760 in chan_sip.c(as shown below) and set session-minse=1 in sip.conf the problem no longer occurs.

if (peer->stimer.st_min_se < 90) {
to if (peer->stimer.st_min_se < 1) {

if (global_min_se < 90) {
to if (global_min_se < 1) {

Comments:By: Mark Michelson (mmichelson) 2012-12-14 17:57:53.467-0600

I've attached a SIPp scenario that reproduces the issue.

All you have to do is set session-timers=originate or session-timers=accept in sip.conf and this will work.

By: Everson Pereira (everson.pereira) 2012-12-20 06:41:52.114-0600

An example of an INVITE. The call is not completed, and even after hangup, when I run the command "core show channels", a call is locked.
The parameter session-timers=accept already been set.

By: Mark Michelson (mmichelson) 2012-12-20 17:07:36.281-0600

I'm uploading ASTERISK-20781.patch. With this applied, the SIPp scenario I attached no longer causes a channel reference leak. Please see if this works for you as well.

By: Everson Pereira (everson.pereira) 2013-01-07 05:56:40.085-0600

Apparently it worked, could you post the patch to version 10.9.0 too?
Thank you.

By: Everson Pereira (everson.pereira) 2013-01-22 10:59:31.635-0600

Problem solved, if possible just add the patch to version 10 of the asterisk.

By: Matt Jordan (mjordan) 2013-01-22 11:07:46.596-0600

Thanks for confirming that the patch fixed the bug!

We'll leave the issue open for now, as the patch hasn't been committed yet. Once the patch has been committed, this issue will be closed automatically.

Thanks again for testing it!