[asterisk-bugs] [Asterisk 0016815]: [patch] chan_sip does not decrease module refcount on deferred BYE
Asterisk Bug Tracker
noreply at bugs.digium.com
Tue Jun 22 12:37:26 CDT 2010
A NOTE has been added to this issue.
======================================================================
https://issues.asterisk.org/view.php?id=16815
======================================================================
Reported By: rain
Assigned To: mnicholson
======================================================================
Project: Asterisk
Issue ID: 16815
Category: Channels/chan_sip/General
Reproducibility: always
Severity: minor
Priority: normal
Status: closed
Target Version: 1.6.2.10
Asterisk Version: SVN
JIRA: SWP-911
Regression: No
Reviewboard Link:
SVN Branch (only for SVN checkouts, not tarball releases): N/A
SVN Revision (number only!):
Request Review:
Resolution: fixed
Fixed in Version:
======================================================================
Date Submitted: 2010-02-11 14:35 CST
Last Modified: 2010-06-22 12:37 CDT
======================================================================
Summary: [patch] chan_sip does not decrease module refcount
on deferred BYE
Description:
When sip_hangup clears a channel with SIP_DEFER_BYE_ON_TRANSFER set, it
will return without calling ast_module_unref(). This causes the use
counter for chan_sip to increase over time, making it impossible to unload
the module without restarting Asterisk.
The attached patch calls ast_module_unref() immediately before returning
in the deferred BYE case. I believe this is safe, because the SIP dialog
involved will still be freed when the containing AO2 object's refcount hits
0 as part of module_unload.
======================================================================
----------------------------------------------------------------------
(0123726) svnbot (reporter) - 2010-06-22 12:37
https://issues.asterisk.org/view.php?id=16815#c123726
----------------------------------------------------------------------
Repository: asterisk
Revision: 271904
_U branches/1.6.2/
U branches/1.6.2/channels/chan_sip.c
------------------------------------------------------------------------
r271904 | mnicholson | 2010-06-22 12:37:25 -0500 (Tue, 22 Jun 2010) | 22
lines
Merged revisions 271903 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk
................
r271903 | mnicholson | 2010-06-22 12:35:17 -0500 (Tue, 22 Jun 2010) | 15
lines
Merged revisions 271902 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r271902 | mnicholson | 2010-06-22 12:31:57 -0500 (Tue, 22 Jun 2010) |
8 lines
Decrease the module ref count in sip_hangup when
SIP_DEFER_BYE_ON_TRANSFER is set. This is necessary to keep the ref count
correct.
(closes issue https://issues.asterisk.org/view.php?id=16815)
Reported by: rain
Patches:
chan_sip-unref-fix.diff uploaded by rain (license 327)
(modified)
Tested by: rain
........
................
------------------------------------------------------------------------
http://svn.digium.com/view/asterisk?view=rev&revision=271904
Issue History
Date Modified Username Field Change
======================================================================
2010-06-22 12:37 svnbot Checkin
2010-06-22 12:37 svnbot Note Added: 0123726
======================================================================
More information about the asterisk-bugs
mailing list