Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
BIND
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
605
Issues
605
List
Boards
Labels
Service Desk
Milestones
Merge Requests
111
Merge Requests
111
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Incidents
Environments
Packages & Registries
Packages & Registries
Container Registry
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
ISC Open Source Projects
BIND
Commits
307d2084
Commit
307d2084
authored
Sep 01, 2009
by
Tatuya JINMEI 神明達哉
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
2660. [func] Add a new set of DNS libraries for non-BIND9
applications. See README.libdns. [RT #19369]
parent
ad671240
Changes
193
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
193 changed files
with
18163 additions
and
1333 deletions
+18163
-1333
CHANGES
CHANGES
+3
-0
Makefile.in
Makefile.in
+4
-4
README
README
+1
-1
README.libdns
README.libdns
+275
-0
bin/check/Makefile.in
bin/check/Makefile.in
+2
-2
bin/check/check-tool.c
bin/check/check-tool.c
+2
-3
bin/confgen/Makefile.in
bin/confgen/Makefile.in
+2
-2
bin/dig/Makefile.in
bin/dig/Makefile.in
+2
-2
bin/dig/dighost.c
bin/dig/dighost.c
+7
-11
bin/dnssec/Makefile.in
bin/dnssec/Makefile.in
+2
-2
bin/dnssec/dnssec-dsfromkey.c
bin/dnssec/dnssec-dsfromkey.c
+2
-2
bin/dnssec/dnssec-keyfromlabel.c
bin/dnssec/dnssec-keyfromlabel.c
+2
-2
bin/dnssec/dnssec-keygen.c
bin/dnssec/dnssec-keygen.c
+2
-2
bin/dnssec/dnssec-signzone.c
bin/dnssec/dnssec-signzone.c
+4
-4
bin/named/Makefile.in
bin/named/Makefile.in
+2
-2
bin/named/config.c
bin/named/config.c
+2
-2
bin/named/lwdgabn.c
bin/named/lwdgabn.c
+2
-2
bin/named/lwdgrbn.c
bin/named/lwdgrbn.c
+2
-2
bin/named/lwresd.c
bin/named/lwresd.c
+2
-3
bin/named/server.c
bin/named/server.c
+22
-27
bin/named/tkeyconf.c
bin/named/tkeyconf.c
+5
-9
bin/named/tsigconf.c
bin/named/tsigconf.c
+2
-2
bin/named/unix/Makefile.in
bin/named/unix/Makefile.in
+2
-2
bin/named/zoneconf.c
bin/named/zoneconf.c
+3
-4
bin/nsupdate/Makefile.in
bin/nsupdate/Makefile.in
+2
-2
bin/nsupdate/nsupdate.c
bin/nsupdate/nsupdate.c
+8
-14
bin/rndc/Makefile.in
bin/rndc/Makefile.in
+2
-2
bin/tests/Makefile.in
bin/tests/Makefile.in
+2
-2
bin/tests/adb_test.c
bin/tests/adb_test.c
+2
-3
bin/tests/byname_test.c
bin/tests/byname_test.c
+2
-2
bin/tests/db/Makefile.in
bin/tests/db/Makefile.in
+2
-2
bin/tests/db/t_db.c
bin/tests/db/t_db.c
+15
-15
bin/tests/db_test.c
bin/tests/db_test.c
+5
-9
bin/tests/dst/Makefile.in
bin/tests/dst/Makefile.in
+2
-2
bin/tests/dst/dst_test.c
bin/tests/dst/dst_test.c
+3
-3
bin/tests/dst/gsstest.c
bin/tests/dst/gsstest.c
+4
-4
bin/tests/dst/t_dst.c
bin/tests/dst/t_dst.c
+4
-4
bin/tests/master/Makefile.in
bin/tests/master/Makefile.in
+2
-2
bin/tests/master/t_master.c
bin/tests/master/t_master.c
+2
-2
bin/tests/master_test.c
bin/tests/master_test.c
+2
-2
bin/tests/mem/Makefile.in
bin/tests/mem/Makefile.in
+2
-2
bin/tests/name_test.c
bin/tests/name_test.c
+5
-6
bin/tests/names/Makefile.in
bin/tests/names/Makefile.in
+2
-2
bin/tests/names/t_names.c
bin/tests/names/t_names.c
+13
-17
bin/tests/net/Makefile.in
bin/tests/net/Makefile.in
+2
-2
bin/tests/nsecify.c
bin/tests/nsecify.c
+2
-2
bin/tests/rbt/Makefile.in
bin/tests/rbt/Makefile.in
+2
-2
bin/tests/rbt/t_rbt.c
bin/tests/rbt/t_rbt.c
+5
-5
bin/tests/rbt_test.c
bin/tests/rbt_test.c
+2
-3
bin/tests/sig0_test.c
bin/tests/sig0_test.c
+3
-4
bin/tests/sockaddr/Makefile.in
bin/tests/sockaddr/Makefile.in
+2
-2
bin/tests/system/lwresd/Makefile.in
bin/tests/system/lwresd/Makefile.in
+2
-2
bin/tests/system/tkey/Makefile.in
bin/tests/system/tkey/Makefile.in
+2
-2
bin/tests/system/tkey/keycreate.c
bin/tests/system/tkey/keycreate.c
+3
-3
bin/tests/tasks/Makefile.in
bin/tests/tasks/Makefile.in
+2
-2
bin/tests/timers/Makefile.in
bin/tests/timers/Makefile.in
+2
-2
bin/tests/zone_test.c
bin/tests/zone_test.c
+3
-3
bin/tools/Makefile.in
bin/tools/Makefile.in
+2
-2
config.h.in
config.h.in
+7
-1
configure.in
configure.in
+116
-3
contrib/dbus/dbus_mgr.c
contrib/dbus/dbus_mgr.c
+3
-3
contrib/dlz/bin/dlzbdb/Makefile.in
contrib/dlz/bin/dlzbdb/Makefile.in
+3
-3
contrib/sdb/bdb/zone2bdb.c
contrib/sdb/bdb/zone2bdb.c
+2
-2
contrib/sdb/ldap/zone2ldap.c
contrib/sdb/ldap/zone2ldap.c
+1
-1
contrib/sdb/pgsql/zonetodb.c
contrib/sdb/pgsql/zonetodb.c
+2
-2
contrib/sdb/sqlite/zone2sqlite.c
contrib/sdb/sqlite/zone2sqlite.c
+2
-2
lib/bind9/Makefile.in
lib/bind9/Makefile.in
+2
-2
lib/bind9/check.c
lib/bind9/check.c
+17
-17
lib/dns/Makefile.in
lib/dns/Makefile.in
+4
-4
lib/dns/byaddr.c
lib/dns/byaddr.c
+23
-22
lib/dns/cache.c
lib/dns/cache.c
+7
-1
lib/dns/client.c
lib/dns/client.c
+2994
-0
lib/dns/db.c
lib/dns/db.c
+11
-1
lib/dns/dispatch.c
lib/dns/dispatch.c
+71
-14
lib/dns/dst_api.c
lib/dns/dst_api.c
+28
-6
lib/dns/ecdb.c
lib/dns/ecdb.c
+797
-0
lib/dns/forward.c
lib/dns/forward.c
+17
-1
lib/dns/gssapictx.c
lib/dns/gssapictx.c
+2
-2
lib/dns/include/dns/client.h
lib/dns/include/dns/client.h
+621
-0
lib/dns/include/dns/ecdb.h
lib/dns/include/dns/ecdb.h
+52
-0
lib/dns/include/dns/events.h
lib/dns/include/dns/events.h
+3
-1
lib/dns/include/dns/forward.h
lib/dns/include/dns/forward.h
+16
-1
lib/dns/include/dns/lib.h
lib/dns/include/dns/lib.h
+15
-1
lib/dns/include/dns/message.h
lib/dns/include/dns/message.h
+2
-3
lib/dns/include/dns/name.h
lib/dns/include/dns/name.h
+25
-12
lib/dns/include/dns/rdata.h
lib/dns/include/dns/rdata.h
+17
-1
lib/dns/include/dns/resolver.h
lib/dns/include/dns/resolver.h
+2
-1
lib/dns/include/dns/tsec.h
lib/dns/include/dns/tsec.h
+135
-0
lib/dns/include/dns/types.h
lib/dns/include/dns/types.h
+6
-1
lib/dns/lib.c
lib/dns/lib.c
+105
-2
lib/dns/master.c
lib/dns/master.c
+2
-2
lib/dns/masterdump.c
lib/dns/masterdump.c
+5
-1
lib/dns/name.c
lib/dns/name.c
+27
-2
lib/dns/peer.c
lib/dns/peer.c
+2
-2
lib/dns/rbtdb.c
lib/dns/rbtdb.c
+62
-1
lib/dns/rdata.c
lib/dns/rdata.c
+92
-1
lib/dns/request.c
lib/dns/request.c
+3
-2
lib/dns/resolver.c
lib/dns/resolver.c
+5
-1
lib/dns/sdb.c
lib/dns/sdb.c
+2
-2
lib/dns/sdlz.c
lib/dns/sdlz.c
+2
-2
lib/dns/tkey.c
lib/dns/tkey.c
+2
-3
lib/dns/tsec.c
lib/dns/tsec.c
+159
-0
lib/dns/view.c
lib/dns/view.c
+55
-1
lib/export/Makefile.in
lib/export/Makefile.in
+27
-0
lib/export/dns/Makefile.in
lib/export/dns/Makefile.in
+172
-0
lib/export/dns/include/Makefile.in
lib/export/dns/include/Makefile.in
+23
-0
lib/export/dns/include/dns/Makefile.in
lib/export/dns/include/dns/Makefile.in
+56
-0
lib/export/dns/include/dst/Makefile.in
lib/export/dns/include/dst/Makefile.in
+36
-0
lib/export/irs/Makefile.in
lib/export/irs/Makefile.in
+85
-0
lib/export/irs/include/Makefile.in
lib/export/irs/include/Makefile.in
+24
-0
lib/export/irs/include/irs/Makefile.in
lib/export/irs/include/irs/Makefile.in
+46
-0
lib/export/isc/Makefile.in
lib/export/isc/Makefile.in
+136
-0
lib/export/isc/include/Makefile.in
lib/export/isc/include/Makefile.in
+24
-0
lib/export/isc/include/isc/Makefile.in
lib/export/isc/include/isc/Makefile.in
+63
-0
lib/export/isc/nls/Makefile.in
lib/export/isc/nls/Makefile.in
+35
-0
lib/export/isc/nothreads/Makefile.in
lib/export/isc/nothreads/Makefile.in
+38
-0
lib/export/isc/nothreads/include/Makefile.in
lib/export/isc/nothreads/include/Makefile.in
+24
-0
lib/export/isc/nothreads/include/isc/Makefile.in
lib/export/isc/nothreads/include/isc/Makefile.in
+36
-0
lib/export/isc/pthreads/Makefile.in
lib/export/isc/pthreads/Makefile.in
+38
-0
lib/export/isc/pthreads/include/Makefile.in
lib/export/isc/pthreads/include/Makefile.in
+24
-0
lib/export/isc/pthreads/include/isc/Makefile.in
lib/export/isc/pthreads/include/isc/Makefile.in
+36
-0
lib/export/isc/unix/Makefile.in
lib/export/isc/unix/Makefile.in
+57
-0
lib/export/isc/unix/include/Makefile.in
lib/export/isc/unix/include/Makefile.in
+24
-0
lib/export/isc/unix/include/isc/Makefile.in
lib/export/isc/unix/include/isc/Makefile.in
+37
-0
lib/export/isccfg/Makefile.in
lib/export/isccfg/Makefile.in
+82
-0
lib/export/isccfg/include/Makefile.in
lib/export/isccfg/include/Makefile.in
+24
-0
lib/export/isccfg/include/isccfg/Makefile.in
lib/export/isccfg/include/isccfg/Makefile.in
+42
-0
lib/export/samples/Makefile-postinstall.in
lib/export/samples/Makefile-postinstall.in
+78
-0
lib/export/samples/Makefile.in
lib/export/samples/Makefile.in
+96
-0
lib/export/samples/nsprobe.c
lib/export/samples/nsprobe.c
+1215
-0
lib/export/samples/sample-async.c
lib/export/samples/sample-async.c
+397
-0
lib/export/samples/sample-gai.c
lib/export/samples/sample-gai.c
+75
-0
lib/export/samples/sample-request.c
lib/export/samples/sample-request.c
+258
-0
lib/export/samples/sample-update.c
lib/export/samples/sample-update.c
+749
-0
lib/export/samples/sample.c
lib/export/samples/sample.c
+373
-0
lib/irs/Makefile.in
lib/irs/Makefile.in
+80
-0
lib/irs/api
lib/irs/api
+3
-0
lib/irs/context.c
lib/irs/context.c
+399
-0
lib/irs/dnsconf.c
lib/irs/dnsconf.c
+272
-0
lib/irs/gai_strerror.c
lib/irs/gai_strerror.c
+92
-0
lib/irs/getaddrinfo.c
lib/irs/getaddrinfo.c
+1299
-0
lib/irs/getnameinfo.c
lib/irs/getnameinfo.c
+410
-0
lib/irs/include/Makefile.in
lib/irs/include/Makefile.in
+24
-0
lib/irs/include/irs/Makefile.in
lib/irs/include/irs/Makefile.in
+44
-0
lib/irs/include/irs/context.h
lib/irs/include/irs/context.h
+162
-0
lib/irs/include/irs/dnsconf.h
lib/irs/include/irs/dnsconf.h
+97
-0
lib/irs/include/irs/netdb.h.in
lib/irs/include/irs/netdb.h.in
+168
-0
lib/irs/include/irs/platform.h.in
lib/irs/include/irs/platform.h.in
+45
-0
lib/irs/include/irs/resconf.h
lib/irs/include/irs/resconf.h
+116
-0
lib/irs/include/irs/types.h
lib/irs/include/irs/types.h
+31
-0
lib/irs/include/irs/version.h
lib/irs/include/irs/version.h
+27
-0
lib/irs/resconf.c
lib/irs/resconf.c
+639
-0
lib/irs/version.c
lib/irs/version.c
+27
-0
lib/isc/Makefile.in
lib/isc/Makefile.in
+5
-3
lib/isc/app_api.c
lib/isc/app_api.c
+134
-0
lib/isc/hash.c
lib/isc/hash.c
+13
-3
lib/isc/include/isc/app.h
lib/isc/include/isc/app.h
+167
-4
lib/isc/include/isc/lib.h
lib/isc/include/isc/lib.h
+10
-1
lib/isc/include/isc/mem.h
lib/isc/include/isc/mem.h
+95
-3
lib/isc/include/isc/namespace.h
lib/isc/include/isc/namespace.h
+160
-0
lib/isc/include/isc/result.h
lib/isc/include/isc/result.h
+2
-1
lib/isc/include/isc/resultclass.h
lib/isc/include/isc/resultclass.h
+2
-1
lib/isc/include/isc/socket.h
lib/isc/include/isc/socket.h
+100
-2
lib/isc/include/isc/task.h
lib/isc/include/isc/task.h
+98
-2
lib/isc/include/isc/timer.h
lib/isc/include/isc/timer.h
+89
-2
lib/isc/include/isc/types.h
lib/isc/include/isc/types.h
+4
-1
lib/isc/lib.c
lib/isc/lib.c
+28
-4
lib/isc/mem.c
lib/isc/mem.c
+379
-160
lib/isc/mem_api.c
lib/isc/mem_api.c
+287
-0
lib/isc/nls/Makefile.in
lib/isc/nls/Makefile.in
+2
-2
lib/isc/nothreads/Makefile.in
lib/isc/nothreads/Makefile.in
+4
-4
lib/isc/pthreads/Makefile.in
lib/isc/pthreads/Makefile.in
+2
-2
lib/isc/socket_api.c
lib/isc/socket_api.c
+194
-0
lib/isc/task.c
lib/isc/task.c
+333
-157
lib/isc/task_api.c
lib/isc/task_api.c
+199
-0
lib/isc/task_p.h
lib/isc/task_p.h
+3
-3
lib/isc/timer.c
lib/isc/timer.c
+219
-102
lib/isc/timer_api.c
lib/isc/timer_api.c
+142
-0
lib/isc/timer_p.h
lib/isc/timer_p.h
+3
-3
lib/isc/unix/Makefile.in
lib/isc/unix/Makefile.in
+2
-2
lib/isc/unix/app.c
lib/isc/unix/app.c
+396
-126
lib/isc/unix/socket.c
lib/isc/unix/socket.c
+549
-316
lib/isc/unix/socket_p.h
lib/isc/unix/socket_p.h
+4
-3
lib/isc/win32/Makefile.in
lib/isc/win32/Makefile.in
+2
-2
lib/isc/win32/app.c
lib/isc/win32/app.c
+9
-9
lib/isc/win32/socket.c
lib/isc/win32/socket.c
+51
-50
lib/isccc/Makefile.in
lib/isccc/Makefile.in
+2
-2
lib/isccfg/Makefile.in
lib/isccfg/Makefile.in
+2
-2
lib/isccfg/aclconf.c
lib/isccfg/aclconf.c
+2
-2
lib/isccfg/dnsconf.c
lib/isccfg/dnsconf.c
+68
-0
lib/isccfg/include/isccfg/dnsconf.h
lib/isccfg/include/isccfg/dnsconf.h
+36
-0
lib/tests/Makefile.in
lib/tests/Makefile.in
+2
-2
make/rules.in
make/rules.in
+4
-2
No files found.
CHANGES
View file @
307d2084
2660. [func] Add a new set of DNS libraries for non-BIND9
applications. See README.libdns. [RT #19369]
2659. [doc] Clarify dnssec-keygen doc: key name must match zone
2659. [doc] Clarify dnssec-keygen doc: key name must match zone
name for DNSSEC keys. [RT #19938]
name for DNSSEC keys. [RT #19938]
...
...
Makefile.in
View file @
307d2084
...
@@ -13,7 +13,7 @@
...
@@ -13,7 +13,7 @@
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
# PERFORMANCE OF THIS SOFTWARE.
# $Id: Makefile.in,v 1.5
6 2009/06/25 17:06:42 each
Exp $
# $Id: Makefile.in,v 1.5
7 2009/09/01 00:22:24 jinmei
Exp $
srcdir
=
@srcdir@
srcdir
=
@srcdir@
VPATH
=
@srcdir@
VPATH
=
@srcdir@
...
@@ -21,7 +21,7 @@ top_srcdir = @top_srcdir@
...
@@ -21,7 +21,7 @@ top_srcdir = @top_srcdir@
@BIND9_VERSION@
@BIND9_VERSION@
SUBDIRS
=
make lib bin doc
SUBDIRS
=
make lib bin doc
@LIBEXPORT@
TARGETS
=
TARGETS
=
MANPAGES
=
isc-config.sh.1
MANPAGES
=
isc-config.sh.1
...
...
README
View file @
307d2084
...
@@ -66,11 +66,11 @@ BIND 9.7.0
...
@@ -66,11 +66,11 @@ BIND 9.7.0
- Smart signing: simplified tools for zone signing and key
- Smart signing: simplified tools for zone signing and key
maintenance
maintenance
- The "statistics-channels" option is now available on Windows
- The "statistics-channels" option is now available on Windows
- DNSSEC-aware libdns API
Planned but not complete in this alpha:
Planned but not complete in this alpha:
- Fully automatic signing of zones by "named"
- Fully automatic signing of zones by "named"
- DNSSEC-aware libdns API
- Improved PKCS#11 support, including Keyper support
- Improved PKCS#11 support, including Keyper support
BIND 9.6.0
BIND 9.6.0
...
...
README.libdns
0 → 100644
View file @
307d2084
BIND
-
9
DNS
Library
Support
This
version
of
BIND9
"exports"
its
internal
libraries
so
that
they
can
be
used
by
third
-
party
applications
more
easily
(
we
call
them
"export"
libraries
in
this
document
).
In
addition
to
all
major
DNS
-
related
APIs
BIND9
is
currently
using
,
the
export
libraries
provide
the
following
features
:
-
The
newly
created
"DNS client"
module
.
This
is
a
higher
level
API
that
provides
an
interface
to
name
resolution
,
single
DNS
transaction
with
a
particular
server
,
and
dynamic
update
.
Regarding
name
resolution
,
it
supports
advanced
features
such
as
DNSSEC
validation
and
caching
.
This
module
supports
both
synchronous
and
asynchronous
mode
.
-
The
new
"IRS"
(
Information
Retrieval
System
)
library
.
It
provides
an
interface
to
parse
the
traditional
resolv
.
conf
file
and
more
advanced
,
DNS
-
specific
configuration
file
for
the
rest
of
this
package
(
see
the
description
for
the
dns
.
conf
file
below
).
-
As
part
of
the
IRS
library
,
newly
implemented
standard
address
-
name
mapping
functions
,
getaddrinfo
()
and
getnameinfo
(),
are
provided
.
They
use
the
DNSSEC
-
aware
validating
resolver
backend
,
and
could
use
other
advanced
features
of
the
BIND9
libraries
such
as
caching
.
The
getaddrinfo
()
function
resolves
both
A
and
AAAA
RRs
concurrently
(
when
the
address
family
is
unspecified
).
-
An
experimental
framework
to
support
other
event
libraries
than
BIND9
's internal event task system.
* Prerequisite
GNU make is required to build the export libraries (other part of
BIND9 can still be built with other types of make). In the reminder
of this document, "make" means GNU make. Note that in some platforms
you may need to invoke a different command name than "make"
(e.g. "gmake") to indicate it'
s
GNU
make
.
*
Compilation
1.
./
configure
--
enable
-
exportlib
[
other
flags
]
2.
make
This
will
create
(
in
addition
to
usual
BIND9
programs
)
and
a
separate
set
of
libraries
under
the
lib
/
export
directory
.
For
example
,
lib
/
export
/
dns
/
libdns
.
a
is
the
archive
file
of
the
export
version
of
the
BIND9
DNS
library
.
Sample
application
programs
using
the
libraries
will
also
be
built
under
the
lib
/
export
/
samples
directory
(
see
below
).
*
Installation
1.
cd
lib
/
export
2.
make
install
(
root
privilege
is
normally
required
)
(
make
install
at
the
top
directory
will
do
the
same
)
This
will
install
library
object
files
under
the
directory
specified
by
the
--
with
-
export
-
libdir
configure
option
(
default
:
EPREFIX
/
lib
/
bind9
),
and
header
files
under
the
directory
specified
by
the
--
with
-
export
-
installdir
configure
option
(
default
:
PREFIX
/
include
/
bind9
).
To
see
how
to
build
your
own
application
after
the
installation
,
see
lib
/
export
/
samples
/
Makefile
-
postinstall
.
in
*
Known
Defects
/
Restrictions
-
Currently
,
win32
is
not
supported
for
the
export
library
.
(
Normal
BIND9
application
can
be
built
as
before
).
-
The
"fixed"
RRset
order
is
not
(
currently
)
supported
in
the
export
library
.
If
you
want
to
use
"fixed"
RRset
order
for
,
e
.
g
.
named
while
still
building
the
export
library
even
without
the
fixed
order
support
,
build
them
separately
:
%
./
configure
--
enable
-
fixed
-
rrset
[
other
flags
,
but
not
--
enable
-
exportlib
]
%
make
(
this
doesn
't have to be make)
% ./configure --enable-exportlib [other flags, but not --enable-fixed-rrset]
% cd lib/export
% make
- The client module and the IRS library currently do not support
DNSSEC validation using DLV (the underlying modules can handle it,
but there is no tunable interface to enable the feature).
- RFC5011 is not supported in the validating stub resolver of the
export library. In fact, it is not clear whether it should: trust
anchors would be a system-wide configuration which would be managed
by an administrator, while the stub resolver will be used by
ordinary applications run by a normal user.
- Not all common /etc/resolv.conf options are supported in the IRS library.
The only available options in this version are "debug" and "ndots".
* The dns.conf File
The IRS library supports an "advanced" configuration file related to
the DNS library for configuration parameters that would be beyond the
capability of the resolv.conf file. Specifically, it is intended to
provide DNSSEC related configuration parameters.
By default the path to this configuration file is /etc/dns.conf.
This module is very experimental and the configuration syntax or
library interfaces may change in future versions. Currently, only the
'
trusted
-
keys
' statement is supported, whose syntax is the same as the
same name of statement for named.conf.
* Sample Applications
Some sample application programs using this API are provided for
reference. The following is a brief description of these
applications.
- sample: a simple stub resolver utility.
It sends a query of a given name (of a given optional RR type)
to a specified recursive server, and prints the result as a list of
RRs. It can also act as a validating stub resolver if a trust
anchor is given via a set of command line options.
Usage: sample [options] server_address hostname
Options and Arguments:
-t RRtype
specify the RR type of the query. The default is the A RR.
[-a algorithm] [-e] -k keyname -K keystring
specify a command-line DNS key to validate the answer. For
example, to specify the following DNSKEY of example.com:
example.com. 3600 IN DNSKEY 257 3 5 xxx
specify the options as follows:
-e -k example.com -K "xxx"
-e means that this key is a zone'
s
"key signing key"
(
as
known
as
"secure Entry point"
).
when
-
a
is
omitted
rsasha1
will
be
used
by
default
.
-
s
domain
:
alt_server_address
specify
a
separate
recursive
server
address
for
the
specific
"domain"
.
Example
:
-
s
example
.
com
:
2001
:
db8
::
1234
server_address
an
IP
(
v4
/
v6
)
address
of
the
recursive
server
to
which
queries
are
sent
.
hostname
the
domain
name
for
the
query
-
sample
-
async
:
a
simple
stub
resolver
,
working
asynchronously
.
Similar
to
"sample"
,
but
accepts
a
list
of
(
query
)
domain
names
as
a
separate
file
and
resolves
the
names
asynchronously
.
Usage
:
sample
-
async
[-
s
server_address
]
[-
t
RR_type
]
input_file
Options
and
Arguments
:
-
s
server_address
an
IPv4
address
of
the
recursive
server
to
which
queries
are
sent
.
(
IPv6
addresses
are
not
supported
in
this
implementation
)
-
t
RR_type
specify
the
RR
type
of
the
queries
.
The
default
is
the
A
RR
.
input_file
a
list
of
domain
names
to
be
resolved
.
each
line
consists
of
a
single
domain
name
.
Example
:
www
.
example
.
com
mx
.
examle
.
net
ns
.
xxx
.
example
-
sample
-
request
:
a
simple
DNS
transaction
client
.
It
sends
a
query
to
a
specified
server
,
and
prints
the
response
with
minimal
processing
.
It
doesn
't act as a "stub resolver": it stops
the processing once it gets any response from the server, whether
it'
s
a
referral
or
an
alias
(
CNAME
or
DNAME
)
that
would
require
further
queries
to
get
the
ultimate
answer
.
In
other
words
,
this
utility
acts
as
a
very
simplified
dig
.
Usage
:
sample
-
request
[-
t
RRtype
]
server_address
hostname
Options
and
Arguments
:
-
t
RRtype
specify
the
RR
type
of
the
queries
.
The
default
is
the
A
RR
.
server_address
an
IP
(
v4
/
v6
)
address
of
the
recursive
server
to
which
the
query
is
sent
.
hostname
the
domain
name
for
the
query
-
sample
-
gai
:
getaddrinfo
()
and
getnameinfo
()
test
code
.
This
is
a
test
program
to
check
getaddrinfo
()
and
getnameinfo
()
behavior
.
It
takes
a
host
name
as
an
argument
,
calls
getaddrinfo
()
with
the
given
host
name
,
and
calls
getnameinfo
()
with
the
resulting
IP
addresses
returned
by
getaddrinfo
().
If
the
dns
.
conf
file
exists
and
defines
a
trust
anchor
,
the
underlying
resolver
will
act
as
a
validating
resolver
,
and
getaddrinfo
()/
getnameinfo
()
will
fail
with
an
EAI_INSECUREDATA
error
when
DNSSEC
validation
fails
.
Usage
:
sample
-
gai
hostname
-
sample
-
update
:
a
simple
dynamic
update
client
program
It
accepts
a
single
update
command
as
a
command
-
line
argument
,
sends
an
update
request
message
to
the
authoritative
server
,
and
shows
the
response
from
the
server
.
In
other
words
,
this
is
a
simplified
nsupdate
.
Usage
:
sample
-
update
[
options
]
(
add
|
delete
)
"update data"
Options
and
Arguments
:
-
a
auth_server
An
IP
address
of
the
authoritative
server
that
has
authority
for
the
zone
containing
the
update
name
.
This
should
normally
be
the
primary
authoritative
server
that
accepts
dynamic
updates
.
It
can
also
be
a
secondary
server
that
is
configured
to
forward
update
requests
to
the
primary
server
.
-
k
keyfile
A
TSIG
key
file
to
secure
the
update
transaction
.
The
keyfile
format
is
the
same
as
that
for
the
nsupdate
utility
.
-
p
prerequisite
A
prerequisite
for
the
update
(
only
one
prerequisite
can
be
specified
).
The
prerequisite
format
is
the
same
as
that
is
accepted
by
the
nsupdate
utility
.
-
r
recursive_server
An
IP
address
of
a
recursive
server
that
this
utility
will
use
.
A
recursive
server
may
be
necessary
to
identify
the
authoritative
server
address
to
which
the
update
request
is
sent
.
-
z
zonename
The
domain
name
of
the
zone
that
contains
(
add
|
delete
)
Specify
the
type
of
update
operation
.
Either
"add"
or
"delete"
must
be
specified
.
"update data"
Specify
the
data
to
be
updated
.
A
typical
example
of
the
data
would
look
like
"name TTL RRtype RDATA"
.
Note
:
in
practice
,
either
-
a
or
-
r
must
be
specified
.
Others
can
be
optional
;
the
underlying
library
routine
tries
to
identify
the
appropriate
server
and
the
zone
name
for
the
update
.
Examples
:
assuming
the
primary
authoritative
server
of
the
dynamic
.
example
.
com
zone
has
an
IPv6
address
2001
:
db8
::
1234
,
+
sample
-
update
-
a
sample
-
update
-
k
Kxxx
.+
nnn
+
mmmm
.
key
add
"foo.dynamic.example.com 30 IN A 192.168.2.1"
adds
an
A
RR
for
foo
.
dynamic
.
example
.
com
using
the
given
key
.
+
sample
-
update
-
a
sample
-
update
-
k
Kxxx
.+
nnn
+
mmmm
.
key
delete
"foo.dynamic.example.com 30 IN A"
removes
all
A
RRs
for
foo
.
dynamic
.
example
.
com
using
the
given
key
.
+
sample
-
update
-
a
sample
-
update
-
k
Kxxx
.+
nnn
+
mmmm
.
key
delete
"foo.dynamic.example.com"
removes
all
RRs
for
foo
.
dynamic
.
example
.
com
using
the
given
key
.
-
nsprobe
:
domain
/
name
server
checker
in
terms
of
RFC4074
.
It
checks
a
set
of
domains
to
see
the
name
servers
of
the
domains
behave
correctly
in
terms
of
RFC4074
.
This
is
included
in
the
set
of
sample
programs
to
show
how
the
export
library
can
be
used
in
a
DNS
-
related
application
.
Usage
:
nsprobe
[-
d
]
[-
v
[-
v
...]]
[-
c
cache_address
]
[
input_file
]
Options
-
d
run
in
the
"debug"
mode
.
with
this
option
nsprobe
will
dump
every
RRs
it
receives
.
-
v
increase
verbosity
of
other
normal
log
messages
.
This
can
be
specified
multiple
times
-
c
cache_address
specify
an
IP
address
of
a
recursive
(
caching
)
name
server
.
nsprobe
uses
this
server
to
get
the
NS
RRset
of
each
domain
and
the
A
and
/
or
AAAA
RRsets
for
the
name
servers
.
The
default
value
is
127.0.0.1
.
input_file
a
file
name
containing
a
list
of
domain
(
zone
)
names
to
be
probed
.
when
omitted
the
standard
input
will
be
used
.
Each
line
of
the
input
file
specifies
a
single
domain
name
such
as
"example.com"
.
In
general
this
domain
name
must
be
the
apex
name
of
some
DNS
zone
(
unlike
normal
"host names"
such
as
"www.example.com"
).
nsprobe
first
identifies
the
NS
RRsets
for
the
given
domain
name
,
and
sends
A
and
AAAA
queries
to
these
servers
for
some
"widely used"
names
under
the
zone
;
specifically
,
adding
"www"
and
"ftp"
to
the
zone
name
.
*
Library
References
As
of
this
writing
,
there
is
no
formal
"manual"
of
the
libraries
,
except
this
document
,
header
files
(
some
of
them
provide
pretty
detailed
explanations
),
and
sample
application
programs
.
;
$
Id
:
README
.
libdns
,
v
1.2
2009
/
09
/
01
00
:
22
:
24
jinmei
Exp
$
bin/check/Makefile.in
View file @
307d2084
...
@@ -13,7 +13,7 @@
...
@@ -13,7 +13,7 @@
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
# PERFORMANCE OF THIS SOFTWARE.
# $Id: Makefile.in,v 1.3
2 2007/06/19 23:46:59 tbox
Exp $
# $Id: Makefile.in,v 1.3
3 2009/09/01 00:22:24 jinmei
Exp $
srcdir
=
@srcdir@
srcdir
=
@srcdir@
VPATH
=
@srcdir@
VPATH
=
@srcdir@
...
@@ -26,7 +26,7 @@ top_srcdir = @top_srcdir@
...
@@ -26,7 +26,7 @@ top_srcdir = @top_srcdir@
CINCLUDES
=
${BIND9_INCLUDES}
${DNS_INCLUDES}
${ISCCFG_INCLUDES}
\
CINCLUDES
=
${BIND9_INCLUDES}
${DNS_INCLUDES}
${ISCCFG_INCLUDES}
\
${ISC_INCLUDES}
${ISC_INCLUDES}
CDEFINES
=
-DNAMED_CONFFILE
=
\"
${sysconfdir}
/named.conf
\"
CDEFINES
=
-D
BIND9
-D
NAMED_CONFFILE
=
\"
${sysconfdir}
/named.conf
\"
CWARNINGS
=
CWARNINGS
=
DNSLIBS
=
../../lib/dns/libdns.@A@ @DNS_CRYPTO_LIBS@
DNSLIBS
=
../../lib/dns/libdns.@A@ @DNS_CRYPTO_LIBS@
...
...
bin/check/check-tool.c
View file @
307d2084
...
@@ -15,7 +15,7 @@
...
@@ -15,7 +15,7 @@
* PERFORMANCE OF THIS SOFTWARE.
* PERFORMANCE OF THIS SOFTWARE.
*/
*/
/* $Id: check-tool.c,v 1.3
8 2009/01/20 02:01:11 marka
Exp $ */
/* $Id: check-tool.c,v 1.3
9 2009/09/01 00:22:24 jinmei
Exp $ */
/*! \file */
/*! \file */
...
@@ -597,8 +597,7 @@ load_zone(isc_mem_t *mctx, const char *zonename, const char *filename,
...
@@ -597,8 +597,7 @@ load_zone(isc_mem_t *mctx, const char *zonename, const char *filename,
isc_buffer_add
(
&
buffer
,
strlen
(
zonename
));
isc_buffer_add
(
&
buffer
,
strlen
(
zonename
));
dns_fixedname_init
(
&
fixorigin
);
dns_fixedname_init
(
&
fixorigin
);
origin
=
dns_fixedname_name
(
&
fixorigin
);
origin
=
dns_fixedname_name
(
&
fixorigin
);
CHECK
(
dns_name_fromtext
(
origin
,
&
buffer
,
dns_rootname
,
CHECK
(
dns_name_fromtext
(
origin
,
&
buffer
,
dns_rootname
,
0
,
NULL
));
ISC_FALSE
,
NULL
));
CHECK
(
dns_zone_setorigin
(
zone
,
origin
));
CHECK
(
dns_zone_setorigin
(
zone
,
origin
));
CHECK
(
dns_zone_setdbtype
(
zone
,
1
,
(
const
char
*
const
*
)
dbtype
));
CHECK
(
dns_zone_setdbtype
(
zone
,
1
,
(
const
char
*
const
*
)
dbtype
));
CHECK
(
dns_zone_setfile2
(
zone
,
filename
,
fileformat
));
CHECK
(
dns_zone_setfile2
(
zone
,
filename
,
fileformat
));
...
...
bin/confgen/Makefile.in
View file @
307d2084
...
@@ -12,7 +12,7 @@
...
@@ -12,7 +12,7 @@
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
# PERFORMANCE OF THIS SOFTWARE.
# $Id: Makefile.in,v 1.
4 2009/07/14 22:54:56 each
Exp $
# $Id: Makefile.in,v 1.
5 2009/09/01 00:22:24 jinmei
Exp $
srcdir
=
@srcdir@
srcdir
=
@srcdir@
VPATH
=
@srcdir@
VPATH
=
@srcdir@
...
@@ -25,7 +25,7 @@ top_srcdir = @top_srcdir@
...
@@ -25,7 +25,7 @@ top_srcdir = @top_srcdir@
CINCLUDES
=
-I
${srcdir}
/include
${ISC_INCLUDES}
${ISCCC_INCLUDES}
\
CINCLUDES
=
-I
${srcdir}
/include
${ISC_INCLUDES}
${ISCCC_INCLUDES}
\
${ISCCFG_INCLUDES}
${DNS_INCLUDES}
${BIND9_INCLUDES}
${ISCCFG_INCLUDES}
${DNS_INCLUDES}
${BIND9_INCLUDES}
CDEFINES
=
CDEFINES
=
-DBIND9
CWARNINGS
=
CWARNINGS
=
ISCCFGLIBS
=
../../lib/isccfg/libisccfg.@A@
ISCCFGLIBS
=
../../lib/isccfg/libisccfg.@A@
...
...
bin/dig/Makefile.in
View file @
307d2084
...
@@ -13,7 +13,7 @@
...
@@ -13,7 +13,7 @@
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
# PERFORMANCE OF THIS SOFTWARE.
# $Id: Makefile.in,v 1.4
1 2007/06/19 23:46:59 tbox
Exp $
# $Id: Makefile.in,v 1.4
2 2009/09/01 00:22:24 jinmei
Exp $
srcdir
=
@srcdir@
srcdir
=
@srcdir@
VPATH
=
@srcdir@
VPATH
=
@srcdir@
...
@@ -26,7 +26,7 @@ top_srcdir = @top_srcdir@
...
@@ -26,7 +26,7 @@ top_srcdir = @top_srcdir@
CINCLUDES
=
-I
${srcdir}
/include
${DNS_INCLUDES}
${BIND9_INCLUDES}
\
CINCLUDES
=
-I
${srcdir}
/include
${DNS_INCLUDES}
${BIND9_INCLUDES}
\
${ISC_INCLUDES}
${LWRES_INCLUDES}
${ISC_INCLUDES}
${LWRES_INCLUDES}
CDEFINES
=
-DVERSION
=
\"
${VERSION}
\"
CDEFINES
=
-D
BIND9
-D
VERSION
=
\"
${VERSION}
\"
CWARNINGS
=
CWARNINGS
=
ISCCFGLIBS
=
../../lib/isccfg/libisccfg.@A@
ISCCFGLIBS
=
../../lib/isccfg/libisccfg.@A@
...
...
bin/dig/dighost.c
View file @
307d2084
...
@@ -15,7 +15,7 @@
...
@@ -15,7 +15,7 @@
* PERFORMANCE OF THIS SOFTWARE.
* PERFORMANCE OF THIS SOFTWARE.
*/
*/
/* $Id: dighost.c,v 1.32
3 2009/07/19 04:18:03 each
Exp $ */
/* $Id: dighost.c,v 1.32
4 2009/09/01 00:22:24 jinmei
Exp $ */
/*! \file
/*! \file
* \note
* \note
...
@@ -921,9 +921,7 @@ setup_text_key(void) {
...
@@ -921,9 +921,7 @@ setup_text_key(void) {
secretsize
=
isc_buffer_usedlength
(
&
secretbuf
);
secretsize
=
isc_buffer_usedlength
(
&
secretbuf
);
result
=
dns_name_fromtext
(
&
keyname
,
namebuf
,
result
=
dns_name_fromtext
(
&
keyname
,
namebuf
,
dns_rootname
,
0
,
namebuf
);
dns_rootname
,
ISC_FALSE
,
namebuf
);
if
(
result
!=
ISC_R_SUCCESS
)
if
(
result
!=
ISC_R_SUCCESS
)
goto
failure
;
goto
failure
;
...
@@ -1890,7 +1888,7 @@ setup_lookup(dig_lookup_t *lookup) {
...
@@ -1890,7 +1888,7 @@ setup_lookup(dig_lookup_t *lookup) {
isc_buffer_init
(
&
b
,
lookup
->
origin
->
origin
,
len
);
isc_buffer_init
(
&
b
,
lookup
->
origin
->
origin
,
len
);
isc_buffer_add
(
&
b
,
len
);
isc_buffer_add
(
&
b
,
len
);
result
=
dns_name_fromtext
(
lookup
->
oname
,
&
b
,
dns_rootname
,
result
=
dns_name_fromtext
(
lookup
->
oname
,
&
b
,
dns_rootname
,
ISC_FALSE
,
&
lookup
->
onamebuf
);
0
,
&
lookup
->
onamebuf
);
if
(
result
!=
ISC_R_SUCCESS
)
{
if
(
result
!=
ISC_R_SUCCESS
)
{
dns_message_puttempname
(
lookup
->
sendmsg
,
dns_message_puttempname
(
lookup
->
sendmsg
,
&
lookup
->
name
);
&
lookup
->
name
);
...
@@ -1907,7 +1905,7 @@ setup_lookup(dig_lookup_t *lookup) {
...
@@ -1907,7 +1905,7 @@ setup_lookup(dig_lookup_t *lookup) {
isc_buffer_init
(
&
b
,
lookup
->
textname
,
len
);
isc_buffer_init
(
&
b
,
lookup
->
textname
,
len
);
isc_buffer_add
(
&
b
,
len
);
isc_buffer_add
(
&
b
,
len
);
result
=
dns_name_fromtext
(
lookup
->
name
,
&
b
,
result
=
dns_name_fromtext
(
lookup
->
name
,
&
b
,
lookup
->
oname
,
ISC_FALSE
,
lookup
->
oname
,
0
,
&
lookup
->
namebuf
);
&
lookup
->
namebuf
);
}
}
if
(
result
!=
ISC_R_SUCCESS
)
{
if
(
result
!=
ISC_R_SUCCESS
)
{
...
@@ -1931,16 +1929,14 @@ setup_lookup(dig_lookup_t *lookup) {
...
@@ -1931,16 +1929,14 @@ setup_lookup(dig_lookup_t *lookup) {
isc_buffer_init
(
&
b
,
idn_textname
,
len
);
isc_buffer_init
(
&
b
,
idn_textname
,
len
);
isc_buffer_add
(
&
b
,
len
);
isc_buffer_add
(
&
b
,
len
);
result
=
dns_name_fromtext
(
lookup
->
name
,
&
b
,
result
=
dns_name_fromtext
(
lookup
->
name
,
&
b
,
dns_rootname
,
dns_rootname
,
0
,
ISC_FALSE
,
&
lookup
->
namebuf
);
&
lookup
->
namebuf
);
#else
#else
len
=
strlen
(
lookup
->
textname
);
len
=
strlen
(
lookup
->
textname
);
isc_buffer_init
(
&
b
,
lookup
->
textname
,
len
);
isc_buffer_init
(
&
b
,
lookup
->
textname
,
len
);
isc_buffer_add
(
&
b
,
len
);
isc_buffer_add
(
&
b
,
len
);
result
=
dns_name_fromtext
(
lookup
->
name
,
&
b
,
result
=
dns_name_fromtext
(
lookup
->
name
,
&
b
,
dns_rootname
,
dns_rootname
,
0
,
ISC_FALSE
,
&
lookup
->
namebuf
);
&
lookup
->
namebuf
);
#endif
#endif
}
}
...
@@ -4085,7 +4081,7 @@ nameFromString(const char *str, dns_name_t *p_ret) {
...
@@ -4085,7 +4081,7 @@ nameFromString(const char *str, dns_name_t *p_ret) {
dns_fixedname_init
(
&
fixedname
);
dns_fixedname_init
(
&
fixedname
);
result
=
dns_name_fromtext
(
dns_fixedname_name
(
&
fixedname
),
&
buffer
,
result
=
dns_name_fromtext
(
dns_fixedname_name
(
&
fixedname
),
&
buffer
,
dns_rootname
,
ISC_TRU
E
,
NULL
);
dns_rootname
,
DNS_NAME_DOWNCAS
E
,
NULL
);
check_result
(
result
,
"nameFromString"
);
check_result
(
result
,
"nameFromString"
);
if
(
dns_name_dynamic
(
p_ret
))
if
(
dns_name_dynamic
(
p_ret
))
...
...
bin/dnssec/Makefile.in
View file @
307d2084
...
@@ -13,7 +13,7 @@
...
@@ -13,7 +13,7 @@
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
# PERFORMANCE OF THIS SOFTWARE.
# $Id: Makefile.in,v 1.3
8 2009/07/19 04:18:04 each
Exp $
# $Id: Makefile.in,v 1.3
9 2009/09/01 00:22:24 jinmei
Exp $
srcdir
=
@srcdir@
srcdir
=
@srcdir@
VPATH
=
@srcdir@
VPATH
=
@srcdir@
...
@@ -25,7 +25,7 @@ top_srcdir = @top_srcdir@
...
@@ -25,7 +25,7 @@ top_srcdir = @top_srcdir@
CINCLUDES
=
${DNS_INCLUDES}
${ISC_INCLUDES}
CINCLUDES
=
${DNS_INCLUDES}
${ISC_INCLUDES}
CDEFINES
=
-DVERSION
=
\"
${VERSION}
\"
CDEFINES
=
-D
BIND9
-D
VERSION
=
\"
${VERSION}
\"
CWARNINGS
=
CWARNINGS
=