Sophie

Sophie

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

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 id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><a class="el" href="dir_7a7a565456b510ac01baf8655647d8a2.html">ldns</a>      </li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="headertitle">
<div class="title">dnssec.h</div>  </div>
</div>
<div class="contents">
<a href="dnssec_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span>
<a name="l00002"></a>00002 <span class="comment"> * dnssec.h -- defines for the Domain Name System (SEC) (DNSSEC)</span>
<a name="l00003"></a>00003 <span class="comment"> *</span>
<a name="l00004"></a>00004 <span class="comment"> * Copyright (c) 2005-2008, NLnet Labs. All rights reserved.</span>
<a name="l00005"></a>00005 <span class="comment"> *</span>
<a name="l00006"></a>00006 <span class="comment"> * See LICENSE for the license.</span>
<a name="l00007"></a>00007 <span class="comment"> *</span>
<a name="l00008"></a>00008 <span class="comment"> * A bunch of defines that are used in the DNS</span>
<a name="l00009"></a>00009 <span class="comment"> */</span>
<a name="l00010"></a>00010 
<a name="l00023"></a>00023 <span class="preprocessor">#ifndef LDNS_DNSSEC_H</span>
<a name="l00024"></a>00024 <span class="preprocessor"></span><span class="preprocessor">#define LDNS_DNSSEC_H</span>
<a name="l00025"></a>00025 <span class="preprocessor"></span>
<a name="l00026"></a>00026 <span class="preprocessor">#include &lt;<a class="code" href="common_8h.html" title="Common definitions for LDNS.">ldns/common.h</a>&gt;</span>
<a name="l00027"></a>00027 <span class="preprocessor">#if LDNS_BUILD_CONFIG_HAVE_SSL</span>
<a name="l00028"></a>00028 <span class="preprocessor"></span><span class="preprocessor">#include &lt;openssl/ssl.h&gt;</span>
<a name="l00029"></a>00029 <span class="preprocessor">#include &lt;openssl/evp.h&gt;</span>
<a name="l00030"></a>00030 <span class="preprocessor">#endif </span><span class="comment">/* LDNS_BUILD_CONFIG_HAVE_SSL */</span>
<a name="l00031"></a>00031 <span class="preprocessor">#include &lt;<a class="code" href="packet_8h.html" title="Contains the definition of ldns_pkt and its parts, as well as functions to manipulate those...">ldns/packet.h</a>&gt;</span>
<a name="l00032"></a>00032 <span class="preprocessor">#include &lt;<a class="code" href="keys_8h.html" title="Addendum to dnssec.h, this module contains key and algorithm definitions and functions.">ldns/keys.h</a>&gt;</span>
<a name="l00033"></a>00033 <span class="preprocessor">#include &lt;<a class="code" href="zone_8h.html" title="zone.h">ldns/zone.h</a>&gt;</span>
<a name="l00034"></a>00034 <span class="preprocessor">#include &lt;<a class="code" href="resolver_8h.html" title="Defines the ldns_resolver structure, a stub resolver that can send queries and parse answers...">ldns/resolver.h</a>&gt;</span>
<a name="l00035"></a>00035 <span class="preprocessor">#include &lt;<a class="code" href="dnssec__zone_8h.html">ldns/dnssec_zone.h</a>&gt;</span>
<a name="l00036"></a>00036 
<a name="l00037"></a>00037 <span class="preprocessor">#ifdef __cplusplus</span>
<a name="l00038"></a>00038 <span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {
<a name="l00039"></a>00039 <span class="preprocessor">#endif</span>
<a name="l00040"></a>00040 <span class="preprocessor"></span>
<a name="l00041"></a><a class="code" href="dnssec_8h.html#a798ad176a54d51307d1c210bfe5877f6">00041</a> <span class="preprocessor">#define LDNS_MAX_KEYLEN         2048</span>
<a name="l00042"></a><a class="code" href="dnssec_8h.html#a0204ad12a7207e2386d3bec8761f7e67">00042</a> <span class="preprocessor"></span><span class="preprocessor">#define LDNS_DNSSEC_KEYPROTO    3</span>
<a name="l00043"></a>00043 <span class="preprocessor"></span><span class="comment">/* default time before sigs expire */</span>
<a name="l00044"></a><a class="code" href="dnssec_8h.html#a565cc51b68d4b5723830434ee1c0dfe0">00044</a> <span class="preprocessor">#define LDNS_DEFAULT_EXP_TIME   2419200 </span><span class="comment">/* 4 weeks */</span>
<a name="l00045"></a>00045 
<a name="l00047"></a><a class="code" href="dnssec_8h.html#a7d75bfb1850f236aceceeb73dd91cc3d">00047</a> <span class="preprocessor">#define LDNS_SIGNATURE_LEAVE_ADD_NEW 0</span>
<a name="l00048"></a><a class="code" href="dnssec_8h.html#af27db29d1fe3dc7fb7a0f98a766d1a12">00048</a> <span class="preprocessor"></span><span class="preprocessor">#define LDNS_SIGNATURE_LEAVE_NO_ADD 1</span>
<a name="l00049"></a><a class="code" href="dnssec_8h.html#ad3c393ca14a32d2a34fb22585caeb73e">00049</a> <span class="preprocessor"></span><span class="preprocessor">#define LDNS_SIGNATURE_REMOVE_ADD_NEW 2</span>
<a name="l00050"></a><a class="code" href="dnssec_8h.html#a9d87cb4cfbb8ee22ffbcc3ddb9d5dce1">00050</a> <span class="preprocessor"></span><span class="preprocessor">#define LDNS_SIGNATURE_REMOVE_NO_ADD 3</span>
<a name="l00051"></a>00051 <span class="preprocessor"></span>
<a name="l00062"></a>00062 <a class="code" href="structldns__struct__rr.html" title="Resource Record.">ldns_rr</a> *<a class="code" href="dnssec_8c.html#a52a865495fbba2c612ac4eebce4a2d24" title="Returns the first RRSIG rr that corresponds to the rrset with the given name and type.">ldns_dnssec_get_rrsig_for_name_and_type</a>(<span class="keyword">const</span> <a class="code" href="structldns__struct__rdf.html" title="Resource record data field.">ldns_rdf</a> *name,
<a name="l00063"></a>00063                                                                             <span class="keyword">const</span> <a class="code" href="rr_8h.html#a5b71c1de711a178f6fbda5d684cdfed5">ldns_rr_type</a> type,
<a name="l00064"></a>00064                                                                             <span class="keyword">const</span> <a class="code" href="structldns__struct__rr__list.html" title="List or Set of Resource Records.">ldns_rr_list</a> *rrs);
<a name="l00065"></a>00065 
<a name="l00075"></a>00075 <a class="code" href="structldns__struct__rr.html" title="Resource Record.">ldns_rr</a> *<a class="code" href="dnssec_8c.html#a49756b6a7126033cd426d757643e7398" title="Returns the DNSKEY that corresponds to the given RRSIG rr from the list, if any.">ldns_dnssec_get_dnskey_for_rrsig</a>(<span class="keyword">const</span> <a class="code" href="structldns__struct__rr.html" title="Resource Record.">ldns_rr</a> *rrsig, <span class="keyword">const</span> <a class="code" href="structldns__struct__rr__list.html" title="List or Set of Resource Records.">ldns_rr_list</a> *rrs);
<a name="l00076"></a>00076 
<a name="l00084"></a>00084 <a class="code" href="structldns__struct__rdf.html" title="Resource record data field.">ldns_rdf</a> *<a class="code" href="dnssec_8c.html#a259d9689fcc1560d4085f44ab8151654" title="Returns the rdata field that contains the bitmap of the covered types of the given NSEC record...">ldns_nsec_get_bitmap</a>(<a class="code" href="structldns__struct__rr.html" title="Resource Record.">ldns_rr</a> *nsec);
<a name="l00085"></a>00085 
<a name="l00086"></a>00086 
<a name="l00087"></a><a class="code" href="dnssec_8h.html#a375f02cd5dcc78bcfbd402be5aec085e">00087</a> <span class="preprocessor">#define LDNS_NSEC3_MAX_ITERATIONS 65535</span>
<a name="l00088"></a>00088 <span class="preprocessor"></span>
<a name="l00092"></a>00092 <a class="code" href="structldns__struct__rdf.html" title="Resource record data field.">ldns_rdf</a> *
<a name="l00093"></a>00093 <a class="code" href="dnssec_8c.html#a95f42eec7fdbf06c1683033eab6334f2">ldns_dnssec_nsec3_closest_encloser</a>(<a class="code" href="structldns__struct__rdf.html" title="Resource record data field.">ldns_rdf</a> *qname,
<a name="l00094"></a>00094                                                         <a class="code" href="rr_8h.html#a5b71c1de711a178f6fbda5d684cdfed5">ldns_rr_type</a> qtype,
<a name="l00095"></a>00095                                                         <a class="code" href="structldns__struct__rr__list.html" title="List or Set of Resource Records.">ldns_rr_list</a> *nsec3s);
<a name="l00096"></a>00096 
<a name="l00100"></a>00100 <span class="keywordtype">bool</span>
<a name="l00101"></a>00101 <a class="code" href="dnssec_8c.html#a33f64fecc8522504169629bf8dd79d5a" title="Checks whether the packet contains rrsigs.">ldns_dnssec_pkt_has_rrsigs</a>(<span class="keyword">const</span> <a class="code" href="structldns__struct__pkt.html" title="DNS packet.">ldns_pkt</a> *pkt);
<a name="l00102"></a>00102 
<a name="l00107"></a>00107 <a class="code" href="structldns__struct__rr__list.html" title="List or Set of Resource Records.">ldns_rr_list</a> *<a class="code" href="dnssec_8c.html#a5644e8426fded2e1c57ef6f643399219" title="Returns a ldns_rr_list containing the signatures covering the given name and type.">ldns_dnssec_pkt_get_rrsigs_for_name_and_type</a>(<span class="keyword">const</span> <a class="code" href="structldns__struct__pkt.html" title="DNS packet.">ldns_pkt</a> *pkt, <a class="code" href="structldns__struct__rdf.html" title="Resource record data field.">ldns_rdf</a> *name, <a class="code" href="rr_8h.html#a5b71c1de711a178f6fbda5d684cdfed5">ldns_rr_type</a> type);
<a name="l00108"></a>00108 
<a name="l00112"></a>00112 <a class="code" href="structldns__struct__rr__list.html" title="List or Set of Resource Records.">ldns_rr_list</a> *<a class="code" href="dnssec_8c.html#ad03207fb98d700dba5b9433c692145d3" title="Returns a ldns_rr_list containing the signatures covering the given type.">ldns_dnssec_pkt_get_rrsigs_for_type</a>(<span class="keyword">const</span> <a class="code" href="structldns__struct__pkt.html" title="DNS packet.">ldns_pkt</a> *pkt, <a class="code" href="rr_8h.html#a5b71c1de711a178f6fbda5d684cdfed5">ldns_rr_type</a> type);
<a name="l00113"></a>00113 
<a name="l00120"></a>00120 uint16_t <a class="code" href="dnssec_8c.html#a7cf8c4687caff6153a61052c5523e7ab" title="calculates a keytag of a key for use in DNSSEC.">ldns_calc_keytag</a>(<span class="keyword">const</span> <a class="code" href="structldns__struct__rr.html" title="Resource Record.">ldns_rr</a> *key);
<a name="l00121"></a>00121 
<a name="l00128"></a>00128 uint16_t <a class="code" href="dnssec_8c.html#ace2d1cad66229876b3cec66db12f30f4" title="Calculates keytag of DNSSEC key, operates on wireformat rdata.">ldns_calc_keytag_raw</a>(uint8_t* key, <span class="keywordtype">size_t</span> keysize);
<a name="l00129"></a>00129 
<a name="l00130"></a>00130 <span class="preprocessor">#if LDNS_BUILD_CONFIG_HAVE_SSL</span>
<a name="l00131"></a>00131 <span class="preprocessor"></span>
<a name="l00137"></a>00137 DSA *<a class="code" href="dnssec_8c.html#adbaf1b9197285c071a959f87ed8fb17d" title="converts a buffer holding key material to a DSA key in openssl.">ldns_key_buf2dsa</a>(<a class="code" href="structldns__struct__buffer.html" title="implementation of buffers to ease operations">ldns_buffer</a> *key);
<a name="l00144"></a>00144 DSA *<a class="code" href="dnssec_8c.html#a5f90e74b05b4cdf65d11c17e5c887b30" title="Like ldns_key_buf2dsa, but uses raw buffer.">ldns_key_buf2dsa_raw</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* key, <span class="keywordtype">size_t</span> len);
<a name="l00145"></a>00145 
<a name="l00154"></a>00154 <span class="keywordtype">int</span> <a class="code" href="dnssec_8c.html#a9483392f157e2ab100459c685eb7ea95" title="Utility function to calculate hash using generic EVP_MD pointer.">ldns_digest_evp</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* data, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> len, 
<a name="l00155"></a>00155         <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* dest, <span class="keyword">const</span> EVP_MD* md);
<a name="l00156"></a>00156 
<a name="l00164"></a>00164 EVP_PKEY* <a class="code" href="dnssec_8h.html#a1cfcc69e70c9c57016d56ddcb008f777" title="Converts a holding buffer with key material to EVP PKEY in openssl.">ldns_gost2pkey_raw</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* key, <span class="keywordtype">size_t</span> keylen);
<a name="l00165"></a>00165 
<a name="l00174"></a>00174 EVP_PKEY* <a class="code" href="dnssec_8h.html#a1b3613e74929d32667ebbea2c3470ea8" title="Converts a holding buffer with key material to EVP PKEY in openssl.">ldns_ecdsa2pkey_raw</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* key, <span class="keywordtype">size_t</span> keylen, uint8_t algo);
<a name="l00175"></a>00175 
<a name="l00176"></a>00176 <span class="preprocessor">#endif </span><span class="comment">/* LDNS_BUILD_CONFIG_HAVE_SSL */</span>
<a name="l00177"></a>00177 
<a name="l00178"></a>00178 <span class="preprocessor">#if LDNS_BUILD_CONFIG_HAVE_SSL</span>
<a name="l00179"></a>00179 <span class="preprocessor"></span>
<a name="l00185"></a>00185 RSA *<a class="code" href="dnssec_8c.html#aeafba65095aa59f1ba109591701949c5" title="converts a buffer holding key material to a RSA key in openssl.">ldns_key_buf2rsa</a>(<a class="code" href="structldns__struct__buffer.html" title="implementation of buffers to ease operations">ldns_buffer</a> *key);
<a name="l00186"></a>00186 
<a name="l00193"></a>00193 RSA *<a class="code" href="dnssec_8c.html#a37eb5a2d4b58a903884222cdabe56a76" title="Like ldns_key_buf2rsa, but uses raw buffer.">ldns_key_buf2rsa_raw</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* key, <span class="keywordtype">size_t</span> len);
<a name="l00194"></a>00194 <span class="preprocessor">#endif </span><span class="comment">/* LDNS_BUILD_CONFIG_HAVE_SSL */</span>
<a name="l00195"></a>00195 
<a name="l00203"></a>00203 <a class="code" href="structldns__struct__rr.html" title="Resource Record.">ldns_rr</a> *<a class="code" href="dnssec_8c.html#acf9bb930301fbc1a2724321a7f2c8d90" title="returns a new DS rr that represents the given key rr.">ldns_key_rr2ds</a>(<span class="keyword">const</span> <a class="code" href="structldns__struct__rr.html" title="Resource Record.">ldns_rr</a> *key, <a class="code" href="keys_8h.html#ab53d559230792e3951c8974631808fc5">ldns_hash</a> h);
<a name="l00204"></a>00204 
<a name="l00208"></a>00208 <a class="code" href="structldns__struct__rdf.html" title="Resource record data field.">ldns_rdf</a> *
<a name="l00209"></a>00209 <a class="code" href="dnssec_8c.html#aa303ec9b0723ed4b954f1a2ff99a226a" title="Create the type bitmap for an NSEC(3) record.">ldns_dnssec_create_nsec_bitmap</a>(<a class="code" href="rr_8h.html#a5b71c1de711a178f6fbda5d684cdfed5">ldns_rr_type</a> rr_type_list[],
<a name="l00210"></a>00210                                                  <span class="keywordtype">size_t</span> size,
<a name="l00211"></a>00211                                                  <a class="code" href="rr_8h.html#a5b71c1de711a178f6fbda5d684cdfed5">ldns_rr_type</a> nsec_type);
<a name="l00212"></a>00212 
<a name="l00220"></a>00220 <span class="keywordtype">int</span>
<a name="l00221"></a>00221 <a class="code" href="dnssec_8c.html#aba8ade9eed84d1a95eab95622587a0b4" title="returns whether a rrset of the given type is found in the rrsets.">ldns_dnssec_rrsets_contains_type</a> (<a class="code" href="structldns__struct__dnssec__rrsets.html">ldns_dnssec_rrsets</a> *rrsets, <a class="code" href="rr_8h.html#a5b71c1de711a178f6fbda5d684cdfed5">ldns_rr_type</a> type);
<a name="l00222"></a>00222 
<a name="l00226"></a>00226 <a class="code" href="structldns__struct__rr.html" title="Resource Record.">ldns_rr</a> *
<a name="l00227"></a>00227 <a class="code" href="dnssec_8c.html#ae6fa0e94ef20702415ce458afc041f32" title="Creates NSEC.">ldns_dnssec_create_nsec</a>(<a class="code" href="structldns__struct__dnssec__name.html">ldns_dnssec_name</a> *from,
<a name="l00228"></a>00228                                     <a class="code" href="structldns__struct__dnssec__name.html">ldns_dnssec_name</a> *to,
<a name="l00229"></a>00229                                     <a class="code" href="rr_8h.html#a5b71c1de711a178f6fbda5d684cdfed5">ldns_rr_type</a> nsec_type);
<a name="l00230"></a>00230 
<a name="l00231"></a>00231 
<a name="l00235"></a>00235 <a class="code" href="structldns__struct__rr.html" title="Resource Record.">ldns_rr</a> *
<a name="l00236"></a>00236 <a class="code" href="dnssec_8c.html#a91a04e82a9a91edf77c5eb736921bbbb" title="Creates NSEC3.">ldns_dnssec_create_nsec3</a>(<a class="code" href="structldns__struct__dnssec__name.html">ldns_dnssec_name</a> *from,
<a name="l00237"></a>00237                                         <a class="code" href="structldns__struct__dnssec__name.html">ldns_dnssec_name</a> *to,
<a name="l00238"></a>00238                                         <a class="code" href="structldns__struct__rdf.html" title="Resource record data field.">ldns_rdf</a> *zone_name,
<a name="l00239"></a>00239                                         uint8_t algorithm,
<a name="l00240"></a>00240                                         uint8_t flags,
<a name="l00241"></a>00241                                         uint16_t iterations,
<a name="l00242"></a>00242                                         uint8_t salt_length,
<a name="l00243"></a>00243                                         uint8_t *salt);
<a name="l00244"></a>00244 
<a name="l00252"></a>00252 <a class="code" href="structldns__struct__rr.html" title="Resource Record.">ldns_rr</a> * <a class="code" href="dnssec_8c.html#a9085186405931df151e3eac5d33292fb" title="Create a NSEC record.">ldns_create_nsec</a>(<a class="code" href="structldns__struct__rdf.html" title="Resource record data field.">ldns_rdf</a> *cur_owner, <a class="code" href="structldns__struct__rdf.html" title="Resource record data field.">ldns_rdf</a> *next_owner, <a class="code" href="structldns__struct__rr__list.html" title="List or Set of Resource Records.">ldns_rr_list</a> *rrs);
<a name="l00253"></a>00253 
<a name="l00263"></a>00263 <a class="code" href="structldns__struct__rdf.html" title="Resource record data field.">ldns_rdf</a> *<a class="code" href="dnssec_8c.html#aa516dac9f07ce8b5734b9dfd19376cae" title="Calculates the hashed name using the given parameters.">ldns_nsec3_hash_name</a>(<a class="code" href="structldns__struct__rdf.html" title="Resource record data field.">ldns_rdf</a> *name, uint8_t algorithm, uint16_t iterations, uint8_t salt_length, uint8_t *salt);
<a name="l00264"></a>00264 
<a name="l00275"></a>00275 <span class="keywordtype">void</span> <a class="code" href="dnssec_8c.html#a32e7e1f34ec0a19c6d20997bd4191b61" title="Sets all the NSEC3 options.">ldns_nsec3_add_param_rdfs</a>(<a class="code" href="structldns__struct__rr.html" title="Resource Record.">ldns_rr</a> *rr,
<a name="l00276"></a>00276                                                  uint8_t algorithm,
<a name="l00277"></a>00277                                                  uint8_t flags,
<a name="l00278"></a>00278                                                  uint16_t iterations,
<a name="l00279"></a>00279                                                  uint8_t salt_length,
<a name="l00280"></a>00280                                                  uint8_t *salt);
<a name="l00281"></a>00281 
<a name="l00282"></a>00282 <span class="comment">/* this will NOT return the NSEC3  completed, you will have to run the</span>
<a name="l00283"></a>00283 <span class="comment">   finalize function on the rrlist later! */</span>
<a name="l00284"></a>00284 <a class="code" href="structldns__struct__rr.html" title="Resource Record.">ldns_rr</a> *
<a name="l00285"></a>00285 <a class="code" href="dnssec_8c.html#a4f2743c769d775eb5b6448286621da0c">ldns_create_nsec3</a>(<a class="code" href="structldns__struct__rdf.html" title="Resource record data field.">ldns_rdf</a> *cur_owner,
<a name="l00286"></a>00286                   <a class="code" href="structldns__struct__rdf.html" title="Resource record data field.">ldns_rdf</a> *cur_zone,
<a name="l00287"></a>00287                   <a class="code" href="structldns__struct__rr__list.html" title="List or Set of Resource Records.">ldns_rr_list</a> *rrs,
<a name="l00288"></a>00288                   uint8_t algorithm,
<a name="l00289"></a>00289                   uint8_t flags,
<a name="l00290"></a>00290                   uint16_t iterations,
<a name="l00291"></a>00291                   uint8_t salt_length,
<a name="l00292"></a>00292                   uint8_t *salt,
<a name="l00293"></a>00293                   <span class="keywordtype">bool</span> emptynonterminal);
<a name="l00294"></a>00294 
<a name="l00300"></a>00300 uint8_t <a class="code" href="dnssec_8c.html#ac3466657ba6e849ddcf44547729b7654" title="Returns the hash algorithm used in the given NSEC3 RR.">ldns_nsec3_algorithm</a>(<span class="keyword">const</span> <a class="code" href="structldns__struct__rr.html" title="Resource Record.">ldns_rr</a> *nsec3_rr);
<a name="l00301"></a>00301 
<a name="l00305"></a>00305 uint8_t
<a name="l00306"></a>00306 <a class="code" href="dnssec_8c.html#a8095ff0b971736da0fac9f09ed4a70e2" title="Returns flags field.">ldns_nsec3_flags</a>(<span class="keyword">const</span> <a class="code" href="structldns__struct__rr.html" title="Resource Record.">ldns_rr</a> *nsec3_rr);
<a name="l00307"></a>00307 
<a name="l00313"></a>00313 <span class="keywordtype">bool</span> <a class="code" href="dnssec_8c.html#aa0afddc06606bb7b2cf5a01498a75f74" title="Returns true if the opt-out flag has been set in the given NSEC3 RR.">ldns_nsec3_optout</a>(<span class="keyword">const</span> <a class="code" href="structldns__struct__rr.html" title="Resource Record.">ldns_rr</a> *nsec3_rr);
<a name="l00314"></a>00314 
<a name="l00320"></a>00320 uint16_t <a class="code" href="dnssec_8c.html#a30ee21fd35125587a36cfddab232af60" title="Returns the number of hash iterations used in the given NSEC3 RR.">ldns_nsec3_iterations</a>(<span class="keyword">const</span> <a class="code" href="structldns__struct__rr.html" title="Resource Record.">ldns_rr</a> *nsec3_rr);
<a name="l00321"></a>00321 
<a name="l00327"></a>00327 <a class="code" href="structldns__struct__rdf.html" title="Resource record data field.">ldns_rdf</a> *<a class="code" href="dnssec_8c.html#ad51179f10589890c3d774cc20f253bc2" title="Returns the salt used in the given NSEC3 RR.">ldns_nsec3_salt</a>(<span class="keyword">const</span> <a class="code" href="structldns__struct__rr.html" title="Resource Record.">ldns_rr</a> *nsec3_rr);
<a name="l00328"></a>00328 
<a name="l00334"></a>00334 uint8_t <a class="code" href="dnssec_8c.html#a7fa2f6a7ad9c4c69a3705e2fa3065556" title="Returns the length of the salt used in the given NSEC3 RR.">ldns_nsec3_salt_length</a>(<span class="keyword">const</span> <a class="code" href="structldns__struct__rr.html" title="Resource Record.">ldns_rr</a> *nsec3_rr);
<a name="l00335"></a>00335 
<a name="l00341"></a>00341 uint8_t *<a class="code" href="dnssec_8c.html#a96ef18b4efc39b04aba2df85a272b958" title="Returns the salt bytes used in the given NSEC3 RR.">ldns_nsec3_salt_data</a>(<span class="keyword">const</span> <a class="code" href="structldns__struct__rr.html" title="Resource Record.">ldns_rr</a> *nsec3_rr);
<a name="l00342"></a>00342 
<a name="l00348"></a>00348 <a class="code" href="structldns__struct__rdf.html" title="Resource record data field.">ldns_rdf</a> *<a class="code" href="dnssec_8c.html#ad1eecc66294a1195664dd1ba195a57b0" title="Returns the first label of the next ownername in the NSEC3 chain (ie.">ldns_nsec3_next_owner</a>(<span class="keyword">const</span> <a class="code" href="structldns__struct__rr.html" title="Resource Record.">ldns_rr</a> *nsec3_rr);
<a name="l00349"></a>00349 
<a name="l00355"></a>00355 <a class="code" href="structldns__struct__rdf.html" title="Resource record data field.">ldns_rdf</a> *<a class="code" href="dnssec_8c.html#ac60cd95b31e771323d711d404c917167" title="Returns the bitmap specifying the covered types of the given NSEC3 RR.">ldns_nsec3_bitmap</a>(<span class="keyword">const</span> <a class="code" href="structldns__struct__rr.html" title="Resource Record.">ldns_rr</a> *nsec3_rr);
<a name="l00356"></a>00356 
<a name="l00363"></a>00363 <a class="code" href="structldns__struct__rdf.html" title="Resource record data field.">ldns_rdf</a> *<a class="code" href="dnssec_8c.html#acac169a05f307efe9226b872904f644e" title="Calculates the hashed name using the parameters of the given NSEC3 RR.">ldns_nsec3_hash_name_frm_nsec3</a>(<span class="keyword">const</span> <a class="code" href="structldns__struct__rr.html" title="Resource Record.">ldns_rr</a> *nsec, <a class="code" href="structldns__struct__rdf.html" title="Resource record data field.">ldns_rdf</a> *name);
<a name="l00364"></a>00364 
<a name="l00371"></a>00371 <span class="keywordtype">bool</span> <a class="code" href="dnssec_8c.html#ab60bf88f5cc38b9d8a8e052ce5c33fde" title="Checks coverage of NSEC RR type bitmap.">ldns_nsec_bitmap_covers_type</a>(<span class="keyword">const</span> <a class="code" href="structldns__struct__rdf.html" title="Resource record data field.">ldns_rdf</a> *nsec_bitmap, <a class="code" href="rr_8h.html#a5b71c1de711a178f6fbda5d684cdfed5">ldns_rr_type</a> type);
<a name="l00372"></a>00372 
<a name="l00383"></a>00383 <span class="keywordtype">bool</span> <a class="code" href="dnssec_8c.html#ae580eb88c6a29558c572e097890099dc" title="Checks coverage of NSEC(3) RR name span Remember that nsec and name must both be in canonical form (i...">ldns_nsec_covers_name</a>(<span class="keyword">const</span> <a class="code" href="structldns__struct__rr.html" title="Resource Record.">ldns_rr</a> *nsec, <span class="keyword">const</span> <a class="code" href="structldns__struct__rdf.html" title="Resource record data field.">ldns_rdf</a> *name);
<a name="l00384"></a>00384 
<a name="l00385"></a>00385 <span class="preprocessor">#if LDNS_BUILD_CONFIG_HAVE_SSL</span>
<a name="l00386"></a>00386 <span class="preprocessor"></span>
<a name="l00397"></a>00397 <a class="code" href="error_8h.html#aaa6d98f86f535cf87b83b89e91f488f9">ldns_status</a> <a class="code" href="dnssec_8c.html#a0ee15f04de7f380ca19326fc7851c444" title="verify a packet">ldns_pkt_verify</a>(<a class="code" href="structldns__struct__pkt.html" title="DNS packet.">ldns_pkt</a> *p, <a class="code" href="rr_8h.html#a5b71c1de711a178f6fbda5d684cdfed5">ldns_rr_type</a> t, <a class="code" href="structldns__struct__rdf.html" title="Resource record data field.">ldns_rdf</a> *o, <a class="code" href="structldns__struct__rr__list.html" title="List or Set of Resource Records.">ldns_rr_list</a> *k, <a class="code" href="structldns__struct__rr__list.html" title="List or Set of Resource Records.">ldns_rr_list</a> *s, <a class="code" href="structldns__struct__rr__list.html" title="List or Set of Resource Records.">ldns_rr_list</a> *good_keys);
<a name="l00398"></a>00398 
<a name="l00411"></a>00411 <a class="code" href="error_8h.html#aaa6d98f86f535cf87b83b89e91f488f9">ldns_status</a> <a class="code" href="dnssec_8c.html#af145cf7773677c0fffe56f5df5106c76" title="verify a packet">ldns_pkt_verify_time</a>(<a class="code" href="structldns__struct__pkt.html" title="DNS packet.">ldns_pkt</a> *p, <a class="code" href="rr_8h.html#a5b71c1de711a178f6fbda5d684cdfed5">ldns_rr_type</a> t, <a class="code" href="structldns__struct__rdf.html" title="Resource record data field.">ldns_rdf</a> *o, <a class="code" href="structldns__struct__rr__list.html" title="List or Set of Resource Records.">ldns_rr_list</a> *k, <a class="code" href="structldns__struct__rr__list.html" title="List or Set of Resource Records.">ldns_rr_list</a> *s, time_t check_time, <a class="code" href="structldns__struct__rr__list.html" title="List or Set of Resource Records.">ldns_rr_list</a> *good_keys);
<a name="l00412"></a>00412 
<a name="l00413"></a>00413 <span class="preprocessor">#endif</span>
<a name="l00414"></a>00414 <span class="preprocessor"></span>
<a name="l00418"></a>00418 <a class="code" href="error_8h.html#aaa6d98f86f535cf87b83b89e91f488f9">ldns_status</a>
<a name="l00419"></a>00419 <a class="code" href="dnssec_8c.html#ad00a2e53f01e8ae1c08402fc80dff757" title="chains nsec3 list">ldns_dnssec_chain_nsec3_list</a>(<a class="code" href="structldns__struct__rr__list.html" title="List or Set of Resource Records.">ldns_rr_list</a> *nsec3_rrs);
<a name="l00420"></a>00420 
<a name="l00424"></a>00424 <span class="keywordtype">int</span>
<a name="l00425"></a>00425 <a class="code" href="dnssec_8c.html#ae641000a4b7f8c7229e1d3ece8067f39" title="compare for nsec3 sort">qsort_rr_compare_nsec3</a>(<span class="keyword">const</span> <span class="keywordtype">void</span> *a, <span class="keyword">const</span> <span class="keywordtype">void</span> *b);
<a name="l00426"></a>00426 
<a name="l00430"></a>00430 <span class="keywordtype">void</span>
<a name="l00431"></a>00431 <a class="code" href="dnssec_8c.html#a411a6000cc312ebf353ab0e302b97aec" title="sort nsec3 list">ldns_rr_list_sort_nsec3</a>(<a class="code" href="structldns__struct__rr__list.html" title="List or Set of Resource Records.">ldns_rr_list</a> *unsorted);
<a name="l00432"></a>00432 
<a name="l00440"></a>00440 <span class="keywordtype">int</span> <a class="code" href="dnssec_8c.html#ada58948f5d105d7817ea47608e974d78" title="Default callback function to always leave present signatures, and add new ones.">ldns_dnssec_default_add_to_signatures</a>(<a class="code" href="structldns__struct__rr.html" title="Resource Record.">ldns_rr</a> *sig, <span class="keywordtype">void</span> *n);
<a name="l00448"></a>00448 <span class="keywordtype">int</span> <a class="code" href="dnssec_8c.html#a8a5934ffbbfb621c63ba8bb841229808" title="Default callback function to always leave present signatures, and add no new ones for the keys of the...">ldns_dnssec_default_leave_signatures</a>(<a class="code" href="structldns__struct__rr.html" title="Resource Record.">ldns_rr</a> *sig, <span class="keywordtype">void</span> *n);
<a name="l00456"></a>00456 <span class="keywordtype">int</span> <a class="code" href="dnssec_8c.html#ac7efa063ce39cf4791dd30a4b41ab14c" title="Default callback function to always remove present signatures, but add no new ones.">ldns_dnssec_default_delete_signatures</a>(<a class="code" href="structldns__struct__rr.html" title="Resource Record.">ldns_rr</a> *sig, <span class="keywordtype">void</span> *n);
<a name="l00464"></a>00464 <span class="keywordtype">int</span> <a class="code" href="dnssec_8c.html#aa20001e7098d4be9f24baf56a8761410" title="Default callback function to always leave present signatures, and add new ones.">ldns_dnssec_default_replace_signatures</a>(<a class="code" href="structldns__struct__rr.html" title="Resource Record.">ldns_rr</a> *sig, <span class="keywordtype">void</span> *n);
<a name="l00465"></a>00465 
<a name="l00466"></a>00466 <span class="preprocessor">#if LDNS_BUILD_CONFIG_HAVE_SSL</span>
<a name="l00467"></a>00467 <span class="preprocessor"></span>
<a name="l00475"></a>00475 <a class="code" href="structldns__struct__rdf.html" title="Resource record data field.">ldns_rdf</a> *
<a name="l00476"></a>00476 <a class="code" href="dnssec_8c.html#a4634cf53a0db48001bbbbdd17cc19776" title="Converts the DSA signature from ASN1 representation (RFC2459, as used by OpenSSL) to raw signature da...">ldns_convert_dsa_rrsig_asn12rdf</a>(<span class="keyword">const</span> <a class="code" href="structldns__struct__buffer.html" title="implementation of buffers to ease operations">ldns_buffer</a> *sig,
<a name="l00477"></a>00477                                                   <span class="keyword">const</span> <span class="keywordtype">long</span> sig_len);
<a name="l00478"></a>00478 
<a name="l00487"></a>00487 <a class="code" href="error_8h.html#aaa6d98f86f535cf87b83b89e91f488f9">ldns_status</a>
<a name="l00488"></a>00488 <a class="code" href="dnssec_8c.html#ab108d2e53a4c50960af11f999a8ba546" title="Converts the RRSIG signature RDF (in rfc2536 format) to a buffer with the signature in rfc2459 format...">ldns_convert_dsa_rrsig_rdf2asn1</a>(<a class="code" href="structldns__struct__buffer.html" title="implementation of buffers to ease operations">ldns_buffer</a> *target_buffer,
<a name="l00489"></a>00489                                                   <span class="keyword">const</span> <a class="code" href="structldns__struct__rdf.html" title="Resource record data field.">ldns_rdf</a> *sig_rdf);
<a name="l00490"></a>00490 
<a name="l00500"></a>00500 <a class="code" href="structldns__struct__rdf.html" title="Resource record data field.">ldns_rdf</a> *
<a name="l00501"></a>00501 <a class="code" href="dnssec_8h.html#a6abc850382a62cd75779a03c6714513c" title="Converts the ECDSA signature from ASN1 representation (as used by OpenSSL) to raw signature data as u...">ldns_convert_ecdsa_rrsig_asn12rdf</a>(<span class="keyword">const</span> <a class="code" href="structldns__struct__buffer.html" title="implementation of buffers to ease operations">ldns_buffer</a> *sig, <span class="keyword">const</span> <span class="keywordtype">long</span> sig_len);
<a name="l00502"></a>00502 
<a name="l00512"></a>00512 <a class="code" href="error_8h.html#aaa6d98f86f535cf87b83b89e91f488f9">ldns_status</a>
<a name="l00513"></a>00513 <a class="code" href="dnssec_8h.html#a43edc2abba90771b264de3665b34e45a" title="Converts the RRSIG signature RDF (from DNS) to a buffer with the signature in ASN1 format as openssl ...">ldns_convert_ecdsa_rrsig_rdf2asn1</a>(<a class="code" href="structldns__struct__buffer.html" title="implementation of buffers to ease operations">ldns_buffer</a> *target_buffer,
<a name="l00514"></a>00514         <span class="keyword">const</span> <a class="code" href="structldns__struct__rdf.html" title="Resource record data field.">ldns_rdf</a> *sig_rdf);
<a name="l00515"></a>00515 
<a name="l00516"></a>00516 <span class="preprocessor">#endif </span><span class="comment">/* LDNS_BUILD_CONFIG_HAVE_SSL */</span>
<a name="l00517"></a>00517 
<a name="l00518"></a>00518 <span class="preprocessor">#ifdef __cplusplus</span>
<a name="l00519"></a>00519 <span class="preprocessor"></span>}
<a name="l00520"></a>00520 <span class="preprocessor">#endif</span>
<a name="l00521"></a>00521 <span class="preprocessor"></span>
<a name="l00522"></a>00522 <span class="preprocessor">#endif </span><span class="comment">/* LDNS_DNSSEC_H */</span>
</pre></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>