[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