+++ /dev/null
-* Development
-
-ldns development is ongoing. Most of the functionality is there, but some
-DNSSEC pieces are missing.
-
-Feedback is appreciated.
-
-* Compilation
-
-When getting this source as snapshot you need to compile it first.
-For compilation you need gmake and the gnu autotools.
-
-Extract the source and in the source directory:
-libtoolize && autoreconf && ./configure && gmake
-
-(or just make on Linux)
Closely match the api/interface of Perl's Net::DNS; make it easy to
toss around RR sets, DNS packets, Resolvers, etc. etc.
-As said in 'CodingStyle':
-* Everything by reference, all data structures an optional _clone() function
+* Everything by is called by reference. If data in the structures must
+ be copied an optional _clone() function is provided.
+ This is mirrored in the free() functions, a ldns_*_free() frees the
+ structures' pointer. A ldns_*_deep_free() looks into a structure
+ an frees everything.
-This means that unless something is cloned in a program, it is hard to free
-it. The only exception to this in ldns itself is in the resolver structure.
-There the .domain ans .nameservers are cloned when they are put in the
-structure. This allows a program to free a resolver structure.
+Also see doc/CodingStyle
* Examples
There are some examples in the examples/ directory. These can be built with:
1. cd examples/
-2. autoreconf [--with-ldns=../]
-3. gmake
-
-The library has to be installed in order for this to work. If it is not
-installed in one of the default paths (i.e. if you have specified --prefix
-when configuring the library) you can use --with-ldns=PATH to specify that
-path. PATH in that case would be '../'
-
-In that last case, you will also need to have your LD_LIBRARY_PATH set to
-the .libs directory to be able to run the examples. I.e.:
-
-LD_LIBRARY_PATH=../lib ./ldns-version
+2 autoreconf
+3. ./configure [--with-ldns=../]
+4. gmake
* Drill
+Drill can be build with:
+1. cd drill/
+2. autoreconf
+3. ./configure [--with-ldns=../]
+4. gmake
-Drill can be built by issuing a 'make drill' from the ldns source dir.
-
-If you want to build drill by hand, the configure and running options are
-the same as those for the examples.
-
+Note, if built with --with-ldns=../ you will need to set the
+LD_LIBRARY_PATH to let library loader find the library.
* Building from repository
If you are building from the repository you will need to have (gnu)
autotools like libtool and autoreconf installed. A list of all the commands
needed to build everything can be found in README.svn. Note that the actual
-commands may be a little bit different on your machine. Most important are
-libtoolize and make allautoconf (or do autoreconf manually in the subdirs)
-
+commands may be a little bit different on your machine.
* Developers
ldns is developed by the ldns team at NLnet Labs. This team currently
+
+The ldns subversion repository can found at:
+www.nlnetlabs.nl/ldns/svn/
+
# small list of commands to build all on a linux system
# libtoolize and make allautoconf are needed for most other targets
libtoolize -c
autoreconf
./configure
make
-make allautoconf
make doc
-make examples
-make drill
+(cd examples && autoreconf && ./configure --with-ldns=../ && make)
+(cd drill && autoreconf && ./configure --with-ldns=../ && make)
+++ /dev/null
-LDNS - release checklist
-
-o update bugzilla with the current version number
Current TODO list
-1.1:
+1.1.0:
----
+ o bgsend()
+ o server stuff yes/no
+ o documentation
+ o sorting/sorting ord
+ o secure tracing drill
+ o openSSL - make optional - for portability
+ o IP6 - make optional - for portability
o API cleanup: add missing consts in function arguments
+ o vim syntax
+ o walker
+ o zone.c; make it better/faster
Post 1.0 Stuff:
---------------