[Home]

Summary:ASTERISK-13510: wrong call-limit count when counteronpeer=yes
Reporter:caspy (caspy)Labels:
Date Opened:2009-02-04 05:17:53.000-0600Date Closed:2009-02-10 09:39:55.000-0600
Priority:MajorRegression?No
Status:Closed/CompleteComponents:Channels/chan_sip/General
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:( 0) chan_sip.c.patch.callcount
Description:If i set counteronpeer=yes in sip.conf, then inuse and inringing counters will be dropped to zero on nearest call to device.

This is result of combined 'if':
if ((*inuse > 0) && ast_test_flag(&fup->flags[0], SIP_INC_COUNT)) {
  (*inuse)--;
  ast_clear_flag(&fup->flags[0], SIP_INC_COUNT);
} else {
  *inuse = 0;
}

if inuse>0, but no flag SIP_INC_COUNT, -  inuse will be cleared, but should be left untouched. (and the same for inringing)


in attached patch there is a dirty hack - i simply comment out setting zero.
in my case it works ok, but i'm not sure that it is don't break anything else.


****** ADDITIONAL INFORMATION ******

looking on code of 1.6.1 - there will be the same problem, inspite of absent 'couonteronpeer' option.
Comments:By: Digium Subversion (svnbot) 2009-02-10 09:37:09.000-0600

Repository: asterisk
Revision: 174543

U   trunk/channels/chan_sip.c

------------------------------------------------------------------------
r174543 | file | 2009-02-10 09:37:07 -0600 (Tue, 10 Feb 2009) | 6 lines

Make the logic for inuse and inringing manipluation match that of 1.4. The old broken logic would reset the values back to 0 during certain scenarios causing the wrong state to be reported.
(closes issue ASTERISK-13510)
Reported by: caspy
(issue ASTERISK-12521)
Reported by: kowalma

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=174543

By: Digium Subversion (svnbot) 2009-02-10 09:39:02.000-0600

Repository: asterisk
Revision: 174544

_U  branches/1.6.0/
U   branches/1.6.0/channels/chan_sip.c

------------------------------------------------------------------------
r174544 | file | 2009-02-10 09:39:01 -0600 (Tue, 10 Feb 2009) | 13 lines

Merged revisions 174543 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
 r174543 | file | 2009-02-10 11:37:07 -0400 (Tue, 10 Feb 2009) | 6 lines
 
 Make the logic for inuse and inringing manipluation match that of 1.4. The old broken logic would reset the values back to 0 during certain scenarios causing the wrong state to be reported.
 (closes issue ASTERISK-13510)
 Reported by: caspy
 (issue ASTERISK-12521)
 Reported by: kowalma
........

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=174544

By: Digium Subversion (svnbot) 2009-02-10 09:39:55.000-0600

Repository: asterisk
Revision: 174545

_U  branches/1.6.1/
U   branches/1.6.1/channels/chan_sip.c

------------------------------------------------------------------------
r174545 | file | 2009-02-10 09:39:54 -0600 (Tue, 10 Feb 2009) | 13 lines

Merged revisions 174543 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
 r174543 | file | 2009-02-10 11:37:07 -0400 (Tue, 10 Feb 2009) | 6 lines
 
 Make the logic for inuse and inringing manipluation match that of 1.4. The old broken logic would reset the values back to 0 during certain scenarios causing the wrong state to be reported.
 (closes issue ASTERISK-13510)
 Reported by: caspy
 (issue ASTERISK-12521)
 Reported by: kowalma
........

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=174545