<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/4514/">https://reviewboard.asterisk.org/r/4514/</a>
     </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 and Joshua Colp.</div>
<div>By Mark Michelson.</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;">Adding NAPTR and SRV support involves the need to decode domain-names in records into strings. The way this is typically done is through the dn_expand() function. The problem is that the dn_expand() function requires the entire DNS answer in order to decode the domain. The current DNS API does not grant access to the raw DNS answer, meaning that trying to parse NAPTR or SRV records is not possible.

This patch adds the DNS answer to the ast_dns_result structure, as well as a function to retrieve the DNS answer from the structure. The unit tests have been updated to add a phony DNS answer where necessary. The nominal DNS result test checks for the DNS answer to be what is expected. The off-nominal test for setting DNS results also ensures that a NULL answer or a 0 answer length will be rejected by the DNS core.</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;">All unit tests continue to pass.</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/dns/tests/test_dns_recurring.c <span style="color: grey">(433109)</span></li>

 <li>/team/group/dns/tests/test_dns.c <span style="color: grey">(433109)</span></li>

 <li>/team/group/dns/res/res_resolver_unbound.c <span style="color: grey">(433109)</span></li>

 <li>/team/group/dns/main/dns_core.c <span style="color: grey">(433109)</span></li>

 <li>/team/group/dns/include/asterisk/dns_resolver.h <span style="color: grey">(433109)</span></li>

 <li>/team/group/dns/include/asterisk/dns_internal.h <span style="color: grey">(433109)</span></li>

 <li>/team/group/dns/include/asterisk/dns_core.h <span style="color: grey">(433109)</span></li>

</ul>

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







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




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