diff options
Diffstat (limited to 'doc/API-header.xml')
-rw-r--r-- | doc/API-header.xml | 109 |
1 files changed, 109 insertions, 0 deletions
diff --git a/doc/API-header.xml b/doc/API-header.xml new file mode 100644 index 0000000..a4cd081 --- /dev/null +++ b/doc/API-header.xml @@ -0,0 +1,109 @@ +<?xml version="1.0"?> + +<!DOCTYPE rfc SYSTEM "rfc2629.dtd"> +<!-- $Id --> + +<?rfc toc="yes" ?> +<?rfc compact="yes" ?> +<?rfc editing="no" ?> +<?rfc iprnotified="no" ?> +<?rfc private="LibDNS API" ?> + +<rfc ipr="none" category="info" docName="API-00.txt"> + +<front> +<title>LibDNS API</title> + <author initials="R." surname="Gieben" fullname="Miek Gieben"> + <organization>NLnet Labs</organization> + <address> + <postal> + <street>Kruislaan 419</street> + <city>Amsterdam</city> + <code>1098 VA</code> + <country>The Netherlands</country> + </postal> + <email>miek@nlnetlabs.nl</email> + <uri>http://www.nlnetlabs.nl</uri> + </address> + </author> + <author initials="J." surname="Jansen" fullname="Jelte Jansen"> + <organization>NLnet Labs</organization> + <address> + <postal> + <street>Kruislaan 419</street> + <city>Amsterdam</city> + <code>1098 VA</code> + <country>The Netherlands</country> + </postal> + <email>jelte@nlnetlabs.nl</email> + <uri>http://www.nlnetlabs.nl</uri> + </address> + </author> + <author initials="E." surname="Rozendaal" fullname="Erik Rozendaal"> + <organization>NLnet Labs</organization> + <address> + <postal> + <street>Kruislaan 419</street> + <city>Amsterdam</city> + <code>1098 VA</code> + <country>The Netherlands</country> + </postal> + <email>erik@nlnetlabs.nl</email> + <uri>http://www.nlnetlabs.nl</uri> + </address> + </author> +<date month="January" year="2005" /> +<keyword>DNS</keyword> +<keyword>Elite</keyword> +<keyword>Hacking</keyword> +<abstract> +<t> +A small abstract will come here, TBD. +</t> +</abstract> +</front> + +<middle> + +<section title="Introduction"> +<t> +LibDNS (or lDNS) is modelled after the Net::DNS perl library. It has +been shown that Net::DNS can be used vefficiently for +programming DNS aware applications. We want to bring the same +level of efficiency to C programmers. +</t> +<t> +The lDNS API consist of two layers. The top-layer, this is +what is actually exported to the application via the library. And the +bottom-layer, this is what lDNS needs to compile and function. +</t> +</section> <!-- "Introduction" --> + +<section title="Differences With Other Libraries"> +<t> +Short intermezzo detailing differences with other libraries. Most important +ones are the libc resolver interface (from BIND8) and the lwres_ interface +from BIND9. +</t> +</section> <!-- "Differences with other libraries" --> + +<section title="Interfaces"> +<t> +At its lowest level lDNS is only dependent on libc. It uses a +few networking systems calls; socket, bind, send/recv and friends. +</t> +<t> +Further more it is to be expected that lDNS will depend on OpenSSL for +its cryptography. +</t> +<t> +As said, lDNS is modelled after Net::DNS, therefor its application API +looks very much like the one used for Net::DNS. Some modification are made +ofcourse, because not all functionality of Perl can be caught in C. +</t> + +<t> +This API document was written by carefully looking at the documentation +contained in the Net::DNS Perl module. +</t> +</section> <!-- "Interfaces" --> |