Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > e3a718fcad37ff363f65d6a6e994e272 > files > 294

ldns-devel-1.6.12-1.fc15.i686.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type"
content="text/html;charset=iso-8859-1">
<title>ldns documentation</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<div class="logo">
<img src="LogoInGradientBar2-y100.png"/>
</div>
<!-- Generated by Doxygen 1.7.4 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li><a href="dirs.html"><span>Directories</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>Globals</span></a></li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">zone.c File Reference</div>  </div>
</div>
<div class="contents">

<p><a href="zone_8c_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="func-members"></a>
Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structldns__struct__rr.html">ldns_rr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="zone_8c.html#aae16d59c27e1f2292f8bd87604517e0c">ldns_zone_soa</a> (const <a class="el" href="structldns__struct__zone.html">ldns_zone</a> *z)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the soa record of a zone.  <a href="#aae16d59c27e1f2292f8bd87604517e0c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="zone_8c.html#a1d07f36a06698624a121cfe61d50df66">ldns_zone_rr_count</a> (const <a class="el" href="structldns__struct__zone.html">ldns_zone</a> *z)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the number of resource records in the zone, NOT counting the SOA record.  <a href="#a1d07f36a06698624a121cfe61d50df66"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="zone_8c.html#a07b0fcc3777e44bbb8940aaeeb2e3661">ldns_zone_set_soa</a> (<a class="el" href="structldns__struct__zone.html">ldns_zone</a> *z, <a class="el" href="structldns__struct__rr.html">ldns_rr</a> *soa)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the zone's soa record.  <a href="#a07b0fcc3777e44bbb8940aaeeb2e3661"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structldns__struct__rr__list.html">ldns_rr_list</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="zone_8c.html#a5a75b7744ea0d91770d579730a84bbf9">ldns_zone_rrs</a> (const <a class="el" href="structldns__struct__zone.html">ldns_zone</a> *z)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a list of a zone's content.  <a href="#a5a75b7744ea0d91770d579730a84bbf9"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="zone_8c.html#a23fd3cc25ccd0ebc76f44746c56480f0">ldns_zone_set_rrs</a> (<a class="el" href="structldns__struct__zone.html">ldns_zone</a> *z, <a class="el" href="structldns__struct__rr__list.html">ldns_rr_list</a> *rrlist)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the zone's contents.  <a href="#a23fd3cc25ccd0ebc76f44746c56480f0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="zone_8c.html#a73fef7a17efc9b4f48d1b11babf259a9">ldns_zone_push_rr_list</a> (<a class="el" href="structldns__struct__zone.html">ldns_zone</a> *z, <a class="el" href="structldns__struct__rr__list.html">ldns_rr_list</a> *list)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">push an rrlist to a zone structure.  <a href="#a73fef7a17efc9b4f48d1b11babf259a9"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="zone_8c.html#aa292fe9d4d934d13780d0a56de21ebe2">ldns_zone_push_rr</a> (<a class="el" href="structldns__struct__zone.html">ldns_zone</a> *z, <a class="el" href="structldns__struct__rr.html">ldns_rr</a> *rr)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">push an single rr to a zone structure.  <a href="#aa292fe9d4d934d13780d0a56de21ebe2"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structldns__struct__rr__list.html">ldns_rr_list</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="zone_8c.html#a332a3f4cd3b2a6dd1eb25c475fa6f583">ldns_zone_strip_glue_rrs</a> (const <a class="el" href="structldns__struct__rdf.html">ldns_rdf</a> *zone_name, const <a class="el" href="structldns__struct__rr__list.html">ldns_rr_list</a> *rrs, <a class="el" href="structldns__struct__rr__list.html">ldns_rr_list</a> *glue_rrs)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structldns__struct__rr__list.html">ldns_rr_list</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="zone_8c.html#af344dcc4f5bf8335ad1376df12bbd119">ldns_zone_glue_rr_list</a> (const <a class="el" href="structldns__struct__zone.html">ldns_zone</a> *z)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieve all resource records from the zone that are glue records.  <a href="#af344dcc4f5bf8335ad1376df12bbd119"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structldns__struct__zone.html">ldns_zone</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="zone_8c.html#a0f700a61daf31429b1c2b3f0426e186e">ldns_zone_new</a> (void)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">create a new ldns_zone structure  <a href="#a0f700a61daf31429b1c2b3f0426e186e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="error_8h.html#aaa6d98f86f535cf87b83b89e91f488f9">ldns_status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="zone_8c.html#a9c19588cdd5e98ccd7072134c528dc05">ldns_zone_new_frm_fp</a> (<a class="el" href="structldns__struct__zone.html">ldns_zone</a> **z, FILE *fp, <a class="el" href="structldns__struct__rdf.html">ldns_rdf</a> *origin, uint32_t ttl, <a class="el" href="rr_8h.html#aa11e99c7e7c630e03373f2a2cafc4ee9">ldns_rr_class</a> c)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a new zone from a file.  <a href="#a9c19588cdd5e98ccd7072134c528dc05"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="error_8h.html#aaa6d98f86f535cf87b83b89e91f488f9">ldns_status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="zone_8c.html#accd66901157e00acd3b4b571aa7092b8">ldns_zone_new_frm_fp_l</a> (<a class="el" href="structldns__struct__zone.html">ldns_zone</a> **z, FILE *fp, <a class="el" href="structldns__struct__rdf.html">ldns_rdf</a> *origin, uint32_t ttl, <a class="el" href="rr_8h.html#aa11e99c7e7c630e03373f2a2cafc4ee9">ldns_rr_class</a> c __attribute__((unused)), int *line_nr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="zone_8c.html#ad929e3b1e4a25f676218a1507a7b4277">ldns_zone_sort</a> (<a class="el" href="structldns__struct__zone.html">ldns_zone</a> *zone)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Sort the rrs in a zone, with the current impl.  <a href="#ad929e3b1e4a25f676218a1507a7b4277"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="zone_8c.html#ac8358f7a42ac6402433dc2bc7532f26b">ldns_zone_free</a> (<a class="el" href="structldns__struct__zone.html">ldns_zone</a> *zone)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Frees the allocated memory for the zone, and the rr_list structure in it.  <a href="#ac8358f7a42ac6402433dc2bc7532f26b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="zone_8c.html#a84e80b82e10bbc6939ecdfd556674c1a">ldns_zone_deep_free</a> (<a class="el" href="structldns__struct__zone.html">ldns_zone</a> *zone)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Frees the allocated memory for the zone, the soa rr in it, and the rr_list structure in it, including the rr's in that.  <a href="#a84e80b82e10bbc6939ecdfd556674c1a"></a><br/></td></tr>
</table>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="aae16d59c27e1f2292f8bd87604517e0c"></a><!-- doxytag: member="zone.c::ldns_zone_soa" ref="aae16d59c27e1f2292f8bd87604517e0c" args="(const ldns_zone *z)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structldns__struct__rr.html">ldns_rr</a>* ldns_zone_soa </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structldns__struct__zone.html">ldns_zone</a> *&#160;</td>
          <td class="paramname"><em>z</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return the soa record of a zone. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">z</td><td>the zone to read from </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the soa record in the zone </dd></dl>

<p>Definition at line <a class="el" href="zone_8c_source.html#l00017">17</a> of file <a class="el" href="zone_8c_source.html">zone.c</a>.</p>

<p>References <a class="el" href="zone_8h_source.html#l00045">ldns_struct_zone::_soa</a>.</p>

</div>
</div>
<a class="anchor" id="a1d07f36a06698624a121cfe61d50df66"></a><!-- doxytag: member="zone.c::ldns_zone_rr_count" ref="a1d07f36a06698624a121cfe61d50df66" args="(const ldns_zone *z)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">size_t ldns_zone_rr_count </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structldns__struct__zone.html">ldns_zone</a> *&#160;</td>
          <td class="paramname"><em>z</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the number of resource records in the zone, NOT counting the SOA record. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">z</td><td>the zone to read from </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the number of rr's in the zone </dd></dl>

<p>Definition at line <a class="el" href="zone_8c_source.html#l00023">23</a> of file <a class="el" href="zone_8c_source.html">zone.c</a>.</p>

<p>References <a class="el" href="zone_8h_source.html#l00047">ldns_struct_zone::_rrs</a>, and <a class="el" href="rr_8c_source.html#l00887">ldns_rr_list_rr_count()</a>.</p>

</div>
</div>
<a class="anchor" id="a07b0fcc3777e44bbb8940aaeeb2e3661"></a><!-- doxytag: member="zone.c::ldns_zone_set_soa" ref="a07b0fcc3777e44bbb8940aaeeb2e3661" args="(ldns_zone *z, ldns_rr *soa)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ldns_zone_set_soa </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structldns__struct__zone.html">ldns_zone</a> *&#160;</td>
          <td class="paramname"><em>z</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structldns__struct__rr.html">ldns_rr</a> *&#160;</td>
          <td class="paramname"><em>soa</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the zone's soa record. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">z</td><td>the zone to put the new soa in </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">soa</td><td>the soa to set </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="zone_8c_source.html#l00029">29</a> of file <a class="el" href="zone_8c_source.html">zone.c</a>.</p>

<p>References <a class="el" href="zone_8h_source.html#l00045">ldns_struct_zone::_soa</a>.</p>

</div>
</div>
<a class="anchor" id="a5a75b7744ea0d91770d579730a84bbf9"></a><!-- doxytag: member="zone.c::ldns_zone_rrs" ref="a5a75b7744ea0d91770d579730a84bbf9" args="(const ldns_zone *z)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structldns__struct__rr__list.html">ldns_rr_list</a>* ldns_zone_rrs </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structldns__struct__zone.html">ldns_zone</a> *&#160;</td>
          <td class="paramname"><em>z</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get a list of a zone's content. </p>
<p>Note that the SOA isn't included in this list. You need to get the with ldns_zone_soa. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">z</td><td>the zone to read from </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the rrs from this zone </dd></dl>

<p>Definition at line <a class="el" href="zone_8c_source.html#l00035">35</a> of file <a class="el" href="zone_8c_source.html">zone.c</a>.</p>

<p>References <a class="el" href="zone_8h_source.html#l00047">ldns_struct_zone::_rrs</a>.</p>

</div>
</div>
<a class="anchor" id="a23fd3cc25ccd0ebc76f44746c56480f0"></a><!-- doxytag: member="zone.c::ldns_zone_set_rrs" ref="a23fd3cc25ccd0ebc76f44746c56480f0" args="(ldns_zone *z, ldns_rr_list *rrlist)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ldns_zone_set_rrs </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structldns__struct__zone.html">ldns_zone</a> *&#160;</td>
          <td class="paramname"><em>z</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structldns__struct__rr__list.html">ldns_rr_list</a> *&#160;</td>
          <td class="paramname"><em>rrlist</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the zone's contents. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">z</td><td>the zone to put the new soa in </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">rrlist</td><td>the rrlist to use </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="zone_8c_source.html#l00041">41</a> of file <a class="el" href="zone_8c_source.html">zone.c</a>.</p>

<p>References <a class="el" href="zone_8h_source.html#l00047">ldns_struct_zone::_rrs</a>.</p>

</div>
</div>
<a class="anchor" id="a73fef7a17efc9b4f48d1b11babf259a9"></a><!-- doxytag: member="zone.c::ldns_zone_push_rr_list" ref="a73fef7a17efc9b4f48d1b11babf259a9" args="(ldns_zone *z, ldns_rr_list *list)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool ldns_zone_push_rr_list </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structldns__struct__zone.html">ldns_zone</a> *&#160;</td>
          <td class="paramname"><em>z</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structldns__struct__rr__list.html">ldns_rr_list</a> *&#160;</td>
          <td class="paramname"><em>list</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>push an rrlist to a zone structure. </p>
<p>This function use pointer copying, so the rr_list structure inside z is modified! </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">z</td><td>the zone to add to </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">list</td><td>the list to add </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a true on succes otherwise falsed </dd></dl>

<p>Definition at line <a class="el" href="zone_8c_source.html#l00047">47</a> of file <a class="el" href="zone_8c_source.html">zone.c</a>.</p>

<p>References <a class="el" href="rr_8c_source.html#l00966">ldns_rr_list_cat()</a>, and <a class="el" href="zone_8c_source.html#l00035">ldns_zone_rrs()</a>.</p>

</div>
</div>
<a class="anchor" id="aa292fe9d4d934d13780d0a56de21ebe2"></a><!-- doxytag: member="zone.c::ldns_zone_push_rr" ref="aa292fe9d4d934d13780d0a56de21ebe2" args="(ldns_zone *z, ldns_rr *rr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool ldns_zone_push_rr </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structldns__struct__zone.html">ldns_zone</a> *&#160;</td>
          <td class="paramname"><em>z</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structldns__struct__rr.html">ldns_rr</a> *&#160;</td>
          <td class="paramname"><em>rr</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>push an single rr to a zone structure. </p>
<p>This function use pointer copying, so the rr_list structure inside z is modified! </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">z</td><td>the zone to add to </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">rr</td><td>the rr to add </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a true on succes otherwise falsed </dd></dl>

<p>Definition at line <a class="el" href="zone_8c_source.html#l00054">54</a> of file <a class="el" href="zone_8c_source.html">zone.c</a>.</p>

<p>References <a class="el" href="rr_8c_source.html#l01062">ldns_rr_list_push_rr()</a>, and <a class="el" href="zone_8c_source.html#l00035">ldns_zone_rrs()</a>.</p>

</div>
</div>
<a class="anchor" id="a332a3f4cd3b2a6dd1eb25c475fa6f583"></a><!-- doxytag: member="zone.c::ldns_zone_strip_glue_rrs" ref="a332a3f4cd3b2a6dd1eb25c475fa6f583" args="(const ldns_rdf *zone_name, const ldns_rr_list *rrs, ldns_rr_list *glue_rrs)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structldns__struct__rr__list.html">ldns_rr_list</a>* ldns_zone_strip_glue_rrs </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structldns__struct__rdf.html">ldns_rdf</a> *&#160;</td>
          <td class="paramname"><em>zone_name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="structldns__struct__rr__list.html">ldns_rr_list</a> *&#160;</td>
          <td class="paramname"><em>rrs</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structldns__struct__rr__list.html">ldns_rr_list</a> *&#160;</td>
          <td class="paramname"><em>glue_rrs</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="zone_8c_source.html#l00064">64</a> of file <a class="el" href="zone_8c_source.html">zone.c</a>.</p>

<p>References <a class="el" href="dname_8c_source.html#l00275">ldns_dname_is_subdomain()</a>, <a class="el" href="rdata_8c_source.html#l00569">ldns_rdf_compare()</a>, <a class="el" href="rr_8c_source.html#l00873">ldns_rr_get_type()</a>, <a class="el" href="rr_8c_source.html#l00941">ldns_rr_list_free()</a>, <a class="el" href="rr_8c_source.html#l00930">ldns_rr_list_new()</a>, <a class="el" href="rr_8c_source.html#l01062">ldns_rr_list_push_rr()</a>, <a class="el" href="rr_8c_source.html#l00920">ldns_rr_list_rr()</a>, <a class="el" href="rr_8c_source.html#l00887">ldns_rr_list_rr_count()</a>, <a class="el" href="rr_8c_source.html#l00849">ldns_rr_owner()</a>, <a class="el" href="rr_8h_source.html#l00083">LDNS_RR_TYPE_A</a>, <a class="el" href="rr_8h_source.html#l00137">LDNS_RR_TYPE_AAAA</a>, and <a class="el" href="rr_8h_source.html#l00085">LDNS_RR_TYPE_NS</a>.</p>

</div>
</div>
<a class="anchor" id="af344dcc4f5bf8335ad1376df12bbd119"></a><!-- doxytag: member="zone.c::ldns_zone_glue_rr_list" ref="af344dcc4f5bf8335ad1376df12bbd119" args="(const ldns_zone *z)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structldns__struct__rr__list.html">ldns_rr_list</a>* ldns_zone_glue_rr_list </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structldns__struct__zone.html">ldns_zone</a> *&#160;</td>
          <td class="paramname"><em>z</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retrieve all resource records from the zone that are glue records. </p>
<p>The resulting list does are pointer references to the zone's data.</p>
<p>Due to the current zone implementation (as a list of rr's), this function is extremely slow. Another (probably better) way to do this is to use an ldns_dnssec_zone structure and the ldns_dnssec_mark_and_get_glue() function.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">z</td><td>the zone to look for glue </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the rr_list with the glue </dd></dl>

<p>Definition at line <a class="el" href="zone_8c_source.html#l00163">163</a> of file <a class="el" href="zone_8c_source.html">zone.c</a>.</p>

<p>References <a class="el" href="dname_8c_source.html#l00338">ldns_dname_compare()</a>, <a class="el" href="dname_8c_source.html#l00275">ldns_dname_is_subdomain()</a>, <a class="el" href="util_8h_source.html#l00060">LDNS_FREE</a>, <a class="el" href="rdata_8c_source.html#l00569">ldns_rdf_compare()</a>, <a class="el" href="rr_8c_source.html#l00873">ldns_rr_get_type()</a>, <a class="el" href="rr_8c_source.html#l00941">ldns_rr_list_free()</a>, <a class="el" href="rr_8c_source.html#l00930">ldns_rr_list_new()</a>, <a class="el" href="rr_8c_source.html#l01062">ldns_rr_list_push_rr()</a>, <a class="el" href="rr_8c_source.html#l00920">ldns_rr_list_rr()</a>, <a class="el" href="rr_8c_source.html#l00887">ldns_rr_list_rr_count()</a>, <a class="el" href="rr_8c_source.html#l00849">ldns_rr_owner()</a>, <a class="el" href="rr_8h_source.html#l00083">LDNS_RR_TYPE_A</a>, <a class="el" href="rr_8h_source.html#l00137">LDNS_RR_TYPE_AAAA</a>, <a class="el" href="rr_8h_source.html#l00085">LDNS_RR_TYPE_NS</a>, <a class="el" href="zone_8c_source.html#l00023">ldns_zone_rr_count()</a>, <a class="el" href="zone_8c_source.html#l00035">ldns_zone_rrs()</a>, and <a class="el" href="zone_8c_source.html#l00017">ldns_zone_soa()</a>.</p>

</div>
</div>
<a class="anchor" id="a0f700a61daf31429b1c2b3f0426e186e"></a><!-- doxytag: member="zone.c::ldns_zone_new" ref="a0f700a61daf31429b1c2b3f0426e186e" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structldns__struct__zone.html">ldns_zone</a>* ldns_zone_new </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>create a new ldns_zone structure </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>a pointer to a ldns_zone structure </dd></dl>

<p>Definition at line <a class="el" href="zone_8c_source.html#l00263">263</a> of file <a class="el" href="zone_8c_source.html">zone.c</a>.</p>

<p>References <a class="el" href="zone_8h_source.html#l00047">ldns_struct_zone::_rrs</a>, <a class="el" href="util_8h_source.html#l00060">LDNS_FREE</a>, <a class="el" href="util_8h_source.html#l00049">LDNS_MALLOC</a>, <a class="el" href="rr_8c_source.html#l00930">ldns_rr_list_new()</a>, and <a class="el" href="zone_8c_source.html#l00029">ldns_zone_set_soa()</a>.</p>

</div>
</div>
<a class="anchor" id="a9c19588cdd5e98ccd7072134c528dc05"></a><!-- doxytag: member="zone.c::ldns_zone_new_frm_fp" ref="a9c19588cdd5e98ccd7072134c528dc05" args="(ldns_zone **z, FILE *fp, ldns_rdf *origin, uint32_t ttl, ldns_rr_class c)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="error_8h.html#aaa6d98f86f535cf87b83b89e91f488f9">ldns_status</a> ldns_zone_new_frm_fp </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structldns__struct__zone.html">ldns_zone</a> **&#160;</td>
          <td class="paramname"><em>z</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">FILE *&#160;</td>
          <td class="paramname"><em>fp</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structldns__struct__rdf.html">ldns_rdf</a> *&#160;</td>
          <td class="paramname"><em>origin</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>ttl</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="rr_8h.html#aa11e99c7e7c630e03373f2a2cafc4ee9">ldns_rr_class</a>&#160;</td>
          <td class="paramname"><em>c</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create a new zone from a file. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">z</td><td>the new zone </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">*fp</td><td>the filepointer to use </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">*origin</td><td>the zones' origin </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">ttl</td><td>default ttl to use </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">c</td><td>default class to use (IN)</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>ldns_status mesg with an error or LDNS_STATUS_OK </dd></dl>

<p>Definition at line <a class="el" href="zone_8c_source.html#l00285">285</a> of file <a class="el" href="zone_8c_source.html">zone.c</a>.</p>

<p>References <a class="el" href="zone_8c_source.html#l00292">ldns_zone_new_frm_fp_l()</a>.</p>

</div>
</div>
<a class="anchor" id="accd66901157e00acd3b4b571aa7092b8"></a><!-- doxytag: member="zone.c::ldns_zone_new_frm_fp_l" ref="accd66901157e00acd3b4b571aa7092b8" args="(ldns_zone **z, FILE *fp, ldns_rdf *origin, uint32_t ttl, ldns_rr_class c __attribute__((unused)), int *line_nr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="error_8h.html#aaa6d98f86f535cf87b83b89e91f488f9">ldns_status</a> ldns_zone_new_frm_fp_l </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structldns__struct__zone.html">ldns_zone</a> **&#160;</td>
          <td class="paramname"><em>z</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">FILE *&#160;</td>
          <td class="paramname"><em>fp</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structldns__struct__rdf.html">ldns_rdf</a> *&#160;</td>
          <td class="paramname"><em>origin</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>ttl</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="rr_8h.html#aa11e99c7e7c630e03373f2a2cafc4ee9">ldns_rr_class</a> c &#160;</td>
          <td class="paramname"><em>__attribute__</em>(unused), </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&#160;</td>
          <td class="paramname"><em>line_nr</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="zone_8c_source.html#l00292">292</a> of file <a class="el" href="zone_8c_source.html">zone.c</a>.</p>

<p>References <a class="el" href="rdata_8c_source.html#l00222">ldns_rdf_clone()</a>, <a class="el" href="rdata_8c_source.html#l00230">ldns_rdf_deep_free()</a>, <a class="el" href="rr_8c_source.html#l00075">ldns_rr_free()</a>, <a class="el" href="rr_8c_source.html#l00873">ldns_rr_get_type()</a>, <a class="el" href="rr_8c_source.html#l00651">ldns_rr_new_frm_fp_l()</a>, <a class="el" href="rr_8c_source.html#l00849">ldns_rr_owner()</a>, <a class="el" href="rr_8h_source.html#l00093">LDNS_RR_TYPE_SOA</a>, <a class="el" href="error_8h_source.html#l00034">LDNS_STATUS_MEM_ERR</a>, <a class="el" href="error_8h_source.html#l00026">LDNS_STATUS_OK</a>, <a class="el" href="error_8h_source.html#l00091">LDNS_STATUS_SYNTAX_EMPTY</a>, <a class="el" href="error_8h_source.html#l00090">LDNS_STATUS_SYNTAX_INCLUDE</a>, <a class="el" href="error_8h_source.html#l00082">LDNS_STATUS_SYNTAX_INCLUDE_ERR_NOTIMPL</a>, <a class="el" href="error_8h_source.html#l00089">LDNS_STATUS_SYNTAX_ORIGIN</a>, <a class="el" href="error_8h_source.html#l00088">LDNS_STATUS_SYNTAX_TTL</a>, <a class="el" href="zone_8c_source.html#l00419">ldns_zone_free()</a>, <a class="el" href="zone_8c_source.html#l00263">ldns_zone_new()</a>, <a class="el" href="zone_8c_source.html#l00054">ldns_zone_push_rr()</a>, and <a class="el" href="zone_8c_source.html#l00029">ldns_zone_set_soa()</a>.</p>

</div>
</div>
<a class="anchor" id="ad929e3b1e4a25f676218a1507a7b4277"></a><!-- doxytag: member="zone.c::ldns_zone_sort" ref="ad929e3b1e4a25f676218a1507a7b4277" args="(ldns_zone *zone)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ldns_zone_sort </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structldns__struct__zone.html">ldns_zone</a> *&#160;</td>
          <td class="paramname"><em>zone</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sort the rrs in a zone, with the current impl. </p>
<p>this is slow </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">zone</td><td>the zone to sort </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="zone_8c_source.html#l00393">393</a> of file <a class="el" href="zone_8c_source.html">zone.c</a>.</p>

<p>References <a class="el" href="rr_8c_source.html#l01462">ldns_rr_list_sort()</a>, and <a class="el" href="zone_8c_source.html#l00035">ldns_zone_rrs()</a>.</p>

</div>
</div>
<a class="anchor" id="ac8358f7a42ac6402433dc2bc7532f26b"></a><!-- doxytag: member="zone.c::ldns_zone_free" ref="ac8358f7a42ac6402433dc2bc7532f26b" args="(ldns_zone *zone)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ldns_zone_free </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structldns__struct__zone.html">ldns_zone</a> *&#160;</td>
          <td class="paramname"><em>zone</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Frees the allocated memory for the zone, and the rr_list structure in it. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">zone</td><td>the zone to free </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="zone_8c_source.html#l00419">419</a> of file <a class="el" href="zone_8c_source.html">zone.c</a>.</p>

<p>References <a class="el" href="zone_8h_source.html#l00047">ldns_struct_zone::_rrs</a>, <a class="el" href="util_8h_source.html#l00060">LDNS_FREE</a>, and <a class="el" href="rr_8c_source.html#l00941">ldns_rr_list_free()</a>.</p>

</div>
</div>
<a class="anchor" id="a84e80b82e10bbc6939ecdfd556674c1a"></a><!-- doxytag: member="zone.c::ldns_zone_deep_free" ref="a84e80b82e10bbc6939ecdfd556674c1a" args="(ldns_zone *zone)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ldns_zone_deep_free </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structldns__struct__zone.html">ldns_zone</a> *&#160;</td>
          <td class="paramname"><em>zone</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Frees the allocated memory for the zone, the soa rr in it, and the rr_list structure in it, including the rr's in that. </p>
<p>etc. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">zone</td><td>the zone to free </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="zone_8c_source.html#l00426">426</a> of file <a class="el" href="zone_8c_source.html">zone.c</a>.</p>

<p>References <a class="el" href="zone_8h_source.html#l00047">ldns_struct_zone::_rrs</a>, <a class="el" href="zone_8h_source.html#l00045">ldns_struct_zone::_soa</a>, <a class="el" href="util_8h_source.html#l00060">LDNS_FREE</a>, <a class="el" href="rr_8c_source.html#l00075">ldns_rr_free()</a>, and <a class="el" href="rr_8c_source.html#l00950">ldns_rr_list_deep_free()</a>.</p>

</div>
</div>
</div>
<hr class="footer"/><address class="footer"><small>Generated on Wed Jan 11 2012 for ldns by&#160;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.4 </small></address>
</body>
</html>