[asterisk-dev] [Code Review] used auth= parameter freed during sip reload => crash

rmudgett reviewboard at asterisk.org
Thu Jun 30 16:28:50 CDT 2011


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/1303/
-----------------------------------------------------------

Review request for Asterisk Developers, Russell Bryant and David Vossel.


Summary
-------

If you use the auth= parameter and do a "sip reload" while there is an ongoing call.  The peer->auth data points to free'd memory.

The patch does several things:
1) Puts the authentication list into an ao2 object for reference counting to fix the reported crash during a SIP reload.
2) Converts the authentication list from open coding to AST list macros.
3) Adds display of the global authentication list in "sip show settings".


This addresses bug ASTERISK-17939.
    https://issues.asterisk.org/jira/browse/ASTERISK-17939


Diffs
-----

  /branches/1.8/channels/chan_sip.c 325936 
  /branches/1.8/channels/sip/include/sip.h 325936 

Diff: https://reviewboard.asterisk.org/r/1303/diff


Testing
-------

Ran asterisk under valgrind and attempted to make an authenticated SIP call.  Added debug statements on the test system and confirmed that the created dialog got the authentication list and that the list was used to create the challenge response.

Note: My test setup failed to connect because of how my setup was looping back the call.  I got a 482 loopback detected.  For this patch it was sufficient to determine that the necessary code paths were executed.


Thanks,

rmudgett

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20110630/6a753da2/attachment.htm>


More information about the asterisk-dev mailing list