mirror of https://github.com/getdnsapi/getdns.git
Merge branch 'master' into develop
This commit is contained in:
commit
bd186ebca0
12
README.md
12
README.md
|
@ -1,7 +1,7 @@
|
||||||
getdns API
|
getdns API
|
||||||
==========
|
==========
|
||||||
|
|
||||||
* Date: 2013-06-20
|
* Date: 2013-06-27
|
||||||
* GitHub: <https://github.com/verisign/getdns>
|
* GitHub: <https://github.com/verisign/getdns>
|
||||||
|
|
||||||
getdns is a [modern asynchronous DNS API](http://www.vpnc.org/getdns-api/) intended to make all types of DNS information easily available as described by Paul Hoffman. This implementation is licensed under the [MIT license](http://opensource.org/licenses/MIT).
|
getdns is a [modern asynchronous DNS API](http://www.vpnc.org/getdns-api/) intended to make all types of DNS information easily available as described by Paul Hoffman. This implementation is licensed under the [MIT license](http://opensource.org/licenses/MIT).
|
||||||
|
@ -27,16 +27,16 @@ Non-goals (things we will not be doing) include:
|
||||||
|
|
||||||
Contributors
|
Contributors
|
||||||
============
|
============
|
||||||
* Neel Goyal, Verisign, Inc.
|
Neel Goyal, Verisign, Inc.
|
||||||
* Allison Mankin, Verisign, Inc.
|
Allison Mankin, Verisign, Inc.
|
||||||
* Melinda Shore
|
Melinda Shore, No Mountain Software LLC
|
||||||
* Glen Wiley, Verisign, Inc.
|
Glen Wiley, Verisign, Inc.
|
||||||
|
|
||||||
External Dependencies
|
External Dependencies
|
||||||
=====================
|
=====================
|
||||||
External dependencies are linked outside the getdns API build tree (we rely on configure to find them).
|
External dependencies are linked outside the getdns API build tree (we rely on configure to find them).
|
||||||
|
|
||||||
The project relies on [libdns from NL](https://www.nlnetlabs.nl/projects/ldns/) for parsing and constructing DNS packets. Version 1.6.16
|
The project relies on [libldns from NL](https://www.nlnetlabs.nl/projects/ldns/) for parsing and constructing DNS packets. Version 1.6.16 (note that building ldns may require openssl headers and libraries)
|
||||||
|
|
||||||
Although [libevent](http://libevent.org) is used initially to implement the asynchronous model, future work may include a move to other mechanisms (epoll based etc.). Version 2.0.21 stable
|
Although [libevent](http://libevent.org) is used initially to implement the asynchronous model, future work may include a move to other mechanisms (epoll based etc.). Version 2.0.21 stable
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
/usr/share/automake-1.11/COPYING
|
|
@ -0,0 +1,50 @@
|
||||||
|
#
|
||||||
|
# Makefile. Generated from Makefile.in by configure.
|
||||||
|
#
|
||||||
|
|
||||||
|
|
||||||
|
package = getdns
|
||||||
|
version = 0.320
|
||||||
|
tarname = getdns
|
||||||
|
distdir = $(tarname)-$(version)
|
||||||
|
|
||||||
|
prefix = /usr/local
|
||||||
|
exec_prefix = ${prefix}
|
||||||
|
bindir = ${exec_prefix}/bin
|
||||||
|
|
||||||
|
srcdir = .
|
||||||
|
|
||||||
|
|
||||||
|
all clean getdns:
|
||||||
|
cd common && $(MAKE) $@
|
||||||
|
|
||||||
|
$(distdir): FORCE
|
||||||
|
mkdir -p $(distdir)/src
|
||||||
|
cp $(srcdir)/configure.ac $(distdir)
|
||||||
|
cp $(srcdir)/configure $(distdir)
|
||||||
|
cp $(srcdir)/Makefile.in $(distdir)
|
||||||
|
cp $(srcdir)/src/Makefile.in $(distdir)/src
|
||||||
|
|
||||||
|
distcheck: $(distdir).tar.gz
|
||||||
|
gzip -cd $(distdir).tar.gz | tar xvf -
|
||||||
|
cd $(distdir) && ./configure
|
||||||
|
cd $(distdir) && $(MAKE) all
|
||||||
|
cd $(distdir) && $(MAKE) check
|
||||||
|
cd $(distdir) && $(MAKE) DESTDIR=$${PWD}/_inst install
|
||||||
|
cd $(distdir) && $(MAKE) DESTDIR=$${PWD}/_inst uninstall
|
||||||
|
@remaining="`find $${PWD}/$(distdir)/_inst -type f | wc -l`"; \
|
||||||
|
if test "$${remaining}" -ne 0; then
|
||||||
|
echo "@@@ $${remaining} file(s) remaining in stage directory!"; \
|
||||||
|
exit 1; \
|
||||||
|
fi
|
||||||
|
cd $(distdir) && $(MAKE) clean
|
||||||
|
rm -rf $(distdir)
|
||||||
|
@echo "*** Package $(distdir).tar.gz is ready for distribution"
|
||||||
|
|
||||||
|
Makefile: Makefile.in config.status
|
||||||
|
./config.status $@
|
||||||
|
|
||||||
|
configure.status: configure
|
||||||
|
./config.status --recheck
|
||||||
|
|
||||||
|
.PHONY: all clean
|
|
@ -16,35 +16,35 @@ srcdir = @srcdir@
|
||||||
VPATH = @srcdir@
|
VPATH = @srcdir@
|
||||||
|
|
||||||
all clean getdns:
|
all clean getdns:
|
||||||
cd src && $(MAKE) $@
|
cd common && $(MAKE) $@
|
||||||
|
|
||||||
$(distdir): FORCE
|
$(distdir): FORCE
|
||||||
mkdir -p $(distdir)/src
|
mkdir -p $(distdir)/src
|
||||||
cp $(srcdir)/configure.ac $(distdir)
|
cp $(srcdir)/configure.ac $(distdir)
|
||||||
cp $(srcdir)/configure $(distdir)
|
cp $(srcdir)/configure $(distdir)
|
||||||
cp $(srcdir)/Makefile.in $(distdir)
|
cp $(srcdir)/Makefile.in $(distdir)
|
||||||
cp $(srcdir)/src/Makefile.in $(distdir)/src
|
cp $(srcdir)/src/Makefile.in $(distdir)/src
|
||||||
|
|
||||||
distcheck: $(distdir).tar.gz
|
distcheck: $(distdir).tar.gz
|
||||||
gzip -cd $(distdir).tar.gz | tar xvf -
|
gzip -cd $(distdir).tar.gz | tar xvf -
|
||||||
cd $(distdir) && ./configure
|
cd $(distdir) && ./configure
|
||||||
cd $(distdir) && $(MAKE) all
|
cd $(distdir) && $(MAKE) all
|
||||||
cd $(distdir) && $(MAKE) check
|
cd $(distdir) && $(MAKE) check
|
||||||
cd $(distdir) && $(MAKE) DESTDIR=$${PWD}/_inst install
|
cd $(distdir) && $(MAKE) DESTDIR=$${PWD}/_inst install
|
||||||
cd $(distdir) && $(MAKE) DESTDIR=$${PWD}/_inst uninstall
|
cd $(distdir) && $(MAKE) DESTDIR=$${PWD}/_inst uninstall
|
||||||
@remaining="`find $${PWD}/$(distdir)/_inst -type f | wc -l`"; \
|
@remaining="`find $${PWD}/$(distdir)/_inst -type f | wc -l`"; \
|
||||||
if test "$${remaining}" -ne 0; then
|
if test "$${remaining}" -ne 0; then
|
||||||
echo "@@@ $${remaining} file(s) remaining in stage directory!"; \
|
echo "@@@ $${remaining} file(s) remaining in stage directory!"; \
|
||||||
exit 1; \
|
exit 1; \
|
||||||
fi
|
fi
|
||||||
cd $(distdir) && $(MAKE) clean
|
cd $(distdir) && $(MAKE) clean
|
||||||
rm -rf $(distdir)
|
rm -rf $(distdir)
|
||||||
@echo "*** Package $(distdir).tar.gz is ready for distribution"
|
@echo "*** Package $(distdir).tar.gz is ready for distribution"
|
||||||
|
|
||||||
Makefile: Makefile.in config.status
|
Makefile: Makefile.in config.status
|
||||||
./config.status $@
|
./config.status $@
|
||||||
|
|
||||||
configure.status: configure
|
configure.status: configure
|
||||||
./config.status --recheck
|
./config.status --recheck
|
||||||
|
|
||||||
.PHONY: all clean
|
.PHONY: all clean
|
||||||
|
|
|
@ -0,0 +1,64 @@
|
||||||
|
#
|
||||||
|
# common/Makefile. Generated from Makefile.in by configure.
|
||||||
|
#
|
||||||
|
|
||||||
|
package = getdns
|
||||||
|
version = 0.320
|
||||||
|
tarname = getdns
|
||||||
|
distdir = $(tarname)-$(version)
|
||||||
|
|
||||||
|
prefix = /usr/local
|
||||||
|
exec_prefix = ${prefix}
|
||||||
|
bindir = ${exec_prefix}/bin
|
||||||
|
|
||||||
|
srcdir = .
|
||||||
|
|
||||||
|
|
||||||
|
CC=gcc
|
||||||
|
CFLAGS=-g -I$(srcdir)/ -std=c99
|
||||||
|
LDFLAGS=-L.
|
||||||
|
LDLIBS=-levent_core -lldns -lgetdns
|
||||||
|
PROGRAMS=example-simple-answers example-tree example-all-functions example-synchronous
|
||||||
|
|
||||||
|
all: libgetdns example-simple-answers example-tree example-all-functions example-synchronous
|
||||||
|
|
||||||
|
getdns_core_only.o: getdns_core_only.c
|
||||||
|
$(CC) -c -Wall -fPIC $(CFLAGS) $^
|
||||||
|
|
||||||
|
libgetdns: getdns_core_only.c
|
||||||
|
$(CC) $(CFLAGS) -shared -o libgetdns.so $^
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -f *.o $(PROGRAMS) libgetdns.so
|
||||||
|
|
||||||
|
$(distdir): FORCE
|
||||||
|
mkdir -p $(distdir)/src
|
||||||
|
cp configure.ac $(distdir)
|
||||||
|
cp configure $(distdir)
|
||||||
|
cp Makefile.in $(distdir)
|
||||||
|
cp src/Makefile.in $(distdir)/src
|
||||||
|
|
||||||
|
distcheck: $(distdir).tar.gz
|
||||||
|
gzip -cd $(distdir).tar.gz | tar xvf -
|
||||||
|
cd $(distdir) && ./configure
|
||||||
|
cd $(distdir) && $(MAKE) all
|
||||||
|
cd $(distdir) && $(MAKE) check
|
||||||
|
cd $(distdir) && $(MAKE) DESTDIR=$${PWD}/_inst install
|
||||||
|
cd $(distdir) && $(MAKE) DESTDIR=$${PWD}/_inst uninstall
|
||||||
|
@remaining="`find $${PWD}/$(distdir)/_inst -type f | wc -l`"; \
|
||||||
|
if test "$${remaining}" -ne 0; then
|
||||||
|
echo "@@@ $${remaining} file(s) remaining in stage directory!"; \
|
||||||
|
exit 1; \
|
||||||
|
fi
|
||||||
|
cd $(distdir) && $(MAKE) clean
|
||||||
|
rm -rf $(distdir)
|
||||||
|
@echo "*** Package $(distdir).tar.gz is ready for distribution"
|
||||||
|
|
||||||
|
Makefile: Makefile.in ../config.status
|
||||||
|
cd .. && ./config.status $@
|
||||||
|
|
||||||
|
configure.status: configure
|
||||||
|
cd .. && ./config.status --recheck
|
||||||
|
|
||||||
|
.PHONY: clean
|
||||||
|
|
|
@ -15,14 +15,11 @@ srcdir = @srcdir@
|
||||||
VPATH = @srcdir@
|
VPATH = @srcdir@
|
||||||
|
|
||||||
CC=gcc
|
CC=gcc
|
||||||
CFLAGS=-g -I. -std=c99
|
CFLAGS=-g -I$(srcdir)/ -std=c99
|
||||||
LDFLAGS=-L.
|
LDFLAGS=-L.
|
||||||
LDLIBS=-levent_core -lldns -lgetdns
|
LDLIBS=-levent_core -lldns -lgetdns
|
||||||
PROGRAMS=example-simple-answers example-tree example-all-functions example-synchronous
|
PROGRAMS=example-simple-answers example-tree example-all-functions example-synchronous
|
||||||
|
|
||||||
# example-simple-answers.c example-tree.c
|
|
||||||
# example-all-functions.c example-synchronous.c getdns_core_only.c
|
|
||||||
|
|
||||||
all: libgetdns example-simple-answers example-tree example-all-functions example-synchronous
|
all: libgetdns example-simple-answers example-tree example-all-functions example-synchronous
|
||||||
|
|
||||||
getdns_core_only.o: getdns_core_only.c
|
getdns_core_only.o: getdns_core_only.c
|
||||||
|
@ -57,11 +54,11 @@ distcheck: $(distdir).tar.gz
|
||||||
rm -rf $(distdir)
|
rm -rf $(distdir)
|
||||||
@echo "*** Package $(distdir).tar.gz is ready for distribution"
|
@echo "*** Package $(distdir).tar.gz is ready for distribution"
|
||||||
|
|
||||||
Makefile: Makefile.in config.status
|
Makefile: Makefile.in ../config.status
|
||||||
./config.status $@
|
cd .. && ./config.status $@
|
||||||
|
|
||||||
configure.status: configure
|
configure.status: configure
|
||||||
./config.status --recheck
|
cd .. && ./config.status --recheck
|
||||||
|
|
||||||
.PHONY: clean
|
.PHONY: clean
|
||||||
|
|
|
@ -0,0 +1,64 @@
|
||||||
|
#
|
||||||
|
# @configure_input@
|
||||||
|
#
|
||||||
|
|
||||||
|
package = @PACKAGE_NAME@
|
||||||
|
version = @PACKAGE_VERSION@
|
||||||
|
tarname = @PACKAGE_TARNAME@
|
||||||
|
distdir = $(tarname)-$(version)
|
||||||
|
|
||||||
|
prefix = @prefix@
|
||||||
|
exec_prefix = @exec_prefix@
|
||||||
|
bindir = @bindir@
|
||||||
|
|
||||||
|
srcdir = @srcdir@
|
||||||
|
VPATH = @srcdir@
|
||||||
|
|
||||||
|
CC=gcc
|
||||||
|
CFLAGS=-g -I. -std=c99
|
||||||
|
LDFLAGS=-L.
|
||||||
|
LDLIBS=-levent_core -lldns -lgetdns
|
||||||
|
PROGRAMS=example-simple-answers example-tree example-all-functions example-synchronous
|
||||||
|
|
||||||
|
all: libgetdns example-simple-answers example-tree example-all-functions example-synchronous
|
||||||
|
|
||||||
|
getdns_core_only.o: getdns_core_only.c
|
||||||
|
$(CC) -c -Wall -fPIC $(CFLAGS) $^
|
||||||
|
|
||||||
|
libgetdns: getdns_core_only.c
|
||||||
|
$(CC) $(CFLAGS) -shared -o libgetdns.so $^
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -f *.o $(PROGRAMS) libgetdns.so
|
||||||
|
|
||||||
|
$(distdir): FORCE
|
||||||
|
mkdir -p $(distdir)/src
|
||||||
|
cp configure.ac $(distdir)
|
||||||
|
cp configure $(distdir)
|
||||||
|
cp Makefile.in $(distdir)
|
||||||
|
cp src/Makefile.in $(distdir)/src
|
||||||
|
|
||||||
|
distcheck: $(distdir).tar.gz
|
||||||
|
gzip -cd $(distdir).tar.gz | tar xvf -
|
||||||
|
cd $(distdir) && ./configure
|
||||||
|
cd $(distdir) && $(MAKE) all
|
||||||
|
cd $(distdir) && $(MAKE) check
|
||||||
|
cd $(distdir) && $(MAKE) DESTDIR=$${PWD}/_inst install
|
||||||
|
cd $(distdir) && $(MAKE) DESTDIR=$${PWD}/_inst uninstall
|
||||||
|
@remaining="`find $${PWD}/$(distdir)/_inst -type f | wc -l`"; \
|
||||||
|
if test "$${remaining}" -ne 0; then
|
||||||
|
echo "@@@ $${remaining} file(s) remaining in stage directory!"; \
|
||||||
|
exit 1; \
|
||||||
|
fi
|
||||||
|
cd $(distdir) && $(MAKE) clean
|
||||||
|
rm -rf $(distdir)
|
||||||
|
@echo "*** Package $(distdir).tar.gz is ready for distribution"
|
||||||
|
|
||||||
|
Makefile: Makefile.in ../config.status
|
||||||
|
cd .. && ./config.status $@
|
||||||
|
|
||||||
|
configure.status: configure
|
||||||
|
cd .. && ./config.status --recheck
|
||||||
|
|
||||||
|
.PHONY: clean
|
||||||
|
|
|
@ -0,0 +1,17 @@
|
||||||
|
|
||||||
|
## ---------------------- ##
|
||||||
|
## Running config.status. ##
|
||||||
|
## ---------------------- ##
|
||||||
|
|
||||||
|
This file was extended by getdns config.status 0.320, which was
|
||||||
|
generated by GNU Autoconf 2.68. Invocation command line was
|
||||||
|
|
||||||
|
CONFIG_FILES =
|
||||||
|
CONFIG_HEADERS =
|
||||||
|
CONFIG_LINKS =
|
||||||
|
CONFIG_COMMANDS =
|
||||||
|
$ ../config.status Makefile
|
||||||
|
|
||||||
|
on ubuntu-11-10
|
||||||
|
|
||||||
|
config.status:737: creating Makefile
|
|
@ -107,9 +107,9 @@ of this new API are:</p>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<p>There is more background into the design and future goals of this API
|
<p>There is more background into the design and future goals of this API
|
||||||
<a href="index.html#Commentary">later in this document</a>.</p>
|
<a href="#Commentary">later in this document</a>.</p>
|
||||||
|
|
||||||
<p>This document was discussed on the <a href="../mailman/listinfo/getdns-api">
|
<p>This document was discussed on the <a href="http://www.vpnc.org/mailman/listinfo/getdns-api">
|
||||||
getdns-api mailing list</a>; future versions of the API might be discussed there as well.
|
getdns-api mailing list</a>; future versions of the API might be discussed there as well.
|
||||||
(If you
|
(If you
|
||||||
want to contact the editor off-list, please send mail to <a
|
want to contact the editor off-list, please send mail to <a
|
||||||
|
@ -147,7 +147,7 @@ getdns_general(
|
||||||
|
|
||||||
<p class=define><code><b>context</b></code></p>
|
<p class=define><code><b>context</b></code></p>
|
||||||
<p class=descrip>A pointer to the DNS context that is to be used with this call. DNS contexts are
|
<p class=descrip>A pointer to the DNS context that is to be used with this call. DNS contexts are
|
||||||
described <a href="index.html#Contexts">later in this document</a>. Note that a context <i>must</i> be created
|
described <a href="#Contexts">later in this document</a>. Note that a context <i>must</i> be created
|
||||||
before calling the function.</p>
|
before calling the function.</p>
|
||||||
|
|
||||||
<p class=define><code><b>*name</b></code></p>
|
<p class=define><code><b>*name</b></code></p>
|
||||||
|
@ -167,7 +167,7 @@ defined macros for most of the RRtypes by name; the definition names all start w
|
||||||
|
|
||||||
<p class=define><code><b>*extensions</b></code></p>
|
<p class=define><code><b>*extensions</b></code></p>
|
||||||
<p class=descrip>Specifies the extensions for this request; the value may be NULL if there are no
|
<p class=descrip>Specifies the extensions for this request; the value may be NULL if there are no
|
||||||
extensions. See <a href="index.html#Extensions">the section below</a> for information on how to specify
|
extensions. See <a href="#Extensions">the section below</a> for information on how to specify
|
||||||
the extensions used for a request.</p>
|
the extensions used for a request.</p>
|
||||||
|
|
||||||
<p class=define><code><b>*userarg</b></code></p>
|
<p class=define><code><b>*userarg</b></code></p>
|
||||||
|
@ -197,7 +197,7 @@ the function was bad, <code>GETDNS_RETURN_BAD_CONTEXT</code> if the context poin
|
||||||
<code>GETDNS_RETURN_NO_SUCH_EXTENSION</code> if one or more extensions do not exist, or
|
<code>GETDNS_RETURN_NO_SUCH_EXTENSION</code> if one or more extensions do not exist, or
|
||||||
<code>GETDNS_RETURN_EXTENSION_MISFORMAT</code> if the contents of one or more of the
|
<code>GETDNS_RETURN_EXTENSION_MISFORMAT</code> if the contents of one or more of the
|
||||||
extensions is incorrect. All of the return values are given <a
|
extensions is incorrect. All of the return values are given <a
|
||||||
href="index.html#ReturnCodes">later in this document</a>.</p>
|
href="#ReturnCodes">later in this document</a>.</p>
|
||||||
|
|
||||||
<h2>1.2 <code>getdns_address()</code></h2>
|
<h2>1.2 <code>getdns_address()</code></h2>
|
||||||
|
|
||||||
|
@ -281,8 +281,8 @@ typedef void (*getdns_callback_t)(
|
||||||
|
|
||||||
<p class=define><code><b>context</b></code></p>
|
<p class=define><code><b>context</b></code></p>
|
||||||
<p class=descrip>The DNS context that was used in the calling function. See <a
|
<p class=descrip>The DNS context that was used in the calling function. See <a
|
||||||
href="index.html#ContextInitial">below</a> for a description of the basic use of contexts, and <a
|
href="#ContextInitial">below</a> for a description of the basic use of contexts, and <a
|
||||||
href="index.html#Contexts">later</a> for more advanced use.</p>
|
href="#Contexts">later</a> for more advanced use.</p>
|
||||||
|
|
||||||
<p class=define><code><b>callback_type</b></code></p>
|
<p class=define><code><b>callback_type</b></code></p>
|
||||||
<p class=descrip>Supplies the reason for the callback. See below for the codes and reasons.</p>
|
<p class=descrip>Supplies the reason for the callback. See below for the codes and reasons.</p>
|
||||||
|
@ -875,7 +875,7 @@ bindata), <code>type</code> (an int), <code>class</code> (an int), <code>ttl</co
|
||||||
<code>rdata</code> (a dict); there is no name equivalent to the RDLENGTH field.</p>
|
<code>rdata</code> (a dict); there is no name equivalent to the RDLENGTH field.</p>
|
||||||
|
|
||||||
<p>The <code>rdata</code> dict has different names for each response type. There is a <a
|
<p>The <code>rdata</code> dict has different names for each response type. There is a <a
|
||||||
href="index.html#TypeList">complete list of the types defined</a> in the API. For names that end in
|
href="#TypeList">complete list of the types defined</a> in the API. For names that end in
|
||||||
"-obsolete" or "-unknown", the bindata is the entire RDATA field. For example, the
|
"-obsolete" or "-unknown", the bindata is the entire RDATA field. For example, the
|
||||||
<code>rdata</code> for an A record has a name <code>ipv4_address</code> (a bindata); the
|
<code>rdata</code> for an A record has a name <code>ipv4_address</code> (a bindata); the
|
||||||
<code>rdata</code> for an SRV record has the names <code>priority</code> (an int),
|
<code>rdata</code> for an SRV record has the names <code>priority</code> (an int),
|
||||||
|
@ -1758,7 +1758,7 @@ context for use on a different thread. It is just fine for an application to hav
|
||||||
and some DNS-heavy applications will certainly want to have many even if the application uses
|
and some DNS-heavy applications will certainly want to have many even if the application uses
|
||||||
a single thread.</p>
|
a single thread.</p>
|
||||||
|
|
||||||
<p>See <a href="index.html#ContextInitial">above</a> for the method for creating and destroying
|
<p>See <a href="#ContextInitial">above</a> for the method for creating and destroying
|
||||||
contexts. When the context is used in the API for the first time and <code>set_from_os</code> is
|
contexts. When the context is used in the API for the first time and <code>set_from_os</code> is
|
||||||
<code>true</code>, the API starts replacing some of the values with values from the OS, such as
|
<code>true</code>, the API starts replacing some of the values with values from the OS, such as
|
||||||
those that would be found in res_query(3), /etc/resolv.conf, and so on, then proceeds with the new
|
those that would be found in res_query(3), /etc/resolv.conf, and so on, then proceeds with the new
|
||||||
|
@ -1805,7 +1805,7 @@ called when any context is changed. Such changes might be from automatic
|
||||||
changes from the API (such as changes to /etc/resolv.conf), or might be from any of the
|
changes from the API (such as changes to /etc/resolv.conf), or might be from any of the
|
||||||
API functions in this section being called. The second argument to the callback function
|
API functions in this section being called. The second argument to the callback function
|
||||||
specifies which of the context changed; the context codes are listed
|
specifies which of the context changed; the context codes are listed
|
||||||
<a href="index.html#ContextCodes">later in this document</a>.</p>
|
<a href="#ContextCodes">later in this document</a>.</p>
|
||||||
|
|
||||||
<h2>8.3 Contexts for Basic Resolution</h2>
|
<h2>8.3 Contexts for Basic Resolution</h2>
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,31 @@
|
||||||
|
# -*- Autoconf -*-
|
||||||
|
# Process this file with autoconf to produce a configure script.
|
||||||
|
# @configure_input@
|
||||||
|
#
|
||||||
|
|
||||||
|
AC_PREREQ([2.68])
|
||||||
|
AC_INIT([getdns], [0.320], [melinda.shore@nomountain.net])
|
||||||
|
# AM_INIT_AUTOMAKE([getkey], [0.320])
|
||||||
|
AC_CONFIG_SRCDIR([configure.ac])
|
||||||
|
|
||||||
|
# Checks for programs.
|
||||||
|
AC_PROG_CC
|
||||||
|
|
||||||
|
# Checks for libraries.
|
||||||
|
AC_CHECK_LIB([event_core], [event_base_new])
|
||||||
|
AC_CHECK_LIB([getdns], [getdns_context_create])
|
||||||
|
AC_CHECK_LIB([ldns], [ldns_dname_new_frm_str])
|
||||||
|
|
||||||
|
# Checks for header files.
|
||||||
|
AC_CHECK_HEADERS([inttypes.h netinet/in.h stdint.h stdlib.h string.h])
|
||||||
|
|
||||||
|
# Checks for typedefs, structures, and compiler characteristics.
|
||||||
|
AC_HEADER_STDBOOL
|
||||||
|
AC_TYPE_SIZE_T
|
||||||
|
AC_TYPE_UINT16_T
|
||||||
|
AC_TYPE_UINT32_T
|
||||||
|
AC_TYPE_UINT64_T
|
||||||
|
AC_TYPE_UINT8_T
|
||||||
|
|
||||||
|
AC_CONFIG_FILES([Makefile common/Makefile])
|
||||||
|
AC_OUTPUT
|
376
src/src/missing
376
src/src/missing
|
@ -1,376 +0,0 @@
|
||||||
#! /bin/sh
|
|
||||||
# Common stub for a few missing GNU programs while installing.
|
|
||||||
|
|
||||||
scriptversion=2009-04-28.21; # UTC
|
|
||||||
|
|
||||||
# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006,
|
|
||||||
# 2008, 2009 Free Software Foundation, Inc.
|
|
||||||
# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
|
|
||||||
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation; either version 2, or (at your option)
|
|
||||||
# any later version.
|
|
||||||
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
|
|
||||||
# As a special exception to the GNU General Public License, if you
|
|
||||||
# distribute this file as part of a program that contains a
|
|
||||||
# configuration script generated by Autoconf, you may include it under
|
|
||||||
# the same distribution terms that you use for the rest of that program.
|
|
||||||
|
|
||||||
if test $# -eq 0; then
|
|
||||||
echo 1>&2 "Try \`$0 --help' for more information"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
run=:
|
|
||||||
sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
|
|
||||||
sed_minuso='s/.* -o \([^ ]*\).*/\1/p'
|
|
||||||
|
|
||||||
# In the cases where this matters, `missing' is being run in the
|
|
||||||
# srcdir already.
|
|
||||||
if test -f configure.ac; then
|
|
||||||
configure_ac=configure.ac
|
|
||||||
else
|
|
||||||
configure_ac=configure.in
|
|
||||||
fi
|
|
||||||
|
|
||||||
msg="missing on your system"
|
|
||||||
|
|
||||||
case $1 in
|
|
||||||
--run)
|
|
||||||
# Try to run requested program, and just exit if it succeeds.
|
|
||||||
run=
|
|
||||||
shift
|
|
||||||
"$@" && exit 0
|
|
||||||
# Exit code 63 means version mismatch. This often happens
|
|
||||||
# when the user try to use an ancient version of a tool on
|
|
||||||
# a file that requires a minimum version. In this case we
|
|
||||||
# we should proceed has if the program had been absent, or
|
|
||||||
# if --run hadn't been passed.
|
|
||||||
if test $? = 63; then
|
|
||||||
run=:
|
|
||||||
msg="probably too old"
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
|
|
||||||
-h|--h|--he|--hel|--help)
|
|
||||||
echo "\
|
|
||||||
$0 [OPTION]... PROGRAM [ARGUMENT]...
|
|
||||||
|
|
||||||
Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
|
|
||||||
error status if there is no known handling for PROGRAM.
|
|
||||||
|
|
||||||
Options:
|
|
||||||
-h, --help display this help and exit
|
|
||||||
-v, --version output version information and exit
|
|
||||||
--run try to run the given command, and emulate it if it fails
|
|
||||||
|
|
||||||
Supported PROGRAM values:
|
|
||||||
aclocal touch file \`aclocal.m4'
|
|
||||||
autoconf touch file \`configure'
|
|
||||||
autoheader touch file \`config.h.in'
|
|
||||||
autom4te touch the output file, or create a stub one
|
|
||||||
automake touch all \`Makefile.in' files
|
|
||||||
bison create \`y.tab.[ch]', if possible, from existing .[ch]
|
|
||||||
flex create \`lex.yy.c', if possible, from existing .c
|
|
||||||
help2man touch the output file
|
|
||||||
lex create \`lex.yy.c', if possible, from existing .c
|
|
||||||
makeinfo touch the output file
|
|
||||||
tar try tar, gnutar, gtar, then tar without non-portable flags
|
|
||||||
yacc create \`y.tab.[ch]', if possible, from existing .[ch]
|
|
||||||
|
|
||||||
Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and
|
|
||||||
\`g' are ignored when checking the name.
|
|
||||||
|
|
||||||
Send bug reports to <bug-automake@gnu.org>."
|
|
||||||
exit $?
|
|
||||||
;;
|
|
||||||
|
|
||||||
-v|--v|--ve|--ver|--vers|--versi|--versio|--version)
|
|
||||||
echo "missing $scriptversion (GNU Automake)"
|
|
||||||
exit $?
|
|
||||||
;;
|
|
||||||
|
|
||||||
-*)
|
|
||||||
echo 1>&2 "$0: Unknown \`$1' option"
|
|
||||||
echo 1>&2 "Try \`$0 --help' for more information"
|
|
||||||
exit 1
|
|
||||||
;;
|
|
||||||
|
|
||||||
esac
|
|
||||||
|
|
||||||
# normalize program name to check for.
|
|
||||||
program=`echo "$1" | sed '
|
|
||||||
s/^gnu-//; t
|
|
||||||
s/^gnu//; t
|
|
||||||
s/^g//; t'`
|
|
||||||
|
|
||||||
# Now exit if we have it, but it failed. Also exit now if we
|
|
||||||
# don't have it and --version was passed (most likely to detect
|
|
||||||
# the program). This is about non-GNU programs, so use $1 not
|
|
||||||
# $program.
|
|
||||||
case $1 in
|
|
||||||
lex*|yacc*)
|
|
||||||
# Not GNU programs, they don't have --version.
|
|
||||||
;;
|
|
||||||
|
|
||||||
tar*)
|
|
||||||
if test -n "$run"; then
|
|
||||||
echo 1>&2 "ERROR: \`tar' requires --run"
|
|
||||||
exit 1
|
|
||||||
elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
|
|
||||||
*)
|
|
||||||
if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
|
|
||||||
# We have it, but it failed.
|
|
||||||
exit 1
|
|
||||||
elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
|
|
||||||
# Could not run --version or --help. This is probably someone
|
|
||||||
# running `$TOOL --version' or `$TOOL --help' to check whether
|
|
||||||
# $TOOL exists and not knowing $TOOL uses missing.
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
# If it does not exist, or fails to run (possibly an outdated version),
|
|
||||||
# try to emulate it.
|
|
||||||
case $program in
|
|
||||||
aclocal*)
|
|
||||||
echo 1>&2 "\
|
|
||||||
WARNING: \`$1' is $msg. You should only need it if
|
|
||||||
you modified \`acinclude.m4' or \`${configure_ac}'. You might want
|
|
||||||
to install the \`Automake' and \`Perl' packages. Grab them from
|
|
||||||
any GNU archive site."
|
|
||||||
touch aclocal.m4
|
|
||||||
;;
|
|
||||||
|
|
||||||
autoconf*)
|
|
||||||
echo 1>&2 "\
|
|
||||||
WARNING: \`$1' is $msg. You should only need it if
|
|
||||||
you modified \`${configure_ac}'. You might want to install the
|
|
||||||
\`Autoconf' and \`GNU m4' packages. Grab them from any GNU
|
|
||||||
archive site."
|
|
||||||
touch configure
|
|
||||||
;;
|
|
||||||
|
|
||||||
autoheader*)
|
|
||||||
echo 1>&2 "\
|
|
||||||
WARNING: \`$1' is $msg. You should only need it if
|
|
||||||
you modified \`acconfig.h' or \`${configure_ac}'. You might want
|
|
||||||
to install the \`Autoconf' and \`GNU m4' packages. Grab them
|
|
||||||
from any GNU archive site."
|
|
||||||
files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
|
|
||||||
test -z "$files" && files="config.h"
|
|
||||||
touch_files=
|
|
||||||
for f in $files; do
|
|
||||||
case $f in
|
|
||||||
*:*) touch_files="$touch_files "`echo "$f" |
|
|
||||||
sed -e 's/^[^:]*://' -e 's/:.*//'`;;
|
|
||||||
*) touch_files="$touch_files $f.in";;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
touch $touch_files
|
|
||||||
;;
|
|
||||||
|
|
||||||
automake*)
|
|
||||||
echo 1>&2 "\
|
|
||||||
WARNING: \`$1' is $msg. You should only need it if
|
|
||||||
you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
|
|
||||||
You might want to install the \`Automake' and \`Perl' packages.
|
|
||||||
Grab them from any GNU archive site."
|
|
||||||
find . -type f -name Makefile.am -print |
|
|
||||||
sed 's/\.am$/.in/' |
|
|
||||||
while read f; do touch "$f"; done
|
|
||||||
;;
|
|
||||||
|
|
||||||
autom4te*)
|
|
||||||
echo 1>&2 "\
|
|
||||||
WARNING: \`$1' is needed, but is $msg.
|
|
||||||
You might have modified some files without having the
|
|
||||||
proper tools for further handling them.
|
|
||||||
You can get \`$1' as part of \`Autoconf' from any GNU
|
|
||||||
archive site."
|
|
||||||
|
|
||||||
file=`echo "$*" | sed -n "$sed_output"`
|
|
||||||
test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
|
|
||||||
if test -f "$file"; then
|
|
||||||
touch $file
|
|
||||||
else
|
|
||||||
test -z "$file" || exec >$file
|
|
||||||
echo "#! /bin/sh"
|
|
||||||
echo "# Created by GNU Automake missing as a replacement of"
|
|
||||||
echo "# $ $@"
|
|
||||||
echo "exit 0"
|
|
||||||
chmod +x $file
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
|
|
||||||
bison*|yacc*)
|
|
||||||
echo 1>&2 "\
|
|
||||||
WARNING: \`$1' $msg. You should only need it if
|
|
||||||
you modified a \`.y' file. You may need the \`Bison' package
|
|
||||||
in order for those modifications to take effect. You can get
|
|
||||||
\`Bison' from any GNU archive site."
|
|
||||||
rm -f y.tab.c y.tab.h
|
|
||||||
if test $# -ne 1; then
|
|
||||||
eval LASTARG="\${$#}"
|
|
||||||
case $LASTARG in
|
|
||||||
*.y)
|
|
||||||
SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
|
|
||||||
if test -f "$SRCFILE"; then
|
|
||||||
cp "$SRCFILE" y.tab.c
|
|
||||||
fi
|
|
||||||
SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
|
|
||||||
if test -f "$SRCFILE"; then
|
|
||||||
cp "$SRCFILE" y.tab.h
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
fi
|
|
||||||
if test ! -f y.tab.h; then
|
|
||||||
echo >y.tab.h
|
|
||||||
fi
|
|
||||||
if test ! -f y.tab.c; then
|
|
||||||
echo 'main() { return 0; }' >y.tab.c
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
|
|
||||||
lex*|flex*)
|
|
||||||
echo 1>&2 "\
|
|
||||||
WARNING: \`$1' is $msg. You should only need it if
|
|
||||||
you modified a \`.l' file. You may need the \`Flex' package
|
|
||||||
in order for those modifications to take effect. You can get
|
|
||||||
\`Flex' from any GNU archive site."
|
|
||||||
rm -f lex.yy.c
|
|
||||||
if test $# -ne 1; then
|
|
||||||
eval LASTARG="\${$#}"
|
|
||||||
case $LASTARG in
|
|
||||||
*.l)
|
|
||||||
SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
|
|
||||||
if test -f "$SRCFILE"; then
|
|
||||||
cp "$SRCFILE" lex.yy.c
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
fi
|
|
||||||
if test ! -f lex.yy.c; then
|
|
||||||
echo 'main() { return 0; }' >lex.yy.c
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
|
|
||||||
help2man*)
|
|
||||||
echo 1>&2 "\
|
|
||||||
WARNING: \`$1' is $msg. You should only need it if
|
|
||||||
you modified a dependency of a manual page. You may need the
|
|
||||||
\`Help2man' package in order for those modifications to take
|
|
||||||
effect. You can get \`Help2man' from any GNU archive site."
|
|
||||||
|
|
||||||
file=`echo "$*" | sed -n "$sed_output"`
|
|
||||||
test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
|
|
||||||
if test -f "$file"; then
|
|
||||||
touch $file
|
|
||||||
else
|
|
||||||
test -z "$file" || exec >$file
|
|
||||||
echo ".ab help2man is required to generate this page"
|
|
||||||
exit $?
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
|
|
||||||
makeinfo*)
|
|
||||||
echo 1>&2 "\
|
|
||||||
WARNING: \`$1' is $msg. You should only need it if
|
|
||||||
you modified a \`.texi' or \`.texinfo' file, or any other file
|
|
||||||
indirectly affecting the aspect of the manual. The spurious
|
|
||||||
call might also be the consequence of using a buggy \`make' (AIX,
|
|
||||||
DU, IRIX). You might want to install the \`Texinfo' package or
|
|
||||||
the \`GNU make' package. Grab either from any GNU archive site."
|
|
||||||
# The file to touch is that specified with -o ...
|
|
||||||
file=`echo "$*" | sed -n "$sed_output"`
|
|
||||||
test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
|
|
||||||
if test -z "$file"; then
|
|
||||||
# ... or it is the one specified with @setfilename ...
|
|
||||||
infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
|
|
||||||
file=`sed -n '
|
|
||||||
/^@setfilename/{
|
|
||||||
s/.* \([^ ]*\) *$/\1/
|
|
||||||
p
|
|
||||||
q
|
|
||||||
}' $infile`
|
|
||||||
# ... or it is derived from the source name (dir/f.texi becomes f.info)
|
|
||||||
test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
|
|
||||||
fi
|
|
||||||
# If the file does not exist, the user really needs makeinfo;
|
|
||||||
# let's fail without touching anything.
|
|
||||||
test -f $file || exit 1
|
|
||||||
touch $file
|
|
||||||
;;
|
|
||||||
|
|
||||||
tar*)
|
|
||||||
shift
|
|
||||||
|
|
||||||
# We have already tried tar in the generic part.
|
|
||||||
# Look for gnutar/gtar before invocation to avoid ugly error
|
|
||||||
# messages.
|
|
||||||
if (gnutar --version > /dev/null 2>&1); then
|
|
||||||
gnutar "$@" && exit 0
|
|
||||||
fi
|
|
||||||
if (gtar --version > /dev/null 2>&1); then
|
|
||||||
gtar "$@" && exit 0
|
|
||||||
fi
|
|
||||||
firstarg="$1"
|
|
||||||
if shift; then
|
|
||||||
case $firstarg in
|
|
||||||
*o*)
|
|
||||||
firstarg=`echo "$firstarg" | sed s/o//`
|
|
||||||
tar "$firstarg" "$@" && exit 0
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
case $firstarg in
|
|
||||||
*h*)
|
|
||||||
firstarg=`echo "$firstarg" | sed s/h//`
|
|
||||||
tar "$firstarg" "$@" && exit 0
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo 1>&2 "\
|
|
||||||
WARNING: I can't seem to be able to run \`tar' with the given arguments.
|
|
||||||
You may want to install GNU tar or Free paxutils, or check the
|
|
||||||
command line arguments."
|
|
||||||
exit 1
|
|
||||||
;;
|
|
||||||
|
|
||||||
*)
|
|
||||||
echo 1>&2 "\
|
|
||||||
WARNING: \`$1' is needed, and is $msg.
|
|
||||||
You might have modified some files without having the
|
|
||||||
proper tools for further handling them. Check the \`README' file,
|
|
||||||
it often tells you about the needed prerequisites for installing
|
|
||||||
this package. You may also peek at any GNU archive site, in case
|
|
||||||
some other package would contain this missing \`$1' program."
|
|
||||||
exit 1
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
exit 0
|
|
||||||
|
|
||||||
# Local variables:
|
|
||||||
# eval: (add-hook 'write-file-hooks 'time-stamp)
|
|
||||||
# time-stamp-start: "scriptversion="
|
|
||||||
# time-stamp-format: "%:y-%02m-%02d.%02H"
|
|
||||||
# time-stamp-time-zone: "UTC"
|
|
||||||
# time-stamp-end: "; # UTC"
|
|
||||||
# End:
|
|
Loading…
Reference in New Issue