<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/2445/">https://reviewboard.asterisk.org/r/2445/</a>
     </td>
    </tr>
   </table>
   <br />



 <p>Ship it!</p>



 <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Nothing left to comment on that&#39;s major.

I&#39;d be fine with implementing OEJ&#39;s suggestion of changing the name of the function.</pre>
 <br />







<div>




<table width="100%" border="0" bgcolor="white" style="border: 1px solid #C0C0C0; border-collapse: collapse; margin: 2px padding: 2px;">
 <thead>
  <tr>
   <th colspan="4" bgcolor="#F0F0F0" style="border-bottom: 1px solid #C0C0C0; font-size: 9pt; padding: 4px 8px; text-align: left;">
    <a href="https://reviewboard.asterisk.org/r/2445/diff/5/?file=36481#file36481line318" style="color: black; font-weight: bold; text-decoration: underline;">/team/channels/chan_gulp.c</a>
    <span style="font-weight: normal;">

     (Diff revision 5)

    </span>
   </th>
  </tr>
 </thead>



 
 

 <tbody>

  <tr>
    <th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" align="right"><font size="2"></font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>
    <th bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font size="2">318</font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "><span class="tb">        </span><span class="k">struct</span> <span class="n">media_offer_data</span> <span class="o">*</span><span class="n">data</span> <span class="o">=</span> <span class="n">ao2_alloc</span><span class="p">(</span><span class="k">sizeof</span><span class="p">(</span><span class="o">*</span><span class="n">data</span><span class="p">)</span><span class="o">+</span><span class="n">size</span><span class="p">,</span> <span class="n">media_offer_data_destroy</span><span class="p">);</span></pre></td>
  </tr>

 </tbody>

</table>

<pre style="margin-left: 2em; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">space on both sides of the + sign.</pre>
</div>
<br />

<div>




<table width="100%" border="0" bgcolor="white" style="border: 1px solid #C0C0C0; border-collapse: collapse; margin: 2px padding: 2px;">
 <thead>
  <tr>
   <th colspan="4" bgcolor="#F0F0F0" style="border-bottom: 1px solid #C0C0C0; font-size: 9pt; padding: 4px 8px; text-align: left;">
    <a href="https://reviewboard.asterisk.org/r/2445/diff/5/?file=36481#file36481line374" style="color: black; font-weight: bold; text-decoration: underline;">/team/channels/chan_gulp.c</a>
    <span style="font-weight: normal;">

     (Diff revision 5)

    </span>
   </th>
  </tr>
 </thead>



 
 

 <tbody>

  <tr>
    <th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" align="right"><font size="2"></font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>
    <th bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font size="2">374</font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "><span class="tb">        </span><span class="k">if</span> <span class="p">(</span><span class="n">mdata</span> <span class="o">&amp;&amp;</span> <span class="n">ast_sip_push_task_synchronous</span><span class="p">(</span><span class="n">pvt</span><span class="o">-&gt;</span><span class="n">session</span><span class="o">-&gt;</span><span class="n">serializer</span><span class="p">,</span> <span class="n">media_offer_write_av</span><span class="p">,</span> <span class="n">mdata</span><span class="p">))</span> <span class="p">{</span></pre></td>
  </tr>

 </tbody>

</table>

<pre style="margin-left: 2em; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Since you&#39;re pushing the task synchronously, there&#39;s really no need to have to allocate and destroy the media_offer_data. It doesn&#39;t hurt, but it&#39;s also not necessary.</pre>
</div>
<br />



<p>- Mark</p>


<br />
<p>On April 26th, 2013, 2:52 p.m. UTC, Kevin Harwell wrote:</p>








<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.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 April 26, 2013, 2:52 p.m.</i></p>







<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-21186">ASTERISK-21186</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;">Added a dialplan function MEDIA_OFFER that accepts a codec type (example: &#39;audio&#39;) and allows overriding, or re-ordering, of an endpoints codecs prior to dialing (e.g. using a pre-dial handler).  This adds functionality for outbound requests only.

Example: Set(MEDIA_OFFER(audio)=ulaw,g722) ; sets the outgoing codecs to be ulaw,g722

Note that using this function and setting new media offers completely overrides what is specified on the endpoint.  Currently it is allowed to even list a codec that was not previously specified on the endpoint.

The code allows for un/registering of media offer types that can be associated with the function itself.  This allows for future expansion of other types, for example T.38.  Types &#39;audio&#39; and &#39;video&#39; are currently supported.
</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 through several scenarios setting new MEDIA_OFFER(s).  Tested re-ordering of already specified codecs on an endpoint, tested setting only a single codec (both specified and not on endpoint).  Tested reading back out the newly set codecs in the dialplan.</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>/team/group/pimp_my_sip/channels/chan_gulp.c <span style="color: grey">(386613)</span></li>

 <li>/team/group/pimp_my_sip/include/asterisk/res_sip_session.h <span style="color: grey">(386613)</span></li>

 <li>/team/group/pimp_my_sip/res/res_sip_sdp_rtp.c <span style="color: grey">(386613)</span></li>

 <li>/team/group/pimp_my_sip/res/res_sip_session.c <span style="color: grey">(386613)</span></li>

 <li>/team/group/pimp_my_sip/res/res_sip_session.exports.in <span style="color: grey">(386613)</span></li>

</ul>

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







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








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