<html>
 <body>
  <div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
   <table bgcolor="#f9f3c9" width="100%" cellpadding="8" style="border: 1px #c9c399 solid;">
    <tr>
     <td>
      This is an automatically generated e-mail. To reply, visit:
      <a href="https://reviewboard.asterisk.org/r/4363/">https://reviewboard.asterisk.org/r/4363/</a>
     </td>
    </tr>
   </table>
   <br />



<table bgcolor="#e0e0e0" width="100%" cellpadding="8" style="border: 1px gray solid;">
 <tr>
  <td>
   <h1 style="margin-right: 0.2em; padding: 0; font-size: 10pt;">This change has been marked as submitted.</h1>
  </td>
 </tr>
</table>
<br />


<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: url('https://reviewboard.asterisk.org/static/rb/images/review_request_box_top_bg.ab6f3b1072c9.png'); background-position: left top; background-repeat: repeat-x; border: 1px black solid;">
 <tr>
  <td>

<div>Review request for Asterisk Developers.</div>
<div>By Kevin Harwell.</div>


<p style="color: grey;"><i>Updated Jan. 27, 2015, 1:08 p.m.</i></p>



<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Changes</h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Committed in revision 431179</pre>
  </td>
 </tr>
</table>





<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Bugs: </b>


 <a href="https://issues.asterisk.org/jira/browse/ASTERISK-24485">ASTERISK-24485</a>


</div>



<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt;">Repository: </b>
Asterisk
</div>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
 <table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">The res_pjsip module was previously unloadable. With this patch it can now be unloaded.

This patch is based off the original patch on the issue by Corey Farrell with a few modifications. Removed a few changes not required to make the module unloadable and also fixed a bug that would cause asterisk to crash on unloading.

The first patch (found here: https://reviewboard.asterisk.org/r/4311/) had to be reverted due to a race condition it introduced on shutdown. It turned out that the following change to stasis_message_router was the cause (~line 258):

router->subscription = stasis_unsubscribe(router->subscription);

The patch found here is the original patch plus the fix for the problem (added locking).</pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Ran the relevant unit and testsuite tests on two different machines since original patch passed on one.  Also verified that the module could unload and shutdown properly without any extra dependencies.</pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">

 <li>branches/13/res/res_pjsip/pjsip_outbound_auth.c <span style="color: grey">(430884)</span></li>

 <li>branches/13/res/res_pjsip/pjsip_options.c <span style="color: grey">(430884)</span></li>

 <li>branches/13/res/res_pjsip/pjsip_global_headers.c <span style="color: grey">(430884)</span></li>

 <li>branches/13/res/res_pjsip/pjsip_distributor.c <span style="color: grey">(430884)</span></li>

 <li>branches/13/res/res_pjsip/pjsip_configuration.c <span style="color: grey">(430884)</span></li>

 <li>branches/13/res/res_pjsip/location.c <span style="color: grey">(430884)</span></li>

 <li>branches/13/res/res_pjsip/include/res_pjsip_private.h <span style="color: grey">(430884)</span></li>

 <li>branches/13/res/res_pjsip/config_transport.c <span style="color: grey">(430884)</span></li>

 <li>branches/13/res/res_pjsip/config_auth.c <span style="color: grey">(430884)</span></li>

 <li>branches/13/res/res_pjsip.c <span style="color: grey">(430884)</span></li>

 <li>branches/13/main/stasis_message_router.c <span style="color: grey">(430884)</span></li>

</ul>

<p><a href="https://reviewboard.asterisk.org/r/4363/diff/" style="margin-left: 3em;">View Diff</a></p>







  </td>
 </tr>
</table>




  </div>
 </body>
</html>