[asterisk-bugs] [Asterisk 0015102]: [patch] Registration Deadlock between Asterisk and Polycom Soundpoint IP 450
Asterisk Bug Tracker
noreply at bugs.digium.com
Fri Jul 10 11:24:01 CDT 2009
The following issue has been RESOLVED.
======================================================================
https://issues.asterisk.org/view.php?id=15102
======================================================================
Reported By: Jamuel
Assigned To: dvossel
======================================================================
Project: Asterisk
Issue ID: 15102
Category: Channels/chan_sip/Registration
Reproducibility: random
Severity: major
Priority: normal
Status: resolved
Asterisk Version: 1.4.24
Regression: No
SVN Branch (only for SVN checkouts, not tarball releases): N/A
SVN Revision (number only!):
Request Review:
Resolution: fixed
Fixed in Version:
======================================================================
Date Submitted: 2009-05-13 17:49 CDT
Last Modified: 2009-07-10 11:24 CDT
======================================================================
Summary: [patch] Registration Deadlock between Asterisk and
Polycom Soundpoint IP 450
Description:
Intermittently I'm seeing a registration deadlock that prevents Polycom SP
IP 450's from renewing registrations with Asterisk (tested against
1.4.24.1)
======================================================================
----------------------------------------------------------------------
(0107577) svnbot (reporter) - 2009-07-10 11:24
https://issues.asterisk.org/view.php?id=15102#c107577
----------------------------------------------------------------------
Repository: asterisk
Revision: 205804
U branches/1.4/channels/chan_sip.c
------------------------------------------------------------------------
r205804 | dvossel | 2009-07-10 11:24:00 -0500 (Fri, 10 Jul 2009) | 31
lines
SIP registration auth loop caused by stale nonce
If an endpoint sends two registration requests in a very short
period of time with the same nonce, both receive 401 responses
from Asterisk, each with a different nonce (the second 401
containing the current nonce and the first one being stale).
If the endpoint responds to the first 401, it does not match
the current nonce so Asterisk sends a third 401 with a newly
generated nonce (which updates the current nonce)... Now if
the endpoint responds to the second 401, it does not match the
current nonce either and Asterisk sends a fourth 401 with a
newly generated nonce... This loop goes on and on.
There appears to be a simple fix for this. If the nonce from
the request does not match our nonce, but is a good response
to a previous nonce, instead of sending a 401 with a newly
generated nonce, use the current one instead. This breaks
the loop as the nonce is not updated until a response is
received. Additional logic has been added to make sure no
nonce can be responded to twice though.
(closes issue https://issues.asterisk.org/view.php?id=15102)
Reported by: Jamuel
Patches:
patch-bug_0015102 uploaded by Jamuel (license 809)
nonce_sip.diff uploaded by dvossel (license 671)
Tested by: Jamuel
Review: https://reviewboard.asterisk.org/r/289/
------------------------------------------------------------------------
http://svn.digium.com/view/asterisk?view=rev&revision=205804
Issue History
Date Modified Username Field Change
======================================================================
2009-07-10 11:24 svnbot Note Added: 0107577
2009-07-10 11:24 svnbot Status assigned => resolved
2009-07-10 11:24 svnbot Resolution open => fixed
======================================================================
More information about the asterisk-bugs
mailing list