Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
26c012b906 | ||
|
|
f40558cd8a | ||
|
|
15569bf5ae | ||
|
|
b17c20f384 | ||
|
|
774e2ffe70 | ||
|
|
e1b4f5c86b | ||
|
|
453c4b422b | ||
|
|
973a0038ab | ||
|
|
b82d8787e3 | ||
|
|
f26db6690f | ||
|
|
eb5e77b3c7 | ||
|
|
1591b2c199 | ||
|
|
e495a603c2 | ||
|
|
90fa77918c | ||
|
|
a1e2a32cf1 | ||
|
|
9bfebae6f4 | ||
|
|
d761d85540 | ||
|
|
e308a317fb | ||
|
|
9f59aa57cb | ||
|
|
1fc48180b7 | ||
|
|
9ca8b38cfe | ||
|
|
9403df6344 | ||
|
|
cefd262e19 | ||
|
|
ca21c07bbe | ||
|
|
e376ce3746 | ||
|
|
ba14259a18 | ||
|
|
7d999607f5 | ||
|
|
587807af8d | ||
|
|
79510d19c5 | ||
|
|
1e13f64e4a | ||
|
|
58977d70a0 | ||
|
|
4b2a691e65 | ||
|
|
7dee63af08 | ||
|
|
969c0fe902 | ||
|
|
287bb6a8f4 | ||
|
|
276d656321 | ||
|
|
8fbeb2a830 | ||
|
|
c3dc9e5c93 |
@@ -1,447 +1,11 @@
|
||||
2156. [bug] Fix node reference leaks in lookup.c:lookup_find(),
|
||||
resolver.c:validated() and resolver.c:cache_name().
|
||||
Fix a memory leak in rbtdb.c:free_noqname().
|
||||
Make lookup.c:lookup_find() robust against
|
||||
event leaks. [RT #16685]
|
||||
|
||||
2155. [contrib] SQLite sdb module from jaboydjr@netwalk.com.
|
||||
[RT #16694]
|
||||
|
||||
2152. [cleanup] Use sizeof(buf) instead of fixed number in
|
||||
dighost.c:get_trusted_key(). [RT #16678]
|
||||
|
||||
2151. [bug] Missing newline in usage message for journalprint.
|
||||
[RT #16679]
|
||||
|
||||
2150. [bug] 'rrset-order cyclic' uniformly distribute the
|
||||
starting point for the first response for a given
|
||||
RRset. [RT #16655]
|
||||
|
||||
2147. [bug] libbind: remove potential buffer overflow from
|
||||
hmac_link.c. [RT #16437]
|
||||
|
||||
2146. [cleanup] Silence Linux's spurious "obsolete setsockopt
|
||||
SO_BSDCOMPAT" message. [RT #16641]
|
||||
|
||||
2145. [bug] Check DS/DLV digest lengths for known digests.
|
||||
[RT #16622]
|
||||
|
||||
2144. [cleanup] Suppress logging of SERVFAIL from forwarders.
|
||||
[RT #16619]
|
||||
|
||||
2143. [bug] We failed to restart the IPv6 client when the
|
||||
kernel failed to return the destination the
|
||||
packet was sent to. [RT #16613]
|
||||
|
||||
2142. [bug] Handle master files with a modification time that
|
||||
matches the epoch. [RT# 16612]
|
||||
|
||||
2140. [bug] libbind: missing unlock on pthread_key_create()
|
||||
failures. [RT #16654]
|
||||
|
||||
2139. [bug] dns_view_find() was being called with wrong type
|
||||
in adb.c. [RT #16670]
|
||||
|
||||
2136. [bug] nslookup/host looped if there was no search list
|
||||
and the host didn't exist. [RT #16657]
|
||||
|
||||
2132. [bug] Missing unlock on out of memory in
|
||||
dns_dispatchmgr_setudp().
|
||||
|
||||
2128. [doc] xsltproc --nonet, update DTD versions. [RT #16635]
|
||||
|
||||
2127. [port] Improved OpenSSL 0.9.8 support. [RT #16563]
|
||||
|
||||
2120. [doc] Fix markup on nsupdate man page. [RT #16556]
|
||||
|
||||
2119. [compat] libbind: allow res_init() to succeed enough to
|
||||
return the default domain even if it was unable
|
||||
to allocate memory.
|
||||
|
||||
2118. [bug] Handle response with long chains of domain name
|
||||
compression pointers which point to other compression
|
||||
pointers. [RT #16427]
|
||||
|
||||
2117. [bug] DNSSEC fixes: named could fail to cache NSEC records
|
||||
which could lead to validation failures. named didn't
|
||||
handle negative DS responses that were in the process
|
||||
of being validated. Check CNAME bit before accepting
|
||||
NODATA proof. To be able to ignore a child NSEC there
|
||||
must be SOA (and NS) set in the bitmap. [RT #16399]
|
||||
|
||||
2116. [bug] 'rndc reload' could cause the cache to continually
|
||||
be cleaned. [RT #16401]
|
||||
|
||||
2115. [bug] 'rndc reconfig' could trigger a INSIST if the
|
||||
number of masters for a zone was reduced. [RT #16444]
|
||||
|
||||
2114. [bug] dig/host/nslookup: searches for names with multiple
|
||||
labels were failing. [RT #16447]
|
||||
|
||||
2113. [bug] nsupdate: if a zone is specified it should be used
|
||||
for server discover. [RT# 16455]
|
||||
|
||||
2111. [bug] Fix a number of errors reported by Coverity.
|
||||
[RT #16507]
|
||||
|
||||
2110. [bug] "minimal-response yes;" interacted badly with BIND 8
|
||||
priming queries. [RT #16491]
|
||||
|
||||
2109. [port] libbind: silence aix 5.3 compiler warnings. [RT #16502]
|
||||
|
||||
--- 9.3.4 released ---
|
||||
|
||||
2126. [security] Serialise validation of type ANY responses. [RT #16555]
|
||||
|
||||
2124. [security] It was possible to dereference a freed fetch
|
||||
context. [RT #16584]
|
||||
|
||||
--- 9.3.3 released ---
|
||||
|
||||
2107. [bug] dighost.c: more cleanup of buffers. [RT #16499]
|
||||
|
||||
2104. [port] Fix Solaris SMF error message.
|
||||
|
||||
2103. [port] Add /usr/sfw to list of locations for OpenSSL
|
||||
under Solaris.
|
||||
|
||||
2102. [port] Silence solaris 10 warnings.
|
||||
|
||||
2101. [bug] OpenSSL version checks were not quite right.
|
||||
[RT #16476]
|
||||
|
||||
2100. [port] win32: copy libeay32.dll to Build\Debug.
|
||||
|
||||
2099. [port] win32: more manifiest issues.
|
||||
|
||||
--- 9.3.3rc3 released ---
|
||||
|
||||
2096. [bug] libbind: handle applications that fail to detect
|
||||
res_init() failures better.
|
||||
|
||||
2095. [port] libbind: alway prototype inet_cidr_ntop_ipv6() and
|
||||
net_cidr_ntop_ipv6(). [RT #16388]
|
||||
|
||||
2094. [contrib] Update named-bootconf. [RT# 16404]
|
||||
|
||||
2092. [bug] win32: dig, host, nslookup. Use registry config
|
||||
if resolv.conf does not exist or no nameservers
|
||||
listed. [RT #15877]
|
||||
|
||||
2091. [port] dighost.c: race condition on cleanup. [RT #16417]
|
||||
|
||||
2090. [port] win32: Visual C++ 2005 command line manifest support.
|
||||
[RT #16417]
|
||||
|
||||
2089. [security] Raise the minimum safe OpenSSL versions to
|
||||
OpenSSL 0.9.7l and OpenSSL 0.9.8d. Versions
|
||||
prior to these have known security flaws which
|
||||
are (potentially) exploitable in named. [RT #16391]
|
||||
|
||||
2088. [security] Change the default RSA exponent from 3 to 65537.
|
||||
[RT #16391]
|
||||
|
||||
2086. [port] libbind: FreeBSD now has get*by*_r() functions.
|
||||
[RT #16403]
|
||||
|
||||
2085. [doc] win32: added index.html and README to zip. [RT #16201]
|
||||
|
||||
2084. [contrib] dbus update for 9.3.3rc2.
|
||||
|
||||
2083. [port] win32: Visual C++ 2005 support.
|
||||
|
||||
2082. [doc] Document 'cache-file' as a test only option.
|
||||
|
||||
--- 9.3.3rc2 released ---
|
||||
|
||||
2081. [port] libbind: minor 64-bit portability fix in memcluster.c.
|
||||
[RT #16360]
|
||||
|
||||
2080. [port] libbind: res_init.c did not compile on older versions
|
||||
of Solaris. [RT #16363]
|
||||
|
||||
2076. [bug] Several files were missing #include <config.h>
|
||||
causing build failures on OSF. [RT #16341]
|
||||
|
||||
2074. [bug] dns_request_createvia2(), dns_request_createvia3(),
|
||||
dns_request_createraw2() and dns_request_createraw3()
|
||||
failed to send multiple UDP requests. [RT #16349]
|
||||
--- 9.3.2-P1 released ---
|
||||
|
||||
2066. [security] Handle SIG queries gracefully. [RT #16300]
|
||||
|
||||
--- 9.3.3rc1 released ---
|
||||
|
||||
2071. [port] Test whether gcc accepts -fno-strict-aliasing.
|
||||
[RT #16324]
|
||||
|
||||
2070. [bug] The remote address was not always displayed when
|
||||
reporting dispatch failures. [RT #16315]
|
||||
|
||||
2069. [bug] Cross compiling was not working. [RT #16330]
|
||||
|
||||
2067. [bug] 'rndc' could close the socket too early triggering
|
||||
a INSIST under Windows. [RT #16317]
|
||||
|
||||
2065. [bug] libbind: probe for HPUX prototypes for
|
||||
endprotoent_r() and endservent_r(). [RT 16313]
|
||||
|
||||
2064. [bug] libbind: silence AIX compiler warnings. [RT #16218]
|
||||
|
||||
2063. [bug] Change #1955 introduced a bug which caused the first
|
||||
'rndc flush' call to not free memory. [RT #16244]
|
||||
|
||||
2062. [bug] 'dig +nssearch' was reusing a buffer before it had
|
||||
been returned by the socket code. [RT #16307]
|
||||
|
||||
2057. [bug] Make setting "ra" dependent on both allow-query and
|
||||
allow-recursion. [RT #16290]
|
||||
|
||||
2056. [bug] dig: ixfr= was not being treated case insensitively
|
||||
at all times. [RT #15955]
|
||||
|
||||
2055. [bug] Missing goto after dropping multicast query.
|
||||
[RT #15944]
|
||||
|
||||
2054. [port] freebsd: do not explicitly link against -lpthread.
|
||||
[RT #16170]
|
||||
|
||||
2053. [port] netbsd:libbind: silence compiler warnings. [RT #16220]
|
||||
|
||||
2052. [bug] 'rndc' improve connect failed message to report
|
||||
the failing address. [RT #15978]
|
||||
|
||||
2051. [port] More strtol() fixes. [RT #16249]
|
||||
|
||||
2050. [bug] Parsing of NSAP records was not case insensitive.
|
||||
[RT #16287]
|
||||
|
||||
2049. [bug] Restore SOA before AXFR when falling back from
|
||||
a attempted IXFR when transfering in a zone.
|
||||
Allow a initial SOA query before attempting
|
||||
a AXFR to be requested. [RT #16156]
|
||||
|
||||
2048. [bug] It was possible to loop forever when using
|
||||
avoid-v4-udp-ports / avoid-v6-udp-ports when
|
||||
the OS always returned the same local port.
|
||||
[RT #16182]
|
||||
|
||||
2047. [bug] Failed to initialise the interface flags to zero.
|
||||
[RT #16245]
|
||||
|
||||
2043. [port] nsupdate/nslookup: Force the flushing of the prompt
|
||||
for interactive sessions. [RT#16148]
|
||||
|
||||
2038. [bug] dig/nslookup/host was unlinking from wrong list
|
||||
when handling errors. [RT #16122]
|
||||
|
||||
2037. [func] When unlinking the first or last element in a list
|
||||
check that the list head points to the element to
|
||||
be unlinked. [RT #15959]
|
||||
|
||||
2036. [bug] 'rndc recursing' could cause trigger a REQUIRE.
|
||||
[RT #16075]
|
||||
|
||||
2034. [bug] gcc: set -fno-strict-aliasing. [RT #16124]
|
||||
|
||||
--- 9.3.3b1 released ---
|
||||
|
||||
2031. [bug] Emit a error message when "rndc refresh" is called on
|
||||
a non slave/stub zone. [RT # 16073]
|
||||
|
||||
2030. [bug] We were being overly conservative when disabling
|
||||
openssl engine support. [RT #16030]
|
||||
|
||||
2029. [bug] host printed out the server multiple times when
|
||||
specified on the command line. [RT #15992]
|
||||
|
||||
2028. [port] linux: socket.c compatability for old systems.
|
||||
[RT #16015]
|
||||
|
||||
2027. [port] libbind: Solaris x86 support. [RT #16020]
|
||||
|
||||
2026. [bug] Rate limit the two recursive client exceeded messages.
|
||||
[RT #16044]
|
||||
|
||||
2024. [bug] named emited spurious "zone serial unchanged"
|
||||
messages on reload. [RT #16027]
|
||||
|
||||
2023. [bug] "make install" should create ${localstatedir}/run and
|
||||
${sysconfdir} if they do not exist. [RT #16033]
|
||||
|
||||
2016. [bug] Return a partial answer if recursion is not
|
||||
allowed but requested and we had the answer
|
||||
to the original qname. [RT #15945]
|
||||
|
||||
2013. [bug] Handle unexpected TSIGs on unsigned AXFR/IXFR
|
||||
responses more gracefully. [RT #15941]
|
||||
|
||||
2009. [bug] libbind: coverity fixes. [RT #15808]
|
||||
|
||||
2005. [bug] libbind: Retransmission timeouts should be
|
||||
based on which attempt it is to the nameserver
|
||||
and not the nameserver itself. [RT #13548]
|
||||
|
||||
2004. [bug] dns_tsig_sign() could pass a NULL pointer to
|
||||
dst_context_destroy() when cleaning up after a
|
||||
error. [RT #15835]
|
||||
|
||||
2003. [bug] libbind: The DNS name/address lookup functions could
|
||||
occasionally follow a random pointer due to
|
||||
structures not being completely zeroed. [RT #15806]
|
||||
|
||||
2002. [bug] libbind: tighten the constraints on when
|
||||
struct addrinfo._ai_pad exists. [RT #15783]
|
||||
|
||||
2000. [bug] memmove()/strtol() fix was incomplete. [RT #15812]
|
||||
|
||||
1998. [bug] Restrict handling of fifos as sockets to just SunOS.
|
||||
This allows named to connect to entropy gathering
|
||||
daemons that use fifos instead of sockets. [RT #15840]
|
||||
|
||||
1997. [bug] Named was failing to replace negative cache entries
|
||||
when a positive one for the type was learnt.
|
||||
[RT #15818]
|
||||
|
||||
1995. [bug] 'host' was reporting multiple "is an alias" messages.
|
||||
[RT #15702]
|
||||
|
||||
1994. [port] OpenSSL 0.9.8 support. [RT #15694]
|
||||
|
||||
1993. [bug] Log messsage, via syslog, were missing the space
|
||||
after the timestamp if "print-time yes" was specified.
|
||||
[RT #15844]
|
||||
|
||||
1991. [cleanup] The configuration data, once read, should be treated
|
||||
as readonly. Expand the use of const to enforce this
|
||||
at compile time. [RT #15813]
|
||||
|
||||
1990. [bug] libbind: isc's override of broken gettimeofday()
|
||||
implementions was not always effective.
|
||||
[RT #15709]
|
||||
|
||||
1989. [bug] win32: don't check the service password when
|
||||
re-installing. [RT #15882]
|
||||
|
||||
1985. [protocol] DLV has now been assigned a official type code of
|
||||
32769. [RT #15807]
|
||||
|
||||
Note: care should be taken to ensure you upgrade
|
||||
both named and dnssec-signzone at the same time for
|
||||
zones with DLV records where named is the master
|
||||
server for the zone. Also any zones that contain
|
||||
DLV records should be removed when upgrading a slave
|
||||
zone. You do not however have to upgrade all
|
||||
servers for a zone with DLV records simultaniously.
|
||||
|
||||
1982. [bug] DNSKEY was being accepted on the parent side of
|
||||
a delegation. KEY is still accepted there for
|
||||
RFC 3007 validated updates. [RT #15620]
|
||||
|
||||
1981. [bug] win32: condition.c:wait() could fail to reattain
|
||||
the mutex lock.
|
||||
|
||||
1979. [port] linux: allow named to drop core after changing
|
||||
user ids. [RT #15753]
|
||||
|
||||
1978. [port] Handle systems which have a broken recvmsg().
|
||||
[RT #15742]
|
||||
|
||||
1977. [bug] Silence noisy log message. [RT #15704]
|
||||
|
||||
1976. [bug] Handle systems with no IPv4 addresses. [RT #15695]
|
||||
|
||||
1975. [bug] libbind: isc_gethexstring() could misparse multi-line
|
||||
hex strings with comments. [RT #15814]
|
||||
|
||||
1974. [doc] List each of the zone types and associated zone
|
||||
options seperately in the ARM.
|
||||
|
||||
1972. [contrib] DBUS dynamic forwarders integation from
|
||||
Jason Vas Dias <jvdias@redhat.com>.
|
||||
|
||||
1971. [port] linux: make detection of missing IF_NAMESIZE more
|
||||
robust. [RT #15443]
|
||||
|
||||
1970. [bug] nsupdate: adjust UDP timeout when falling back to
|
||||
unsigned SOA query. [RT #15775]
|
||||
|
||||
1969. [bug] win32: the socket code was freeing the socket
|
||||
structure too early. [RT #15776]
|
||||
|
||||
1968. [bug] Missing lock in resolver.c:validated(). [RT #15739]
|
||||
|
||||
1966. [bug] Don't set CD when we have fallen back to plain DNS.
|
||||
[RT #15727]
|
||||
|
||||
1963. [port] Tru64 4.0E doesn't support send() and recv().
|
||||
[RT #15586]
|
||||
|
||||
1962. [bug] Named failed to clear old update-policy when it
|
||||
was removed. [RT #15491]
|
||||
|
||||
1961. [bug] Check the port and address of responses forwarded
|
||||
to dispatch. [RT #15474]
|
||||
|
||||
1960. [bug] Update code should set NSEC ttls from SOA MINIMUM.
|
||||
[RT #15465]
|
||||
|
||||
1958. [bug] Named failed to update the zone's secure state
|
||||
until the zone was reloaded. [RT #15412]
|
||||
|
||||
1957. [bug] Dig mishandled responses to class ANY queries.
|
||||
[RT #15402]
|
||||
|
||||
1956. [bug] Improve cross compile support, 'gen' is now built
|
||||
by native compiler. See README for additional
|
||||
cross compile support information. [RT #15148]
|
||||
|
||||
1955. [bug] Pre-allocate the cache cleaning interator. [RT #14998]
|
||||
|
||||
1952. [port] hpux: tell the linker to build a runtime link
|
||||
path "-Wl,+b:". [RT #14816].
|
||||
|
||||
1951. [security] Drop queries from particular well known ports.
|
||||
Don't return FORMERR to queries from particular
|
||||
well known ports. [RT #15636]
|
||||
|
||||
1950. [port] Solaris 2.5.1 and earlier cannot bind() then connect()
|
||||
a TCP socket. This prevents the source address being
|
||||
set for TCP connections. [RT #15628]
|
||||
|
||||
1948. [bug] If was possible to trigger a REQUIRE failure in
|
||||
xfrin.c:maybe_free() if named ran out of memory.
|
||||
[RT #15568]
|
||||
|
||||
1946. [bug] resume_dslookup() could trigger a REQUIRE failure
|
||||
when using forwarders. [RT #15549]
|
||||
|
||||
1944. [cleanup] isc_hash_create() does not need a read/write lock.
|
||||
[RT #15522]
|
||||
|
||||
1943. [bug] Set the loadtime after rolling forward the journal.
|
||||
[RT #15647]
|
||||
|
||||
1942. [bug] If the name of a DNSKEY match that of one in
|
||||
trusted-keys do not attempt to validate the DNSKEY
|
||||
using the parents DS RRset. [RT #15649]
|
||||
|
||||
1941. [bug] ncache_adderesult() should set eresult even if no
|
||||
rdataset is passed to it. [RT #15642]
|
||||
|
||||
1940. [bug] Fixed a number of error conditions reported by
|
||||
Coverity.
|
||||
|
||||
1939. [bug] The resolver could dereference a null pointer after
|
||||
validation if all the queries have timed out.
|
||||
[RT #15528]
|
||||
|
||||
1938. [bug] The validator was not correctly handling unsecure
|
||||
negative responses at or below a SEP. [RT #15528]
|
||||
|
||||
1919. [contrib] queryperf: a set of new features: collecting/printing
|
||||
response delays, printing intermediate results, and
|
||||
adjusting query rate for the "target" qps.
|
||||
|
||||
--- 9.3.2 released ---
|
||||
|
||||
--- 9.3.2rc1 released ---
|
||||
@@ -759,14 +323,14 @@
|
||||
|
||||
1779. [port] OSF 5.1: libtool didn't handle -pthread correctly.
|
||||
|
||||
1778. [port] HUX 11.11: fix broken IN6ADDR_ANY_INIT and
|
||||
1778. [port] HUX 11.11: fix broken IN6ADDR_ANY_INIT and
|
||||
IN6ADDR_LOOPBACK_INIT macros.
|
||||
|
||||
1777. [port] OSF 5.1: fix broken IN6ADDR_ANY_INIT and
|
||||
1777. [port] OSF 5.1: fix broken IN6ADDR_ANY_INIT and
|
||||
IN6ADDR_LOOPBACK_INIT macros.
|
||||
|
||||
1776. [port] Solaris 2.9: fix broken IN6ADDR_ANY_INIT and
|
||||
IN6ADDR_LOOPBACK_INIT macros.
|
||||
1776. [port] Solaris 2.9: fix broken IN6ADDR_ANY_INIT and
|
||||
IN6ADDR_LOOPBACK_INIT macros.
|
||||
|
||||
1775. [bug] Only compile getnetent_r.c when threaded. [RT #13205]
|
||||
|
||||
@@ -1374,7 +938,7 @@
|
||||
[RT #6427]
|
||||
|
||||
1555. [func] 'rrset-order cyclic' no longer has a random starting
|
||||
point per query. [RT #7572]
|
||||
point. [RT #7572]
|
||||
|
||||
1554. [bug] dig, host, nslookup failed when no nameservers
|
||||
were specified in /etc/resolv.conf. [RT #8232]
|
||||
@@ -1609,8 +1173,8 @@
|
||||
|
||||
1414. [func] Support for KSK flag.
|
||||
|
||||
1413. [func] Explicitly request the (re-)generation of DS records
|
||||
from keysets (dnssec-signzone -g).
|
||||
1413. [func] Explictly request the (re-)generation of DS records from
|
||||
keysets (dnssec-signzone -g).
|
||||
|
||||
1412. [func] You can now specify servers to be tried if a nameserver
|
||||
has IPv6 address and you only support IPv4 or the
|
||||
@@ -6007,7 +5571,7 @@
|
||||
<isc/bufferlist.h>, <isc/task.h>, <isc/mem.h> or
|
||||
<isc/net.h>.
|
||||
|
||||
119. [cleanup] structure definitions for generic rdata structures do
|
||||
119. [cleanup] structure definitions for generic rdata stuctures do
|
||||
not have _generic_ in their names.
|
||||
|
||||
118. [cleanup] libdns.a is now namespace-clean, on NetBSD, excepting
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
Copyright (C) 1996-2003 Internet Software Consortium.
|
||||
|
||||
Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -13,7 +13,7 @@ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
|
||||
OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
PERFORMANCE OF THIS SOFTWARE.
|
||||
|
||||
$Id: COPYRIGHT,v 1.6.2.2.8.5 2007/01/08 02:45:03 marka Exp $
|
||||
$Id: COPYRIGHT,v 1.6.2.2.8.3 2005/01/10 23:51:37 marka Exp $
|
||||
|
||||
Portions Copyright (C) 1996-2001 Nominum, Inc.
|
||||
|
||||
|
||||
@@ -1,43 +1,29 @@
|
||||
Frequently Asked Questions about BIND 9
|
||||
|
||||
Copyright © 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
|
||||
Copyright © 2000-2003 Internet Software Consortium.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Q: Why doesn't -u work on Linux 2.2.x when I build with --enable-threads?
|
||||
|
||||
A: Linux threads do not fully implement the Posix threads (pthreads) standard. In
|
||||
particular, setuid() operates only on the current thread, not the full process.
|
||||
Because of this limitation, BIND 9 cannot use setuid() on Linux as it can on
|
||||
all other supported platforms. setuid() cannot be called before creating
|
||||
threads, since the server does not start listening on reserved ports until
|
||||
after threads have started.
|
||||
A: Linux threads do not fully implement the Posix threads (pthreads) standard.
|
||||
In particular, setuid() operates only on the current thread, not the full
|
||||
process. Because of this limitation, BIND 9 cannot use setuid() on Linux as
|
||||
it can on all other supported platforms. setuid() cannot be called before
|
||||
creating threads, since the server does not start listening on reserved
|
||||
ports until after threads have started.
|
||||
|
||||
In the 2.2.18 or 2.3.99-pre3 and newer kernels, the ability to preserve
|
||||
capabilities across a setuid() call is present. This allows BIND 9 to call
|
||||
setuid() early, while retaining the ability to bind reserved ports. This is a
|
||||
Linux-specific hack.
|
||||
setuid() early, while retaining the ability to bind reserved ports. This is
|
||||
a Linux-specific hack.
|
||||
|
||||
On a 2.2 kernel, BIND 9 does drop many root privileges, so it should be less of
|
||||
a security risk than a root process that has not dropped privileges.
|
||||
On a 2.2 kernel, BIND 9 does drop many root privileges, so it should be less
|
||||
of a security risk than a root process that has not dropped privileges.
|
||||
|
||||
If Linux threads ever work correctly, this restriction will go away.
|
||||
|
||||
Configuring BIND9 with the --disable-threads option (the default) causes a
|
||||
non-threaded version to be built, which will allow -u to be used.
|
||||
|
||||
Q: Why do I get the following errors:
|
||||
|
||||
general: errno2result.c:109: unexpected error:
|
||||
general: unable to convert errno to isc_result: 14: Bad address
|
||||
client: UDP client handler shutting down due to fatal receive error: unexpected error
|
||||
|
||||
A: This is the result of a Linux kernel bug.
|
||||
|
||||
See: http://marc.theaimsgroup.com/?l=linux-netdev&m=113081708031466&w=2
|
||||
|
||||
Q: Why does named log the warning message "no TTL specified - using SOA MINTTL
|
||||
instead"?
|
||||
|
||||
@@ -54,47 +40,44 @@ A: Your zone file is illegal according to RFC1035. It must either have a line
|
||||
Q: Why do I see 5 (or more) copies of named on Linux?
|
||||
|
||||
A: Linux threads each show up as a process under ps. The approximate number of
|
||||
threads running is n+4, where n is the number of CPUs. Note that the amount of
|
||||
memory used is not cumulative; if each process is using 10M of memory, only a
|
||||
total of 10M is used.
|
||||
|
||||
Newer versions of Linux's ps command hide the individual threads and require -L
|
||||
to display them.
|
||||
threads running is n+4, where n is the number of CPUs. Note that the amount
|
||||
of memory used is not cumulative; if each process is using 10M of memory,
|
||||
only a total of 10M is used.
|
||||
|
||||
Q: Why does BIND 9 log "permission denied" errors accessing its configuration
|
||||
files or zones on my Linux system even though it is running as root?
|
||||
|
||||
A: On Linux, BIND 9 drops most of its root privileges on startup. This including
|
||||
the privilege to open files owned by other users. Therefore, if the server is
|
||||
running as root, the configuration files and zone files should also be owned by
|
||||
root.
|
||||
A: On Linux, BIND 9 drops most of its root privileges on startup. This
|
||||
including the privilege to open files owned by other users. Therefore, if
|
||||
the server is running as root, the configuration files and zone files should
|
||||
also be owned by root.
|
||||
|
||||
Q: Why do I get errors like "dns_zone_load: zone foo/IN: loading master file bar:
|
||||
ran out of space"?
|
||||
Q: Why do I get errors like "dns_zone_load: zone foo/IN: loading master file
|
||||
bar: ran out of space"?
|
||||
|
||||
A: This is often caused by TXT records with missing close quotes. Check that all
|
||||
TXT records containing quoted strings have both open and close quotes.
|
||||
A: This is often caused by TXT records with missing close quotes. Check that
|
||||
all TXT records containing quoted strings have both open and close quotes.
|
||||
|
||||
Q: How do I produce a usable core file from a multi-threaded named on Linux?
|
||||
Q: How do I produce a usable core file from a multithreaded named on Linux?
|
||||
|
||||
A: If the Linux kernel is 2.4.7 or newer, multi-threaded core dumps are usable
|
||||
A: If the Linux kernel is 2.4.7 or newer, multithreaded core dumps are usable
|
||||
(that is, the correct thread is dumped). Otherwise, if using a 2.2 kernel,
|
||||
apply the kernel patch found in contrib/linux/coredump-patch and rebuild the
|
||||
kernel. This patch will cause multi-threaded programs to dump the correct
|
||||
kernel. This patch will cause multithreaded programs to dump the correct
|
||||
thread.
|
||||
|
||||
Q: How do I restrict people from looking up the server version?
|
||||
|
||||
A: Put a "version" option containing something other than the real version in the
|
||||
"options" section of named.conf. Note doing this will not prevent attacks and
|
||||
may impede people trying to diagnose problems with your server. Also it is
|
||||
possible to "fingerprint" nameservers to determine their version.
|
||||
A: Put a "version" option containing something other than the real version in
|
||||
the "options" section of named.conf. Note doing this will not prevent
|
||||
attacks and may impede people trying to diagnose problems with your server.
|
||||
Also it is possible to "fingerprint" nameservers to determine their version.
|
||||
|
||||
Q: How do I restrict only remote users from looking up the server version?
|
||||
|
||||
A: The following view statement will intercept lookups as the internal view that
|
||||
holds the version information will be matched last. The caveats of the previous
|
||||
answer still apply, of course.
|
||||
A: The following view statement will intercept lookups as the internal view
|
||||
that holds the version information will be matched last. The caveats of the
|
||||
previous answer still apply, of course.
|
||||
|
||||
view "chaos" chaos {
|
||||
match-clients { <those to be refused>; };
|
||||
@@ -108,45 +91,48 @@ A: The following view statement will intercept lookups as the internal view that
|
||||
Q: What do "no source of entropy found" or "could not open entropy source foo"
|
||||
mean?
|
||||
|
||||
A: The server requires a source of entropy to perform certain operations, mostly
|
||||
DNSSEC related. These messages indicate that you have no source of entropy. On
|
||||
systems with /dev/random or an equivalent, it is used by default. A source of
|
||||
entropy can also be defined using the random-device option in named.conf.
|
||||
A: The server requires a source of entropy to perform certain operations,
|
||||
mostly DNSSEC related. These messages indicate that you have no source of
|
||||
entropy. On systems with /dev/random or an equivalent, it is used by
|
||||
default. A source of entropy can also be defined using the random-device
|
||||
option in named.conf.
|
||||
|
||||
Q: I installed BIND 9 and restarted named, but it's still BIND 8. Why?
|
||||
|
||||
A: BIND 9 is installed under /usr/local by default. BIND 8 is often installed
|
||||
under /usr. Check that the correct named is running.
|
||||
|
||||
Q: I'm trying to use TSIG to authenticate dynamic updates or zone transfers. I'm
|
||||
sure I have the keys set up correctly, but the server is rejecting the TSIG.
|
||||
Why?
|
||||
Q: I'm trying to use TSIG to authenticate dynamic updates or zone transfers.
|
||||
I'm sure I have the keys set up correctly, but the server is rejecting the
|
||||
TSIG. Why?
|
||||
|
||||
A: This may be a clock skew problem. Check that the the clocks on the client and
|
||||
server are properly synchronised (e.g., using ntp).
|
||||
A: This may be a clock skew problem. Check that the the clocks on the client
|
||||
and server are properly synchronised (e.g., using ntp).
|
||||
|
||||
Q: I'm trying to compile BIND 9, and "make" is failing due to files not being
|
||||
found. Why?
|
||||
|
||||
A: Using a parallel or distributed "make" to build BIND 9 is not supported, and
|
||||
doesn't work. If you are using one of these, use normal make or gmake instead.
|
||||
doesn't work. If you are using one of these, use normal make or gmake
|
||||
instead.
|
||||
|
||||
Q: I have a BIND 9 master and a BIND 8.2.3 slave, and the master is logging error
|
||||
messages like "notify to 10.0.0.1#53 failed: unexpected end of input". What's
|
||||
wrong?
|
||||
Q: I have a BIND 9 master and a BIND 8.2.3 slave, and the master is logging
|
||||
error messages like "notify to 10.0.0.1#53 failed: unexpected end of input".
|
||||
What's wrong?
|
||||
|
||||
A: This error message is caused by a known bug in BIND 8.2.3 and is fixed in BIND
|
||||
8.2.4. It can be safely ignored - the notify has been acted on by the slave
|
||||
despite the error message.
|
||||
A: This error message is caused by a known bug in BIND 8.2.3 and is fixed in
|
||||
BIND 8.2.4. It can be safely ignored - the notify has been acted on by the
|
||||
slave despite the error message.
|
||||
|
||||
Q: I keep getting log messages like the following. Why?
|
||||
|
||||
Dec 4 23:47:59 client 10.0.0.1#1355: updating zone 'example.com/IN': update
|
||||
failed: 'RRset exists (value dependent)' prerequisite not satisfied (NXRRSET)
|
||||
failed: 'RRset exists (value dependent)' prerequisite not satisfied
|
||||
(NXRRSET)
|
||||
|
||||
A: DNS updates allow the update request to test to see if certain conditions are
|
||||
met prior to proceeding with the update. The message above is saying that
|
||||
conditions were not met and the update is not proceeding. See doc/rfc/
|
||||
A: DNS updates allow the update request to test to see if certain conditions
|
||||
are met prior to proceeding with the update. The message above is saying
|
||||
that conditions were not met and the update is not proceeding. See doc/rfc/
|
||||
rfc2136.txt for more details on prerequisites.
|
||||
|
||||
Q: I keep getting log messages like the following. Why?
|
||||
@@ -154,11 +140,11 @@ Q: I keep getting log messages like the following. Why?
|
||||
Jun 21 12:00:00.000 client 10.0.0.1#1234: update denied
|
||||
|
||||
A: Someone is trying to update your DNS data using the RFC2136 Dynamic Update
|
||||
protocol. Windows 2000 machines have a habit of sending dynamic update requests
|
||||
to DNS servers without being specifically configured to do so. If the update
|
||||
requests are coming from a Windows 2000 machine, see http://
|
||||
support.microsoft.com/support/kb/articles/q246/8/04.asp for information about
|
||||
how to turn them off.
|
||||
protocol. Windows 2000 machines have a habit of sending dynamic update
|
||||
requests to DNS servers without being specifically configured to do so. If
|
||||
the update requests are coming from a Windows 2000 machine, see http://
|
||||
support.microsoft.com/support/kb/articles/q246/8/04.asp for information
|
||||
about how to turn them off.
|
||||
|
||||
Q: I see a log message like the following. Why?
|
||||
|
||||
@@ -166,59 +152,59 @@ Q: I see a log message like the following. Why?
|
||||
|
||||
A: You are most likely running named as a non-root user, and that user does not
|
||||
have permission to write in /var/run. The common ways of fixing this are to
|
||||
create a /var/run/named directory owned by the named user and set pid-file to "
|
||||
/var/run/named/named.pid", or set pid-file to "named.pid", which will put the
|
||||
file in the directory specified by the directory option (which, in this case,
|
||||
must be writable by the named user).
|
||||
create a /var/run/named directory owned by the named user and set pid-file
|
||||
to "/var/run/named/named.pid", or set pid-file to "named.pid", which will
|
||||
put the file in the directory specified by the directory option (which, in
|
||||
this case, must be writable by the named user).
|
||||
|
||||
Q: When I do a "dig . ns", many of the A records for the root servers are missing.
|
||||
Why?
|
||||
Q: When I do a "dig . ns", many of the A records for the root servers are
|
||||
missing. Why?
|
||||
|
||||
A: This is normal and harmless. It is a somewhat confusing side effect of the way
|
||||
BIND 9 does RFC2181 trust ranking and of the efforts BIND 9 makes to avoid
|
||||
promoting glue into answers.
|
||||
A: This is normal and harmless. It is a somewhat confusing side effect of the
|
||||
way BIND 9 does RFC2181 trust ranking and of the efforts BIND 9 makes to
|
||||
avoid promoting glue into answers.
|
||||
|
||||
When BIND 9 first starts up and primes its cache, it receives the root server
|
||||
addresses as additional data in an authoritative response from a root server,
|
||||
and these records are eligible for inclusion as additional data in responses.
|
||||
Subsequently it receives a subset of the root server addresses as additional
|
||||
data in a non-authoritative (referral) response from a root server. This causes
|
||||
the addresses to now be considered non-authoritative (glue) data, which is not
|
||||
eligible for inclusion in responses.
|
||||
When BIND 9 first starts up and primes its cache, it receives the root
|
||||
server addresses as additional data in an authoritative response from a root
|
||||
server, and these records are eligible for inclusion as additional data in
|
||||
responses. Subsequently it receives a subset of the root server addresses as
|
||||
additional data in a non-authoritative (referral) response from a root
|
||||
server. This causes the addresses to now be considered non-authoritative
|
||||
(glue) data, which is not eligible for inclusion in responses.
|
||||
|
||||
The server does have a complete set of root server addresses cached at all
|
||||
times, it just may not include all of them as additional data, depending on
|
||||
whether they were last received as answers or as glue. You can always look up
|
||||
the addresses with explicit queries like "dig a.root-servers.net A".
|
||||
whether they were last received as answers or as glue. You can always look
|
||||
up the addresses with explicit queries like "dig a.root-servers.net A".
|
||||
|
||||
Q: Zone transfers from my BIND 9 master to my Windows 2000 slave fail. Why?
|
||||
|
||||
A: This may be caused by a bug in the Windows 2000 DNS server where DNS messages
|
||||
larger than 16K are not handled properly. This can be worked around by setting
|
||||
the option "transfer-format one-answer;". Also check whether your zone contains
|
||||
domain names with embedded spaces or other special characters, like "John\
|
||||
032Doe\213s\032Computer", since such names have been known to cause Windows
|
||||
2000 slaves to incorrectly reject the zone.
|
||||
A: This may be caused by a bug in the Windows 2000 DNS server where DNS
|
||||
messages larger than 16K are not handled properly. This can be worked around
|
||||
by setting the option "transfer-format one-answer;". Also check whether your
|
||||
zone contains domain names with embedded spaces or other special characters,
|
||||
like "John\032Doe\213s\032Computer", since such names have been known to
|
||||
cause Windows 2000 slaves to incorrectly reject the zone.
|
||||
|
||||
Q: Why don't my zones reload when I do an "rndc reload" or SIGHUP?
|
||||
|
||||
A: A zone can be updated either by editing zone files and reloading the server or
|
||||
by dynamic update, but not both. If you have enabled dynamic update for a zone
|
||||
using the "allow-update" option, you are not supposed to edit the zone file by
|
||||
hand, and the server will not attempt to reload it.
|
||||
A: A zone can be updated either by editing zone files and reloading the server
|
||||
or by dynamic update, but not both. If you have enabled dynamic update for a
|
||||
zone using the "allow-update" option, you are not supposed to edit the zone
|
||||
file by hand, and the server will not attempt to reload it.
|
||||
|
||||
Q: I can query the nameserver from the nameserver but not from other machines.
|
||||
Why?
|
||||
|
||||
A: This is usually the result of the firewall configuration stopping the queries
|
||||
and / or the replies.
|
||||
A: This is usually the result of the firewall configuration stopping the
|
||||
queries and / or the replies.
|
||||
|
||||
Q: How can I make a server a slave for both an internal and an external view at
|
||||
the same time? When I tried, both views on the slave were transferred from the
|
||||
same view on the master.
|
||||
the same time? When I tried, both views on the slave were transferred from
|
||||
the same view on the master.
|
||||
|
||||
A: You will need to give the master and slave multiple IP addresses and use those
|
||||
to make sure you reach the correct view on the other machine.
|
||||
A: You will need to give the master and slave multiple IP addresses and use
|
||||
those to make sure you reach the correct view on the other machine.
|
||||
|
||||
Master: 10.0.1.1 (internal), 10.0.1.2 (external, IP alias)
|
||||
internal:
|
||||
@@ -246,8 +232,8 @@ A: You will need to give the master and slave multiple IP addresses and use thos
|
||||
transfer-source 10.0.1.4;
|
||||
query-source address 10.0.1.4;
|
||||
|
||||
You put the external address on the alias so that all the other dns clients on
|
||||
these boxes see the internal view by default.
|
||||
You put the external address on the alias so that all the other dns clients
|
||||
on these boxes see the internal view by default.
|
||||
|
||||
A: BIND 9.3 and later: Use TSIG to select the appropriate view.
|
||||
|
||||
@@ -262,7 +248,7 @@ A: BIND 9.3 and later: Use TSIG to select the appropriate view.
|
||||
};
|
||||
view "external" {
|
||||
match-clients { key external; any; };
|
||||
server 10.0.1.2 { keys external; };
|
||||
server 10.0.0.2 { keys external; };
|
||||
recursion no;
|
||||
...
|
||||
};
|
||||
@@ -278,7 +264,7 @@ A: BIND 9.3 and later: Use TSIG to select the appropriate view.
|
||||
};
|
||||
view "external" {
|
||||
match-clients { key external; any; };
|
||||
server 10.0.1.1 { keys external; };
|
||||
server 10.0.0.1 { keys external; };
|
||||
recursion no;
|
||||
...
|
||||
};
|
||||
@@ -286,8 +272,8 @@ A: BIND 9.3 and later: Use TSIG to select the appropriate view.
|
||||
Q: I have FreeBSD 4.x and "rndc-confgen -a" just sits there.
|
||||
|
||||
A: /dev/random is not configured. Use rndcontrol(8) to tell the kernel to use
|
||||
certain interrupts as a source of random events. You can make this permanent by
|
||||
setting rand_irqs in /etc/rc.conf.
|
||||
certain interrupts as a source of random events. You can make this permanent
|
||||
by setting rand_irqs in /etc/rc.conf.
|
||||
|
||||
/etc/rc.conf
|
||||
rand_irqs="3 14 15"
|
||||
@@ -297,33 +283,34 @@ A: /dev/random is not configured. Use rndcontrol(8) to tell the kernel to use
|
||||
Q: Why is named listening on UDP port other than 53?
|
||||
|
||||
A: Named uses a system selected port to make queries of other nameservers. This
|
||||
behaviour can be overridden by using query-source to lock down the port and/or
|
||||
address. See also notify-source and transfer-source.
|
||||
behaviour can be overridden by using query-source to lock down the port and/
|
||||
or address. See also notify-source and transfer-source.
|
||||
|
||||
Q: I get error messages like "multiple RRs of singleton type" and "CNAME and other
|
||||
data" when transferring a zone. What does this mean?
|
||||
Q: I get error messages like "multiple RRs of singleton type" and "CNAME and
|
||||
other data" when transferring a zone. What does this mean?
|
||||
|
||||
A: These indicate a malformed master zone. You can identify the exact records
|
||||
involved by transferring the zone using dig then running named-checkzone on it.
|
||||
involved by transferring the zone using dig then running named-checkzone on
|
||||
it.
|
||||
|
||||
dig axfr example.com @master-server > tmp
|
||||
named-checkzone example.com tmp
|
||||
|
||||
A CNAME record cannot exist with the same name as another record except for the
|
||||
DNSSEC records which prove its existence (NSEC).
|
||||
A CNAME record cannot exist with the same name as another record except for
|
||||
the DNSSEC records which prove its existance (NSEC).
|
||||
|
||||
RFC 1034, Section 3.6.2: "If a CNAME RR is present at a node, no other data
|
||||
should be present; this ensures that the data for a canonical name and its
|
||||
aliases cannot be different. This rule also insures that a cached CNAME can be
|
||||
used without checking with an authoritative server for other RR types."
|
||||
aliases cannot be different. This rule also insures that a cached CNAME can
|
||||
be used without checking with an authoritative server for other RR types."
|
||||
|
||||
Q: I get error messages like "named.conf:99: unexpected end of input" where 99 is
|
||||
the last line of named.conf.
|
||||
Q: I get error messages like "named.conf:99: unexpected end of input" where 99
|
||||
is the last line of named.conf.
|
||||
|
||||
A: Some text editors (notepad and wordpad) fail to put a line title indication
|
||||
(e.g. CR/LF) on the last line of a text file. This can be fixed by "adding" a
|
||||
blank line to the end of the file. Named expects to see EOF immediately after
|
||||
EOL and treats text files where this is not met as truncated.
|
||||
(e.g. CR/LF) on the last line of a text file. This can be fixed by "adding"
|
||||
a blank line to the end of the file. Named expects to see EOF immediately
|
||||
after EOL and treats text files where this is not met as truncated.
|
||||
|
||||
Q: I get warning messages like "zone example.com/IN: refresh: failure trying
|
||||
master 1.2.3.4#53: timed out".
|
||||
@@ -332,15 +319,15 @@ A: Check that you can make UDP queries from the slave to the master
|
||||
|
||||
dig +norec example.com soa @1.2.3.4
|
||||
|
||||
You could be generating queries faster than the slave can cope with. Lower the
|
||||
serial query rate.
|
||||
You could be generating queries faster than the slave can cope with. Lower
|
||||
the serial query rate.
|
||||
|
||||
serial-query-rate 5; // default 20
|
||||
|
||||
Q: How do I share a dynamic zone between multiple views?
|
||||
|
||||
A: You choose one view to be master and the second a slave and transfer the zone
|
||||
between views.
|
||||
A: You choose one view to be master and the second a slave and transfer the
|
||||
zone between views.
|
||||
|
||||
Master 10.0.1.1:
|
||||
key "external" {
|
||||
@@ -383,14 +370,14 @@ Q: I get a error message like "zone wireless.ietf56.ietf.org/IN: loading master
|
||||
file primaries/wireless.ietf56.ietf.org: no owner".
|
||||
|
||||
A: This error is produced when a line in the master file contains leading white
|
||||
space (tab/space) but the is no current record owner name to inherit the name
|
||||
from. Usually this is the result of putting white space before a comment.
|
||||
Forgetting the "@" for the SOA record or indenting the master file.
|
||||
space (tab/space) but the is no current record owner name to inherit the
|
||||
name from. Usually this is the result of putting white space before a
|
||||
comment. Forgeting the "@" for the SOA record or indenting the master file.
|
||||
|
||||
Q: Why are my logs in GMT (UTC).
|
||||
|
||||
A: You are running chrooted (-t) and have not supplied local timezone information
|
||||
in the chroot area.
|
||||
A: You are running chrooted (-t) and have not supplied local timzone
|
||||
information in the chroot area.
|
||||
|
||||
FreeBSD: /etc/localtime
|
||||
Solaris: /etc/TIMEZONE and /usr/share/lib/zoneinfo
|
||||
@@ -408,23 +395,23 @@ Q: I get "rndc: connect failed: connection refused" when I try to run rndc.
|
||||
|
||||
A: This is usually a configuration error.
|
||||
|
||||
First ensure that named is running and no errors are being reported at startup
|
||||
(/var/log/messages or equivalent). Running "named -g <usual arguments>" from a
|
||||
title can help at this point.
|
||||
First ensure that named is running and no errors are being reported at
|
||||
startup (/var/log/messages or equivalent). Running "named -g <usual
|
||||
arguments>" from a title can help at this point.
|
||||
|
||||
Secondly ensure that named is configured to use rndc either by "rndc-confgen
|
||||
-a", rndc-confgen or manually. The Administrators Reference manual has details
|
||||
on how to do this.
|
||||
-a", rndc-confgen or manually. The Administrators Reference manual has
|
||||
details on how to do this.
|
||||
|
||||
Old versions of rndc-confgen used localhost rather than 127.0.0.1 in /etc/
|
||||
rndc.conf for the default server. Update /etc/rndc.conf if necessary so that
|
||||
the default server listed in /etc/rndc.conf matches the addresses used in
|
||||
named.conf. "localhost" has two address (127.0.0.1 and ::1).
|
||||
|
||||
If you use "rndc-confgen -a" and named is running with -t or -u ensure that /
|
||||
etc/rndc.conf has the correct ownership and that a copy is in the chroot area.
|
||||
You can do this by re-running "rndc-confgen -a" with appropriate -t and -u
|
||||
arguments.
|
||||
If you use "rndc-confgen -a" and named is running with -t or -u ensure that
|
||||
/etc/rndc.conf has the correct ownership and that a copy is in the chroot
|
||||
area. You can do this by re-running "rndc-confgen -a" with appropriate -t
|
||||
and -u arguments.
|
||||
|
||||
Q: I don't get RRSIG's returned when I use "dig +dnssec".
|
||||
|
||||
@@ -432,11 +419,12 @@ A: You need to ensure DNSSEC is enabled (dnssec-enable yes;).
|
||||
|
||||
Q: I get "Error 1067" when starting named under Windows.
|
||||
|
||||
A: This is the service manager saying that named exited. You need to examine the
|
||||
Application log in the EventViewer to find out why.
|
||||
A: This is the service manager saying that named exited. You need to examine
|
||||
the Application log in the EventViewer to find out why.
|
||||
|
||||
Common causes are that you failed to create "named.conf" (usually "C:\windows\
|
||||
dns\etc\named.conf") or failed to specify the directory in named.conf.
|
||||
Common causes are that you failed to create "named.conf" (usually "C:\
|
||||
windows\dns\etc\named.conf") or failed to specify the directory in
|
||||
named.conf.
|
||||
|
||||
options {
|
||||
Directory "C:\windows\dns\etc";
|
||||
@@ -451,11 +439,11 @@ A: These indicate a filesystem permission error preventing named creating /
|
||||
|
||||
"dumping master file: sl/tmp-XXXX5il3sQ: open: permission denied"
|
||||
|
||||
Named needs write permission on the directory containing the file. Named writes
|
||||
the new cache file to a temporary file then renames it to the name specified in
|
||||
named.conf to ensure that the contents are always complete. This is to prevent
|
||||
named loading a partial zone in the event of power failure or similar
|
||||
interrupting the write of the master file.
|
||||
Named needs write permission on the directory containing the file. Named
|
||||
writes the new cache file to a temporary file then renames it to the name
|
||||
specified in named.conf to ensure that the contents are always complete.
|
||||
This is to prevent named loading a partial zone in the event of power
|
||||
failure or similar interrupting the write of the master file.
|
||||
|
||||
Note file names are relative to the directory specified in options and any
|
||||
chroot directory ([<chroot dir>/][<options dir>]).
|
||||
@@ -474,7 +462,7 @@ A: These indicate a filesystem permission error preventing named creating /
|
||||
masters { 192.168.4.12; };
|
||||
};
|
||||
|
||||
Q: How do I integrate BIND 9 and Solaris SMF
|
||||
Q: How do I intergrate BIND 9 and Solaris SMF
|
||||
|
||||
A: Sun has a blog entry describing how to do this.
|
||||
|
||||
@@ -487,7 +475,7 @@ A: No. The rules for glue (copies of the *address* records in the parent zones)
|
||||
|
||||
You would have to add both the CNAME and address records (A/AAAA) as glue to
|
||||
the parent zone and have CNAMEs be followed when doing additional section
|
||||
processing to make it work. No nameserver implementation supports either of
|
||||
processing to make it work. No namesever implementation supports either of
|
||||
these requirements.
|
||||
|
||||
Q: What does "RFC 1918 response from Internet for 0.0.0.10.IN-ADDR.ARPA" mean?
|
||||
@@ -495,14 +483,14 @@ Q: What does "RFC 1918 response from Internet for 0.0.0.10.IN-ADDR.ARPA" mean?
|
||||
A: If the IN-ADDR.ARPA name covered refers to a internal address space you are
|
||||
using then you have failed to follow RFC 1918 usage rules and are leaking
|
||||
queries to the Internet. You should establish your own zones for these
|
||||
addresses to prevent you querying the Internet's name servers for these
|
||||
addresses to prevent you quering the Internet's name servers for these
|
||||
addresses. Please see http://as112.net/ for details of the problems you are
|
||||
causing and the counter measures that have had to be deployed.
|
||||
|
||||
If you are not using these private addresses then a client has queried for
|
||||
them. You can just ignore the messages, get the offending client to stop
|
||||
sending you these messages as they are most probably leaking them or setup your
|
||||
own zones empty zones to serve answers to these queries.
|
||||
sending you these messages as they are most probably leaking them or setup
|
||||
your own zones empty zones to serve answers to these queries.
|
||||
|
||||
zone "10.IN-ADDR.ARPA" {
|
||||
type master;
|
||||
@@ -535,187 +523,3 @@ A: If the IN-ADDR.ARPA name covered refers to a internal address space you are
|
||||
|
||||
Future versions of named are likely to do this automatically.
|
||||
|
||||
Q: I'm running BIND on Red Hat Enterprise Linux or Fedora Core -
|
||||
|
||||
Why can't named update slave zone database files?
|
||||
|
||||
Why can't named create DDNS journal files or update the master zones from
|
||||
journals?
|
||||
|
||||
Why can't named create custom log files?
|
||||
|
||||
A: Red Hat Security Enhanced Linux (SELinux) policy security protections :
|
||||
|
||||
Red Hat have adopted the National Security Agency's SELinux security policy (
|
||||
see http://www.nsa.gov/selinux ) and recommendations for BIND security , which
|
||||
are more secure than running named in a chroot and make use of the bind-chroot
|
||||
environment unnecessary .
|
||||
|
||||
By default, named is not allowed by the SELinux policy to write, create or
|
||||
delete any files EXCEPT in these directories:
|
||||
|
||||
$ROOTDIR/var/named/slaves
|
||||
$ROOTDIR/var/named/data
|
||||
$ROOTDIR/var/tmp
|
||||
|
||||
|
||||
where $ROOTDIR may be set in /etc/sysconfig/named if bind-chroot is installed.
|
||||
|
||||
The SELinux policy particularly does NOT allow named to modify the $ROOTDIR/var
|
||||
/named directory, the default location for master zone database files.
|
||||
|
||||
SELinux policy overrules file access permissions - so even if all the files
|
||||
under /var/named have ownership named:named and mode rw-rw-r--, named will
|
||||
still not be able to write or create files except in the directories above,
|
||||
with SELinux in Enforcing mode.
|
||||
|
||||
So, to allow named to update slave or DDNS zone files, it is best to locate
|
||||
them in $ROOTDIR/var/named/slaves, with named.conf zone statements such as:
|
||||
|
||||
zone "slave.zone." IN {
|
||||
type slave;
|
||||
file "slaves/slave.zone.db";
|
||||
...
|
||||
};
|
||||
zone "ddns.zone." IN {
|
||||
type master;
|
||||
allow-updates {...};
|
||||
file "slaves/ddns.zone.db";
|
||||
};
|
||||
|
||||
|
||||
To allow named to create its cache dump and statistics files, for example, you
|
||||
could use named.conf options statements such as:
|
||||
|
||||
options {
|
||||
...
|
||||
dump-file "/var/named/data/cache_dump.db";
|
||||
statistics-file "/var/named/data/named_stats.txt";
|
||||
...
|
||||
};
|
||||
|
||||
|
||||
You can also tell SELinux to allow named to update any zone database files, by
|
||||
setting the SELinux tunable boolean parameter 'named_write_master_zones=1',
|
||||
using the system-config-securitylevel GUI, using the 'setsebool' command, or in
|
||||
/etc/selinux/targeted/booleans.
|
||||
|
||||
You can disable SELinux protection for named entirely by setting the
|
||||
'named_disable_trans=1' SELinux tunable boolean parameter.
|
||||
|
||||
The SELinux named policy defines these SELinux contexts for named:
|
||||
|
||||
named_zone_t : for zone database files - $ROOTDIR/var/named/*
|
||||
named_conf_t : for named configuration files - $ROOTDIR/etc/{named,rndc}.*
|
||||
named_cache_t: for files modifiable by named - $ROOTDIR/var/{tmp,named/{slaves,data}}
|
||||
|
||||
|
||||
If you want to retain use of the SELinux policy for named, and put named files
|
||||
in different locations, you can do so by changing the context of the custom
|
||||
file locations .
|
||||
|
||||
To create a custom configuration file location, e.g. '/root/named.conf', to use
|
||||
with the 'named -c' option, do:
|
||||
|
||||
# chcon system_u:object_r:named_conf_t /root/named.conf
|
||||
|
||||
|
||||
To create a custom modifiable named data location, e.g. '/var/log/named' for a
|
||||
log file, do:
|
||||
|
||||
# chcon system_u:object_r:named_cache_t /var/log/named
|
||||
|
||||
|
||||
To create a custom zone file location, e.g. /root/zones/, do:
|
||||
|
||||
# chcon system_u:object_r:named_zone_t /root/zones/{.,*}
|
||||
|
||||
|
||||
See these man-pages for more information : selinux(8), named_selinux(8), chcon
|
||||
(1), setsebool(8)
|
||||
|
||||
Q: I want to forward all DNS queries from my caching nameserver to another server.
|
||||
But there are some domains which have to be served locally, via rbldnsd.
|
||||
|
||||
How do I achieve this ?
|
||||
|
||||
A: options {
|
||||
forward only;
|
||||
forwarders { <ip.of.primary.nameserver>; };
|
||||
};
|
||||
|
||||
zone "sbl-xbl.spamhaus.org" {
|
||||
type forward; forward only;
|
||||
forwarders { <ip.of.rbldns.server> port 530; };
|
||||
};
|
||||
|
||||
zone "list.dsbl.org" {
|
||||
type forward; forward only;
|
||||
forwarders { <ip.of.rbldns.server> port 530; };
|
||||
};
|
||||
|
||||
|
||||
Q: Will named be affected by the 2007 changes to daylight savings rules in the US.
|
||||
|
||||
A: No, so long as the machines internal clock (as reported by "date -u") remains
|
||||
at UTC. The only visible change if you fail to upgrade your OS, if you are in a
|
||||
affected area, will be that log messages will be a hour out during the period
|
||||
where the old rules do not match the new rules.
|
||||
|
||||
For most OS's this change just means that you need to update the conversion
|
||||
rules from UTC to local time. Normally this involves updating a file in /etc
|
||||
(which sets the default timezone for the machine) and possibly a directory
|
||||
which has all the conversion rules for the world (e.g. /usr/share/zoneinfo).
|
||||
When updating the OS do not forget to update any chroot areas as well. See your
|
||||
OS's documentation for more details.
|
||||
|
||||
The local timezone conversion rules can also be done on a individual basis by
|
||||
setting the TZ environment variable appropriately. See your OS's documentation
|
||||
for more details.
|
||||
|
||||
Q: Why do we get the following warning at run time:
|
||||
|
||||
kernel: process `named' is using obsolete setsockopt SO_BSDCOMPAT
|
||||
|
||||
A: The early Linux kernels broke sendto() by having it return that a ICMP
|
||||
unreachable had be received for non connected UDP sockets. This made non
|
||||
connected UDP sockets work like connected UDP socket which is fine when you are
|
||||
only talking to one destination. Named however talks to multiple destinations
|
||||
and it caused problems.
|
||||
|
||||
Rather than fix sendto() to just have BSD behaviour they added SO_BSDCOMPAT to
|
||||
turn BSD behaviour on/off on a per socket basis.
|
||||
|
||||
Later they decided to make BSD behaviour the default and to aggressively track
|
||||
down applications that used SO_BSDCOMPAT by issuing a warning. This is the sort
|
||||
of things vendors do in alpha/beta stages of a release so that their code is
|
||||
clean. They then turn the warning *off* for release code.
|
||||
|
||||
We still have customers that have kernels that require SO_BSDCOMPAT to operate.
|
||||
We therefore cannot remove the setsockopt(SO_BSDCOMPAT) call.
|
||||
|
||||
Now most/all portable applications that use SO_BSDCOMPAT use it conditionally
|
||||
manner so just removing SO_BSDCOMPAT from the header file would be safe as long
|
||||
as the binary was not to be moved between systems. BIND's use is conditional.
|
||||
|
||||
In short, the Linux developers should either, remove the #define for
|
||||
SO_BSDCOMPAT, and/or remove the warning.
|
||||
|
||||
Q: Isn't "make install" supposed to generate a default named.conf?
|
||||
|
||||
A: Short Answer: No.
|
||||
|
||||
Long Answer: There really isn't a default configuration which fits any site
|
||||
perfectly. There are lots of decisions that need to be made and there is no
|
||||
consensus on what the defaults should be. For example FreeBSD uses /etc/namedb
|
||||
as the location where the configuration files for named are stored. Others use
|
||||
/var/named.
|
||||
|
||||
What addresses to listen on? For a laptop on the move a lot you may only want
|
||||
to listen on the loop back interfaces.
|
||||
|
||||
Who do you offer recursive service to? Is there are firewall to consider? If so
|
||||
is it stateless or stateful. Are you directly on the Internet? Are you on a
|
||||
private network? Are you on a NAT'd network? The answers to all these questions
|
||||
change how you configure even a caching name server.
|
||||
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
<?xml-stylesheet href="common.css" type="text/css"?>
|
||||
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" []>
|
||||
<!--
|
||||
- Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -18,26 +17,10 @@
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
|
||||
<!-- $Id: FAQ.xml,v 1.4.6.8 2007/02/05 05:23:52 marka Exp $ -->
|
||||
<!-- $Id: FAQ.xml,v 1.4.6.3 2005/11/02 22:53:51 marka Exp $ -->
|
||||
|
||||
<article class="faq">
|
||||
<title>Frequently Asked Questions about BIND 9</title>
|
||||
<articleinfo>
|
||||
<copyright>
|
||||
<year>2004</year>
|
||||
<year>2005</year>
|
||||
<year>2006</year>
|
||||
<year>2007</year>
|
||||
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
|
||||
</copyright>
|
||||
<copyright>
|
||||
<year>2000</year>
|
||||
<year>2001</year>
|
||||
<year>2002</year>
|
||||
<year>2003</year>
|
||||
<holder>Internet Software Consortium.</holder>
|
||||
</copyright>
|
||||
</articleinfo>
|
||||
<qandaset defaultlabel='qanda'>
|
||||
<qandaentry>
|
||||
<question>
|
||||
@@ -81,26 +64,6 @@
|
||||
</answer>
|
||||
</qandaentry>
|
||||
|
||||
<qandaentry>
|
||||
<question>
|
||||
<para>
|
||||
Why do I get the following errors:
|
||||
<programlisting>general: errno2result.c:109: unexpected error:
|
||||
general: unable to convert errno to isc_result: 14: Bad address
|
||||
client: UDP client handler shutting down due to fatal receive error: unexpected error</programlisting>
|
||||
</para>
|
||||
</question>
|
||||
<answer>
|
||||
<para>
|
||||
This is the result of a Linux kernel bug.
|
||||
</para>
|
||||
<para>
|
||||
See:
|
||||
<ulink url="http://marc.theaimsgroup.com/?l=linux-netdev&m=113081708031466&w=2">http://marc.theaimsgroup.com/?l=linux-netdev&m=113081708031466&w=2</ulink>
|
||||
</para>
|
||||
</answer>
|
||||
</qandaentry>
|
||||
|
||||
<qandaentry>
|
||||
<question>
|
||||
<para>
|
||||
@@ -142,10 +105,6 @@ example.com. 86400 IN SOA ns hostmaster ( 1 3600 1800 1814400 3600 )</programlis
|
||||
is not cumulative; if each process is using 10M of memory,
|
||||
only a total of 10M is used.
|
||||
</para>
|
||||
<para>
|
||||
Newer versions of Linux's ps command hide the individual threads
|
||||
and require -L to display them.
|
||||
</para>
|
||||
</answer>
|
||||
</qandaentry>
|
||||
|
||||
@@ -187,17 +146,17 @@ example.com. 86400 IN SOA ns hostmaster ( 1 3600 1800 1814400 3600 )</programlis
|
||||
<qandaentry>
|
||||
<question>
|
||||
<para>
|
||||
How do I produce a usable core file from a multi-threaded
|
||||
How do I produce a usable core file from a multithreaded
|
||||
named on Linux?
|
||||
</para>
|
||||
</question>
|
||||
<answer>
|
||||
<para>
|
||||
If the Linux kernel is 2.4.7 or newer, multi-threaded core
|
||||
If the Linux kernel is 2.4.7 or newer, multithreaded core
|
||||
dumps are usable (that is, the correct thread is dumped).
|
||||
Otherwise, if using a 2.2 kernel, apply the kernel patch
|
||||
found in contrib/linux/coredump-patch and rebuild the kernel.
|
||||
This patch will cause multi-threaded programs to dump the
|
||||
This patch will cause multithreaded programs to dump the
|
||||
correct thread.
|
||||
</para>
|
||||
</answer>
|
||||
@@ -557,7 +516,7 @@ Master 10.0.1.1:
|
||||
};
|
||||
view "external" {
|
||||
match-clients { key external; any; };
|
||||
server 10.0.1.2 { keys external; };
|
||||
server 10.0.0.2 { keys external; };
|
||||
recursion no;
|
||||
...
|
||||
};
|
||||
@@ -573,7 +532,7 @@ Slave 10.0.1.2:
|
||||
};
|
||||
view "external" {
|
||||
match-clients { key external; any; };
|
||||
server 10.0.1.1 { keys external; };
|
||||
server 10.0.0.1 { keys external; };
|
||||
recursion no;
|
||||
...
|
||||
};</programlisting>
|
||||
@@ -645,7 +604,7 @@ named-checkzone example.com tmp</programlisting>
|
||||
</informalexample>
|
||||
<para>
|
||||
A CNAME record cannot exist with the same name as another record
|
||||
except for the DNSSEC records which prove its existence (NSEC).
|
||||
except for the DNSSEC records which prove its existance (NSEC).
|
||||
</para>
|
||||
<para>
|
||||
RFC 1034, Section 3.6.2: <quote>If a CNAME RR is present at a node,
|
||||
@@ -769,7 +728,7 @@ Master 10.0.1.1:
|
||||
contains leading white space (tab/space) but the is no
|
||||
current record owner name to inherit the name from. Usually
|
||||
this is the result of putting white space before a comment.
|
||||
Forgetting the "@" for the SOA record or indenting the master
|
||||
Forgeting the "@" for the SOA record or indenting the master
|
||||
file.
|
||||
</para>
|
||||
</answer>
|
||||
@@ -783,7 +742,7 @@ Master 10.0.1.1:
|
||||
</question>
|
||||
<answer>
|
||||
<para>
|
||||
You are running chrooted (-t) and have not supplied local timezone
|
||||
You are running chrooted (-t) and have not supplied local timzone
|
||||
information in the chroot area.
|
||||
</para>
|
||||
<simplelist>
|
||||
@@ -946,7 +905,7 @@ zone "example.net" {
|
||||
<qandaentry>
|
||||
<question>
|
||||
<para>
|
||||
How do I integrate BIND 9 and Solaris SMF
|
||||
How do I intergrate BIND 9 and Solaris SMF
|
||||
</para>
|
||||
</question>
|
||||
<answer>
|
||||
@@ -978,7 +937,7 @@ zone "example.net" {
|
||||
You would have to add both the CNAME and address records
|
||||
(A/AAAA) as glue to the parent zone and have CNAMEs be
|
||||
followed when doing additional section processing to make
|
||||
it work. No nameserver implementation supports either of
|
||||
it work. No namesever implementation supports either of
|
||||
these requirements.
|
||||
</para>
|
||||
</answer>
|
||||
@@ -997,7 +956,7 @@ zone "example.net" {
|
||||
space you are using then you have failed to follow RFC 1918
|
||||
usage rules and are leaking queries to the Internet. You
|
||||
should establish your own zones for these addresses to prevent
|
||||
you querying the Internet's name servers for these addresses.
|
||||
you quering the Internet's name servers for these addresses.
|
||||
Please see <ulink url="http://as112.net/">http://as112.net/</ulink>
|
||||
for details of the problems you are causing and the counter
|
||||
measures that have had to be deployed.
|
||||
@@ -1038,318 +997,9 @@ empty:
|
||||
1 3600 1200 604800 10800 )
|
||||
@ 10800 IN NS <name-of-server>.</programlisting>
|
||||
</informalexample>
|
||||
<para>
|
||||
<note>
|
||||
Future versions of named are likely to do this automatically.
|
||||
</note>
|
||||
</para>
|
||||
</answer>
|
||||
</qandaentry>
|
||||
|
||||
<qandaentry>
|
||||
<question>
|
||||
<para>
|
||||
I'm running BIND on Red Hat Enterprise Linux or Fedora Core -
|
||||
</para>
|
||||
<para>
|
||||
Why can't named update slave zone database files?
|
||||
</para>
|
||||
<para>
|
||||
Why can't named create DDNS journal files or update
|
||||
the master zones from journals?
|
||||
</para>
|
||||
<para>
|
||||
Why can't named create custom log files?
|
||||
</para>
|
||||
</question>
|
||||
|
||||
<answer>
|
||||
<para>
|
||||
Red Hat Security Enhanced Linux (SELinux) policy security
|
||||
protections :
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Red Hat have adopted the National Security Agency's
|
||||
SELinux security policy ( see http://www.nsa.gov/selinux
|
||||
) and recommendations for BIND security , which are more
|
||||
secure than running named in a chroot and make use of
|
||||
the bind-chroot environment unnecessary .
|
||||
</para>
|
||||
|
||||
<para>
|
||||
By default, named is not allowed by the SELinux policy
|
||||
to write, create or delete any files EXCEPT in these
|
||||
directories:
|
||||
<informalexample>
|
||||
<programlisting>
|
||||
$ROOTDIR/var/named/slaves
|
||||
$ROOTDIR/var/named/data
|
||||
$ROOTDIR/var/tmp
|
||||
</programlisting>
|
||||
</informalexample>
|
||||
where $ROOTDIR may be set in /etc/sysconfig/named if
|
||||
bind-chroot is installed.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The SELinux policy particularly does NOT allow named to modify
|
||||
the $ROOTDIR/var/named directory, the default location for master
|
||||
zone database files.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
SELinux policy overrules file access permissions - so
|
||||
even if all the files under /var/named have ownership
|
||||
named:named and mode rw-rw-r--, named will still not be
|
||||
able to write or create files except in the directories
|
||||
above, with SELinux in Enforcing mode.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
So, to allow named to update slave or DDNS zone files,
|
||||
it is best to locate them in $ROOTDIR/var/named/slaves,
|
||||
with named.conf zone statements such as:
|
||||
<informalexample>
|
||||
<programlisting>
|
||||
zone "slave.zone." IN {
|
||||
type slave;
|
||||
file "slaves/slave.zone.db";
|
||||
...
|
||||
};
|
||||
zone "ddns.zone." IN {
|
||||
type master;
|
||||
allow-updates {...};
|
||||
file "slaves/ddns.zone.db";
|
||||
};
|
||||
</programlisting>
|
||||
</informalexample>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
To allow named to create its cache dump and statistics
|
||||
files, for example, you could use named.conf options
|
||||
statements such as:
|
||||
<informalexample>
|
||||
<programlisting>
|
||||
options {
|
||||
...
|
||||
dump-file "/var/named/data/cache_dump.db";
|
||||
statistics-file "/var/named/data/named_stats.txt";
|
||||
...
|
||||
};
|
||||
</programlisting>
|
||||
</informalexample>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
You can also tell SELinux to allow named to update any
|
||||
zone database files, by setting the SELinux tunable boolean
|
||||
parameter 'named_write_master_zones=1', using the
|
||||
system-config-securitylevel GUI, using the 'setsebool'
|
||||
command, or in /etc/selinux/targeted/booleans.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
You can disable SELinux protection for named entirely by
|
||||
setting the 'named_disable_trans=1' SELinux tunable boolean
|
||||
parameter.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The SELinux named policy defines these SELinux contexts for named:
|
||||
<informalexample>
|
||||
<programlisting>
|
||||
named_zone_t : for zone database files - $ROOTDIR/var/named/*
|
||||
named_conf_t : for named configuration files - $ROOTDIR/etc/{named,rndc}.*
|
||||
named_cache_t: for files modifiable by named - $ROOTDIR/var/{tmp,named/{slaves,data}}
|
||||
</programlisting>
|
||||
</informalexample>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
If you want to retain use of the SELinux policy for named,
|
||||
and put named files in different locations, you can do
|
||||
so by changing the context of the custom file locations
|
||||
.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
To create a custom configuration file location, e.g.
|
||||
'/root/named.conf', to use with the 'named -c' option,
|
||||
do:
|
||||
<informalexample>
|
||||
<programlisting>
|
||||
# chcon system_u:object_r:named_conf_t /root/named.conf
|
||||
</programlisting>
|
||||
</informalexample>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
To create a custom modifiable named data location, e.g.
|
||||
'/var/log/named' for a log file, do:
|
||||
<informalexample>
|
||||
<programlisting>
|
||||
# chcon system_u:object_r:named_cache_t /var/log/named
|
||||
</programlisting>
|
||||
</informalexample>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
To create a custom zone file location, e.g. /root/zones/, do:
|
||||
<informalexample>
|
||||
<programlisting>
|
||||
# chcon system_u:object_r:named_zone_t /root/zones/{.,*}
|
||||
</programlisting>
|
||||
</informalexample>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
See these man-pages for more information : selinux(8),
|
||||
named_selinux(8), chcon(1), setsebool(8)
|
||||
</para>
|
||||
</answer>
|
||||
</qandaentry>
|
||||
|
||||
<qandaentry>
|
||||
<question>
|
||||
<para>
|
||||
I want to forward all DNS queries from my caching nameserver to
|
||||
another server. But there are some domains which have to be
|
||||
served locally, via rbldnsd.
|
||||
</para>
|
||||
<para>
|
||||
How do I achieve this ?
|
||||
</para>
|
||||
</question>
|
||||
<answer>
|
||||
<programlisting>
|
||||
options {
|
||||
forward only;
|
||||
forwarders { <ip.of.primary.nameserver>; };
|
||||
};
|
||||
|
||||
zone "sbl-xbl.spamhaus.org" {
|
||||
type forward; forward only;
|
||||
forwarders { <ip.of.rbldns.server> port 530; };
|
||||
};
|
||||
|
||||
zone "list.dsbl.org" {
|
||||
type forward; forward only;
|
||||
forwarders { <ip.of.rbldns.server> port 530; };
|
||||
};
|
||||
</programlisting>
|
||||
</answer>
|
||||
</qandaentry>
|
||||
|
||||
<qandaentry>
|
||||
<question>
|
||||
<para>
|
||||
Will named be affected by the 2007 changes to daylight savings
|
||||
rules in the US.
|
||||
</para>
|
||||
</question>
|
||||
<answer>
|
||||
<para>
|
||||
No, so long as the machines internal clock (as reported
|
||||
by "date -u") remains at UTC. The only visible change
|
||||
if you fail to upgrade your OS, if you are in a affected
|
||||
area, will be that log messages will be a hour out during
|
||||
the period where the old rules do not match the new rules.
|
||||
</para>
|
||||
<para>
|
||||
For most OS's this change just means that you need to
|
||||
update the conversion rules from UTC to local time.
|
||||
Normally this involves updating a file in /etc (which
|
||||
sets the default timezone for the machine) and possibly
|
||||
a directory which has all the conversion rules for the
|
||||
world (e.g. /usr/share/zoneinfo). When updating the OS
|
||||
do not forget to update any chroot areas as well.
|
||||
See your OS's documentation for more details.
|
||||
</para>
|
||||
<para>
|
||||
The local timezone conversion rules can also be done on
|
||||
a individual basis by setting the TZ environment variable
|
||||
appropriately. See your OS's documentation for more
|
||||
details.
|
||||
</para>
|
||||
</answer>
|
||||
</qandaentry>
|
||||
|
||||
<qandaentry>
|
||||
<question>
|
||||
<para>
|
||||
Why do we get the following warning at run time:
|
||||
<programlisting>kernel: process `named' is using obsolete setsockopt SO_BSDCOMPAT</programlisting>
|
||||
</para>
|
||||
</question>
|
||||
<answer>
|
||||
<para>
|
||||
The early Linux kernels broke sendto() by having it return
|
||||
that a ICMP unreachable had be received for non connected
|
||||
UDP sockets. This made non connected UDP sockets work like
|
||||
connected UDP socket which is fine when you are only talking
|
||||
to one destination. Named however talks to multiple
|
||||
destinations and it caused problems.
|
||||
</para>
|
||||
<para>
|
||||
Rather than fix sendto() to just have BSD behaviour they added
|
||||
SO_BSDCOMPAT to turn BSD behaviour on/off on a per socket basis.
|
||||
</para>
|
||||
<para>
|
||||
Later they decided to make BSD behaviour the default and
|
||||
to aggressively track down applications that used SO_BSDCOMPAT
|
||||
by issuing a warning. This is the sort of things vendors
|
||||
do in alpha/beta stages of a release so that their code is
|
||||
clean. They then turn the warning *off* for release code.
|
||||
</para>
|
||||
<para>
|
||||
We still have customers that have kernels that require
|
||||
SO_BSDCOMPAT to operate. We therefore cannot remove the
|
||||
setsockopt(SO_BSDCOMPAT) call.
|
||||
</para>
|
||||
<para>
|
||||
Now most/all portable applications that use SO_BSDCOMPAT use it
|
||||
conditionally manner so just removing SO_BSDCOMPAT from the
|
||||
header file would be safe as long as the binary was not to
|
||||
be moved between systems. BIND's use is conditional.
|
||||
</para>
|
||||
<para>
|
||||
In short, the Linux developers should either, remove the #define for
|
||||
SO_BSDCOMPAT, and/or remove the warning.
|
||||
</para>
|
||||
</answer>
|
||||
</qandaentry>
|
||||
|
||||
<qandaentry>
|
||||
<question>
|
||||
<para>
|
||||
Isn't "make install" supposed to generate a default named.conf?
|
||||
</para>
|
||||
</question>
|
||||
<answer>
|
||||
<para>
|
||||
Short Answer: No.
|
||||
</para>
|
||||
<para>
|
||||
Long Answer: There really isn't a default configuration which fits
|
||||
any site perfectly. There are lots of decisions that need to
|
||||
be made and there is no consensus on what the defaults should be.
|
||||
For example FreeBSD uses /etc/namedb as the location where the
|
||||
configuration files for named are stored. Others use /var/named.
|
||||
</para>
|
||||
<para>
|
||||
What addresses to listen on? For a laptop on the move a lot
|
||||
you may only want to listen on the loop back interfaces.
|
||||
</para>
|
||||
<para>
|
||||
Who do you offer recursive service to? Is there are firewall
|
||||
to consider? If so is it stateless or stateful. Are you
|
||||
directly on the Internet? Are you on a private network? Are
|
||||
you on a NAT'd network? The answers
|
||||
to all these questions change how you configure even a
|
||||
caching name server.
|
||||
</para>
|
||||
</answer>
|
||||
</qandaentry>
|
||||
|
||||
|
||||
+4
-5
@@ -1,5 +1,5 @@
|
||||
# Copyright (C) 2004, 2006, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 1998-2003 Internet Software Consortium.
|
||||
# Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 1998-2002 Internet Software Consortium.
|
||||
#
|
||||
# Permission to use, copy, modify, and distribute this software for any
|
||||
# purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -13,7 +13,7 @@
|
||||
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
# PERFORMANCE OF THIS SOFTWARE.
|
||||
|
||||
# $Id: Makefile.in,v 1.41.2.2.2.6 2007/01/18 00:06:04 marka Exp $
|
||||
# $Id: Makefile.in,v 1.41.2.2.2.2 2004/03/08 04:04:12 marka Exp $
|
||||
|
||||
srcdir = @srcdir@
|
||||
VPATH = @srcdir@
|
||||
@@ -44,8 +44,7 @@ maintainer-clean::
|
||||
rm -f configure
|
||||
|
||||
installdirs:
|
||||
$(SHELL) ${top_srcdir}/mkinstalldirs ${DESTDIR}${bindir} \
|
||||
${DESTDIR}${localstatedir}/run ${DESTDIR}${sysconfdir}
|
||||
$(SHELL) ${top_srcdir}/mkinstalldirs ${DESTDIR}${bindir}
|
||||
|
||||
install:: isc-config.sh installdirs
|
||||
${INSTALL_SCRIPT} isc-config.sh ${DESTDIR}${bindir}
|
||||
|
||||
@@ -194,9 +194,6 @@ BIND 9.2.0
|
||||
|
||||
--with-libtool does not work on AIX.
|
||||
|
||||
--with-libtool does not work on SunOS 4. configure
|
||||
requires "printf" which is not available.
|
||||
|
||||
A bug in the Windows 2000 DNS server can cause zone transfers
|
||||
from a BIND 9 server to a W2K server to fail. For details,
|
||||
see the "Zone Transfers" section in doc/misc/migration.
|
||||
@@ -229,7 +226,7 @@ Building
|
||||
Red Hat Linux 7.1
|
||||
Debian GNU/Linux 2.2 and 3.0
|
||||
Mandrake 8.1
|
||||
OpenBSD 2.6, 2.8, 2.9, 3.1, 3.6, 3.8
|
||||
OpenBSD 2.6, 2.8, 2.9
|
||||
UnixWare 7.1.1
|
||||
HP-UX 10.20
|
||||
BSD/OS 4.2
|
||||
@@ -268,23 +265,10 @@ Building
|
||||
Enable DNSSEC signature chasing support in dig.
|
||||
-DDIG_SIGCHASE=1 (sets -DDIG_SIGCHASE_TD=1 and
|
||||
-DDIG_SIGCHASE_BU=1)
|
||||
Disable dropping queries from particular well known ports.
|
||||
-DNS_CLIENT_DROPPORT=0
|
||||
|
||||
LDFLAGS
|
||||
Linker flags. Defaults to empty string.
|
||||
|
||||
The following need to be set when cross compiling.
|
||||
|
||||
BUILD_CC
|
||||
The native C compiler.
|
||||
BUILD_CFLAGS (optional)
|
||||
BUILD_CPPFLAGS (optional)
|
||||
Possible Settings:
|
||||
-DNEED_OPTARG=1 (optarg is not declared in <unistd.h>)
|
||||
BUILD_LDFLAGS (optional)
|
||||
BUILD_LIBS (optional)
|
||||
|
||||
To build shared libraries, specify "--with-libtool" on the
|
||||
configure command line.
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000-2002 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: check-tool.c,v 1.4.12.9 2007/01/18 00:06:04 marka Exp $ */
|
||||
/* $Id: check-tool.c,v 1.4.12.7 2004/11/30 01:15:40 marka Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000-2002 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: check-tool.h,v 1.2.12.7 2007/01/18 00:06:04 marka Exp $ */
|
||||
/* $Id: check-tool.h,v 1.2.12.5 2004/03/08 04:04:13 marka Exp $ */
|
||||
|
||||
#ifndef CHECK_TOOL_H
|
||||
#define CHECK_TOOL_H
|
||||
|
||||
+12
-30
@@ -1,5 +1,5 @@
|
||||
.\" Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
.\" Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2000-2002 Internet Software Consortium.
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and distribute this software for any
|
||||
.\" purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -13,17 +13,14 @@
|
||||
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
.\" PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.\" $Id: named-checkconf.8,v 1.11.12.11 2007/01/18 04:20:22 marka Exp $
|
||||
.\" $Id: named-checkconf.8,v 1.11.12.7 2005/10/13 02:33:41 marka Exp $
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
.\" Title: named\-checkconf
|
||||
.\" Author:
|
||||
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
|
||||
.\" Date: June 14, 2000
|
||||
.\" Manual: BIND9
|
||||
.\" Source: BIND9
|
||||
.\"
|
||||
.\" ** You probably do not want to edit this file directly **
|
||||
.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
|
||||
.\" Instead of manually editing it, you probably should edit the DocBook XML
|
||||
.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
|
||||
.TH "NAMED\-CHECKCONF" "8" "June 14, 2000" "BIND9" "BIND9"
|
||||
.\" disable hyphenation
|
||||
.nh
|
||||
@@ -39,37 +36,27 @@ named\-checkconf \- named configuration file syntax checking tool
|
||||
\fBnamed\-checkconf\fR
|
||||
checks the syntax, but not the semantics, of a named configuration file.
|
||||
.SH "OPTIONS"
|
||||
.PP
|
||||
.TP
|
||||
\-t \fIdirectory\fR
|
||||
.RS 4
|
||||
chroot to
|
||||
\fIdirectory\fR
|
||||
so that include directives in the configuration file are processed as if run by a similarly chrooted named.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-v
|
||||
.RS 4
|
||||
Print the version of the
|
||||
\fBnamed\-checkconf\fR
|
||||
program and exit.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-z
|
||||
.RS 4
|
||||
Perform a check load the master zonefiles found in
|
||||
\fInamed.conf\fR.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-j
|
||||
.RS 4
|
||||
When loading a zonefile read the journal if it exists.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
filename
|
||||
.RS 4
|
||||
The name of the configuration file to be checked. If not specified, it defaults to
|
||||
\fI/etc/named.conf\fR.
|
||||
.RE
|
||||
.SH "RETURN VALUES"
|
||||
.PP
|
||||
\fBnamed\-checkconf\fR
|
||||
@@ -81,8 +68,3 @@ BIND 9 Administrator Reference Manual.
|
||||
.SH "AUTHOR"
|
||||
.PP
|
||||
Internet Systems Consortium
|
||||
.SH "COPYRIGHT"
|
||||
Copyright \(co 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
.br
|
||||
Copyright \(co 2000\-2003 Internet Software Consortium.
|
||||
.br
|
||||
|
||||
+23
-23
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
* Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2002 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: named-checkconf.c,v 1.12.12.13 2007/01/18 00:06:04 marka Exp $ */
|
||||
/* $Id: named-checkconf.c,v 1.12.12.9 2005/03/03 06:33:38 marka Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -60,9 +60,9 @@ usage(void) {
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
directory_callback(const char *clausename, const cfg_obj_t *obj, void *arg) {
|
||||
directory_callback(const char *clausename, cfg_obj_t *obj, void *arg) {
|
||||
isc_result_t result;
|
||||
const char *directory;
|
||||
char *directory;
|
||||
|
||||
REQUIRE(strcasecmp("directory", clausename) == 0);
|
||||
|
||||
@@ -85,18 +85,18 @@ directory_callback(const char *clausename, const cfg_obj_t *obj, void *arg) {
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
configure_zone(const char *vclass, const char *view,
|
||||
const cfg_obj_t *zconfig, isc_mem_t *mctx)
|
||||
configure_zone(const char *vclass, const char *view, cfg_obj_t *zconfig,
|
||||
isc_mem_t *mctx)
|
||||
{
|
||||
isc_result_t result;
|
||||
const char *zclass;
|
||||
const char *zname;
|
||||
const char *zfile;
|
||||
const cfg_obj_t *zoptions = NULL;
|
||||
const cfg_obj_t *classobj = NULL;
|
||||
const cfg_obj_t *typeobj = NULL;
|
||||
const cfg_obj_t *fileobj = NULL;
|
||||
const cfg_obj_t *dbobj = NULL;
|
||||
cfg_obj_t *zoptions = NULL;
|
||||
cfg_obj_t *classobj = NULL;
|
||||
cfg_obj_t *typeobj = NULL;
|
||||
cfg_obj_t *fileobj = NULL;
|
||||
cfg_obj_t *dbobj = NULL;
|
||||
|
||||
zname = cfg_obj_asstring(cfg_tuple_get(zconfig, "name"));
|
||||
classobj = cfg_tuple_get(zconfig, "class");
|
||||
@@ -125,12 +125,12 @@ configure_zone(const char *vclass, const char *view,
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
configure_view(const char *vclass, const char *view, const cfg_obj_t *config,
|
||||
const cfg_obj_t *vconfig, isc_mem_t *mctx)
|
||||
configure_view(const char *vclass, const char *view, cfg_obj_t *config,
|
||||
cfg_obj_t *vconfig, isc_mem_t *mctx)
|
||||
{
|
||||
const cfg_listelt_t *element;
|
||||
const cfg_obj_t *voptions;
|
||||
const cfg_obj_t *zonelist;
|
||||
cfg_listelt_t *element;
|
||||
cfg_obj_t *voptions;
|
||||
cfg_obj_t *zonelist;
|
||||
isc_result_t result = ISC_R_SUCCESS;
|
||||
isc_result_t tresult;
|
||||
|
||||
@@ -148,7 +148,7 @@ configure_view(const char *vclass, const char *view, const cfg_obj_t *config,
|
||||
element != NULL;
|
||||
element = cfg_list_next(element))
|
||||
{
|
||||
const cfg_obj_t *zconfig = cfg_listelt_value(element);
|
||||
cfg_obj_t *zconfig = cfg_listelt_value(element);
|
||||
tresult = configure_zone(vclass, view, zconfig, mctx);
|
||||
if (tresult != ISC_R_SUCCESS)
|
||||
result = tresult;
|
||||
@@ -158,11 +158,11 @@ configure_view(const char *vclass, const char *view, const cfg_obj_t *config,
|
||||
|
||||
|
||||
static isc_result_t
|
||||
load_zones_fromconfig(const cfg_obj_t *config, isc_mem_t *mctx) {
|
||||
const cfg_listelt_t *element;
|
||||
const cfg_obj_t *classobj;
|
||||
const cfg_obj_t *views;
|
||||
const cfg_obj_t *vconfig;
|
||||
load_zones_fromconfig(cfg_obj_t *config, isc_mem_t *mctx) {
|
||||
cfg_listelt_t *element;
|
||||
cfg_obj_t *classobj;
|
||||
cfg_obj_t *views;
|
||||
cfg_obj_t *vconfig;
|
||||
const char *vclass;
|
||||
isc_result_t result = ISC_R_SUCCESS;
|
||||
isc_result_t tresult;
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
|
||||
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.0//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.0/docbookx.dtd"
|
||||
[<!ENTITY mdash "—">]>
|
||||
<!--
|
||||
- Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
- Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2002 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
- purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -18,7 +18,7 @@
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
|
||||
<!-- $Id: named-checkconf.docbook,v 1.3.2.1.8.10 2007/01/29 22:14:52 sra Exp $ -->
|
||||
<!-- $Id: named-checkconf.docbook,v 1.3.2.1.8.7 2005/05/12 21:35:56 sra Exp $ -->
|
||||
|
||||
<refentry>
|
||||
<refentryinfo>
|
||||
@@ -35,14 +35,12 @@
|
||||
<copyright>
|
||||
<year>2004</year>
|
||||
<year>2005</year>
|
||||
<year>2007</year>
|
||||
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
|
||||
</copyright>
|
||||
<copyright>
|
||||
<year>2000</year>
|
||||
<year>2001</year>
|
||||
<year>2002</year>
|
||||
<year>2003</year>
|
||||
<holder>Internet Software Consortium.</holder>
|
||||
</copyright>
|
||||
</docinfo>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<!--
|
||||
- Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
- Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2002 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
- purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -14,15 +14,15 @@
|
||||
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
<!-- $Id: named-checkconf.html,v 1.5.2.1.4.19 2007/01/26 23:27:33 marka Exp $ -->
|
||||
<!-- $Id: named-checkconf.html,v 1.5.2.1.4.12 2005/10/13 02:33:42 marka Exp $ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>named-checkconf</title>
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.69.1">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en">
|
||||
<a name="id2476275"></a><div class="titlepage"></div>
|
||||
<a name="id2463721"></a><div class="titlepage"></div>
|
||||
<div class="refnamediv">
|
||||
<h2>Name</h2>
|
||||
<p><span class="application">named-checkconf</span> — named configuration file syntax checking tool</p>
|
||||
@@ -32,14 +32,14 @@
|
||||
<div class="cmdsynopsis"><p><code class="command">named-checkconf</code> [<code class="option">-v</code>] [<code class="option">-j</code>] [<code class="option">-t <em class="replaceable"><code>directory</code></em></code>] {filename} [<code class="option">-z</code>]</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543374"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2525865"></a><h2>DESCRIPTION</h2>
|
||||
<p>
|
||||
<span><strong class="command">named-checkconf</strong></span> checks the syntax, but not
|
||||
the semantics, of a named configuration file.
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543387"></a><h2>OPTIONS</h2>
|
||||
<a name="id2525878"></a><h2>OPTIONS</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term">-t <em class="replaceable"><code>directory</code></em></span></dt>
|
||||
<dd><p>
|
||||
@@ -69,21 +69,21 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543479"></a><h2>RETURN VALUES</h2>
|
||||
<a name="id2525970"></a><h2>RETURN VALUES</h2>
|
||||
<p>
|
||||
<span><strong class="command">named-checkconf</strong></span> returns an exit status of 1 if
|
||||
errors were detected and 0 otherwise.
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543492"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2525982"></a><h2>SEE ALSO</h2>
|
||||
<p>
|
||||
<span class="citerefentry"><span class="refentrytitle">named</span>(8)</span>,
|
||||
<em class="citetitle">BIND 9 Administrator Reference Manual</em>.
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543515"></a><h2>AUTHOR</h2>
|
||||
<a name="id2526006"></a><h2>AUTHOR</h2>
|
||||
<p>
|
||||
<span class="corpauthor">Internet Systems Consortium</span>
|
||||
</p>
|
||||
|
||||
+21
-55
@@ -1,5 +1,5 @@
|
||||
.\" Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
.\" Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2000-2002 Internet Software Consortium.
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and distribute this software for any
|
||||
.\" purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -13,17 +13,14 @@
|
||||
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
.\" PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.\" $Id: named-checkzone.8,v 1.11.2.1.8.14 2007/01/18 04:20:22 marka Exp $
|
||||
.\" $Id: named-checkzone.8,v 1.11.2.1.8.8 2005/10/13 02:33:41 marka Exp $
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
.\" Title: named\-checkzone
|
||||
.\" Author:
|
||||
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
|
||||
.\" Date: June 13, 2000
|
||||
.\" Manual: BIND9
|
||||
.\" Source: BIND9
|
||||
.\"
|
||||
.\" ** You probably do not want to edit this file directly **
|
||||
.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
|
||||
.\" Instead of manually editing it, you probably should edit the DocBook XML
|
||||
.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
|
||||
.TH "NAMED\-CHECKZONE" "8" "June 13, 2000" "BIND9" "BIND9"
|
||||
.\" disable hyphenation
|
||||
.nh
|
||||
@@ -43,89 +40,63 @@ does when loading a zone. This makes
|
||||
\fBnamed\-checkzone\fR
|
||||
useful for checking zone files before configuring them into a name server.
|
||||
.SH "OPTIONS"
|
||||
.PP
|
||||
.TP
|
||||
\-d
|
||||
.RS 4
|
||||
Enable debugging.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-q
|
||||
.RS 4
|
||||
Quiet mode \- exit code only.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-v
|
||||
.RS 4
|
||||
Print the version of the
|
||||
\fBnamed\-checkzone\fR
|
||||
program and exit.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-j
|
||||
.RS 4
|
||||
When loading the zone file read the journal if it exists.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-c \fIclass\fR
|
||||
.RS 4
|
||||
Specify the class of the zone. If not specified "IN" is assumed.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-k \fImode\fR
|
||||
.RS 4
|
||||
Perform
|
||||
\fB"check\-names"\fR
|
||||
\fB"check\-name"\fR
|
||||
checks with the specified failure mode. Possible modes are
|
||||
\fB"fail"\fR,
|
||||
\fB"warn"\fR
|
||||
(default) and
|
||||
\fB"ignore"\fR.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-n \fImode\fR
|
||||
.RS 4
|
||||
Specify whether NS records should be checked to see if they are addresses. Possible modes are
|
||||
\fB"fail"\fR,
|
||||
\fB"warn"\fR
|
||||
(default) and
|
||||
\fB"ignore"\fR.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-o \fIfilename\fR
|
||||
.RS 4
|
||||
Write zone output to
|
||||
\fIfilename\fR.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-t \fIdirectory\fR
|
||||
.RS 4
|
||||
chroot to
|
||||
\fIdirectory\fR
|
||||
so that include directives in the configuration file are processed as if run by a similarly chrooted named.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-w \fIdirectory\fR
|
||||
.RS 4
|
||||
chdir to
|
||||
\fIdirectory\fR
|
||||
so that relative filenames in master file $INCLUDE directives work. This is similar to the directory clause in
|
||||
\fInamed.conf\fR.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-D
|
||||
.RS 4
|
||||
Dump zone file in canonical format.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
zonename
|
||||
.RS 4
|
||||
The domain name of the zone being checked.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
filename
|
||||
.RS 4
|
||||
The name of the zone file.
|
||||
.RE
|
||||
.SH "RETURN VALUES"
|
||||
.PP
|
||||
\fBnamed\-checkzone\fR
|
||||
@@ -138,8 +109,3 @@ BIND 9 Administrator Reference Manual.
|
||||
.SH "AUTHOR"
|
||||
.PP
|
||||
Internet Systems Consortium
|
||||
.SH "COPYRIGHT"
|
||||
Copyright \(co 2004\-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
.br
|
||||
Copyright \(co 2000\-2003 Internet Software Consortium.
|
||||
.br
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
|
||||
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.0//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.0/docbookx.dtd"
|
||||
[<!ENTITY mdash "—">]>
|
||||
<!--
|
||||
- Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
- Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2002 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
- purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -18,7 +18,7 @@
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
|
||||
<!-- $Id: named-checkzone.docbook,v 1.3.2.2.8.16 2007/01/29 22:14:52 sra Exp $ -->
|
||||
<!-- $Id: named-checkzone.docbook,v 1.3.2.2.8.11 2005/05/12 21:35:57 sra Exp $ -->
|
||||
|
||||
<refentry>
|
||||
<refentryinfo>
|
||||
@@ -35,15 +35,12 @@
|
||||
<copyright>
|
||||
<year>2004</year>
|
||||
<year>2005</year>
|
||||
<year>2006</year>
|
||||
<year>2007</year>
|
||||
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
|
||||
</copyright>
|
||||
<copyright>
|
||||
<year>2000</year>
|
||||
<year>2001</year>
|
||||
<year>2002</year>
|
||||
<year>2003</year>
|
||||
<holder>Internet Software Consortium.</holder>
|
||||
</copyright>
|
||||
</docinfo>
|
||||
@@ -137,7 +134,7 @@
|
||||
<term>-k <replaceable class="parameter">mode</replaceable></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Perform <command>"check-names"</command> checks with the specified failure mode.
|
||||
Perform <command>"check-name"</command> checks with the specified failure mode.
|
||||
Possible modes are <command>"fail"</command>,
|
||||
<command>"warn"</command> (default) and
|
||||
<command>"ignore"</command>.
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<!--
|
||||
- Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
- Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2002 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
- purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -14,15 +14,15 @@
|
||||
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
<!-- $Id: named-checkzone.html,v 1.5.2.2.4.21 2007/01/26 23:27:33 marka Exp $ -->
|
||||
<!-- $Id: named-checkzone.html,v 1.5.2.2.4.13 2005/10/13 02:33:42 marka Exp $ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>named-checkzone</title>
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.69.1">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en">
|
||||
<a name="id2476275"></a><div class="titlepage"></div>
|
||||
<a name="id2463721"></a><div class="titlepage"></div>
|
||||
<div class="refnamediv">
|
||||
<h2>Name</h2>
|
||||
<p><span class="application">named-checkzone</span> — zone file validity checking tool</p>
|
||||
@@ -32,7 +32,7 @@
|
||||
<div class="cmdsynopsis"><p><code class="command">named-checkzone</code> [<code class="option">-d</code>] [<code class="option">-j</code>] [<code class="option">-q</code>] [<code class="option">-v</code>] [<code class="option">-c <em class="replaceable"><code>class</code></em></code>] [<code class="option">-k <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-n <em class="replaceable"><code>mode</code></em></code>] [<code class="option">-o <em class="replaceable"><code>filename</code></em></code>] [<code class="option">-t <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-w <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-D</code>] {zonename} {filename}</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543434"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2525922"></a><h2>DESCRIPTION</h2>
|
||||
<p>
|
||||
<span><strong class="command">named-checkzone</strong></span> checks the syntax and integrity of
|
||||
a zone file. It performs the same checks as <span><strong class="command">named</strong></span>
|
||||
@@ -42,7 +42,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543454"></a><h2>OPTIONS</h2>
|
||||
<a name="id2525942"></a><h2>OPTIONS</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term">-d</span></dt>
|
||||
<dd><p>
|
||||
@@ -67,7 +67,7 @@
|
||||
</p></dd>
|
||||
<dt><span class="term">-k <em class="replaceable"><code>mode</code></em></span></dt>
|
||||
<dd><p>
|
||||
Perform <span><strong class="command">"check-names"</strong></span> checks with the specified failure mode.
|
||||
Perform <span><strong class="command">"check-name"</strong></span> checks with the specified failure mode.
|
||||
Possible modes are <span><strong class="command">"fail"</strong></span>,
|
||||
<span><strong class="command">"warn"</strong></span> (default) and
|
||||
<span><strong class="command">"ignore"</strong></span>.
|
||||
@@ -111,14 +111,14 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543700"></a><h2>RETURN VALUES</h2>
|
||||
<a name="id2526187"></a><h2>RETURN VALUES</h2>
|
||||
<p>
|
||||
<span><strong class="command">named-checkzone</strong></span> returns an exit status of 1 if
|
||||
errors were detected and 0 otherwise.
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543713"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2526200"></a><h2>SEE ALSO</h2>
|
||||
<p>
|
||||
<span class="citerefentry"><span class="refentrytitle">named</span>(8)</span>,
|
||||
<em class="citetitle">RFC 1035</em>,
|
||||
@@ -126,7 +126,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543739"></a><h2>AUTHOR</h2>
|
||||
<a name="id2526227"></a><h2>AUTHOR</h2>
|
||||
<p>
|
||||
<span class="corpauthor">Internet Systems Consortium</span>
|
||||
</p>
|
||||
|
||||
@@ -1,113 +0,0 @@
|
||||
# Microsoft Developer Studio Project File - Name="checktool" - Package Owner=<4>
|
||||
# Microsoft Developer Studio Generated Build File, Format Version 6.00
|
||||
# ** DO NOT EDIT **
|
||||
|
||||
# TARGTYPE "Win32 (x86) Static-Link Library" 0x0104
|
||||
|
||||
CFG=checktool - Win32 Debug
|
||||
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
|
||||
!MESSAGE use the Export Makefile command and run
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "checktool.mak".
|
||||
!MESSAGE
|
||||
!MESSAGE You can specify a configuration when running NMAKE
|
||||
!MESSAGE by defining the macro CFG on the command line. For example:
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "checktool.mak" CFG="checktool - Win32 Debug"
|
||||
!MESSAGE
|
||||
!MESSAGE Possible choices for configuration are:
|
||||
!MESSAGE
|
||||
!MESSAGE "checktool - Win32 Release" (based on "Win32 (x86) Static-Link Library")
|
||||
!MESSAGE "checktool - Win32 Debug" (based on "Win32 (x86) Static-Link Library")
|
||||
!MESSAGE
|
||||
|
||||
# Begin Project
|
||||
# PROP AllowPerConfigDependencies 0
|
||||
# PROP Scc_ProjName ""
|
||||
# PROP Scc_LocalPath ""
|
||||
CPP=cl.exe
|
||||
MTL=midl.exe
|
||||
RSC=rc.exe
|
||||
|
||||
!IF "$(CFG)" == "checktool - Win32 Release"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 0
|
||||
# PROP BASE Output_Dir "Release"
|
||||
# PROP BASE Intermediate_Dir "Release"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 0
|
||||
# PROP Output_Dir "Release"
|
||||
# PROP Intermediate_Dir "Release"
|
||||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /YX /FD /c
|
||||
# ADD CPP /nologo /MD /W3 /GX /O2 /I "./" /I "../../../" /I "../include" /I "../../../lib/isc/win32" /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../../../lib/isccfg/include" /I "../../../lib/dns/include" /D "NDEBUG" /D "WIN32" /D "_WINDOWS" /D "__STDC__" /D "_MBCS" /YX /FD /c /Fdchecktool
|
||||
# SUBTRACT CPP /X
|
||||
# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
|
||||
# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32
|
||||
# ADD LINK32 /out:"Release/checktool.lib"
|
||||
|
||||
!ELSEIF "$(CFG)" == "checktool - Win32 Debug"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 1
|
||||
# PROP BASE Output_Dir "Debug"
|
||||
# PROP BASE Intermediate_Dir "Debug"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 1
|
||||
# PROP Output_Dir "Debug"
|
||||
# PROP Intermediate_Dir "Debug"
|
||||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /GZ /c
|
||||
# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "./" /I "../../../" /I "../include" /I "../../../lib/isc/win32" /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../../../lib/isccfg/include" /I "../../../lib/dns/include" /D "_DEBUG" /D "WIN32" /D "_WINDOWS" /D "__STDC__" /D "_MBCS" /FR /YX /FD /GZ /c /Fdchecktool
|
||||
# SUBTRACT CPP /X
|
||||
# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
|
||||
# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
|
||||
# ADD BASE RSC /l 0x409 /d "_DEBUG"
|
||||
# ADD RSC /l 0x409 /d "_DEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32
|
||||
# ADD LINK32 /debug out:"Debug/checktool.lib"
|
||||
|
||||
!ENDIF
|
||||
|
||||
# Begin Target
|
||||
|
||||
# Name "checktool - Win32 Release"
|
||||
# Name "checktool - Win32 Debug"
|
||||
# Begin Group "Source Files"
|
||||
|
||||
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
||||
# End Group
|
||||
# Begin Group "Header Files"
|
||||
|
||||
# PROP Default_Filter "h;hpp;hxx;hm;inl"
|
||||
# End Group
|
||||
# Begin Group "Resource Files"
|
||||
|
||||
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
|
||||
# End Group
|
||||
# Begin Group "Main Dns Lib"
|
||||
|
||||
# PROP Default_Filter "c"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\check-tool.c
|
||||
# End Source File
|
||||
# End Group
|
||||
# End Target
|
||||
# End Project
|
||||
@@ -1,29 +0,0 @@
|
||||
Microsoft Developer Studio Workspace File, Format Version 6.00
|
||||
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
|
||||
|
||||
###############################################################################
|
||||
|
||||
Project: "checktool"=".\checktool.dsp" - Package Owner=<4>
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<4>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
Global:
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<3>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
@@ -50,7 +50,7 @@ BSC32=bscmake.exe
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
|
||||
# ADD LINK32 user32.lib advapi32.lib ws2_32.lib Release/checktool.lib ../../../lib/isc/win32/Release/libisc.lib ../../../lib/dns/win32/Release/libdns.lib ../../../lib/isccfg/win32/Release/libisccfg.lib ../../../lib/bind9/win32/Release/libbind9.lib /nologo /subsystem:console /machine:I386 /out:"../../../Build/Release/named-checkconf.exe"
|
||||
# ADD LINK32 user32.lib advapi32.lib ws2_32.lib ../../../lib/isc/win32/Release/libisc.lib ../../../lib/dns/win32/Release/libdns.lib ../../../lib/isccfg/win32/Release/libisccfg.lib ../../../lib/bind9/win32/Release/libbind9.lib /nologo /subsystem:console /machine:I386 /out:"../../../Build/Release/named-checkconf.exe"
|
||||
|
||||
!ELSEIF "$(CFG)" == "namedcheckconf - Win32 Debug"
|
||||
|
||||
@@ -75,7 +75,7 @@ BSC32=bscmake.exe
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
|
||||
# ADD LINK32 user32.lib advapi32.lib ws2_32.lib Debug/checktool.lib ../../../lib/isc/win32/Debug/libisc.lib ../../../lib/dns/win32/Debug/libdns.lib ../../../lib/isccfg/win32/Debug/libisccfg.lib ../../../lib/bind9/win32/Debug/libbind9.lib ../../../lib/bind9/win32/Debug/libbind9.lib /nologo /subsystem:console /debug /machine:I386 /out:"../../../Build/Debug/named-checkconf.exe" /pdbtype:sept
|
||||
# ADD LINK32 user32.lib advapi32.lib ws2_32.lib ../../../lib/isc/win32/Debug/libisc.lib ../../../lib/dns/win32/Debug/libdns.lib ../../../lib/isccfg/win32/Debug/libisccfg.lib ../../../lib/bind9/win32/Debug/libbind9.lib ../../../lib/bind9/win32/Debug/libbind9.lib /nologo /subsystem:console /debug /machine:I386 /out:"../../../Build/Debug/named-checkconf.exe" /pdbtype:sept
|
||||
|
||||
!ENDIF
|
||||
|
||||
@@ -88,6 +88,10 @@ LINK32=link.exe
|
||||
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE="..\check-tool.c"
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE="..\named-checkconf.c"
|
||||
# End Source File
|
||||
# End Group
|
||||
|
||||
@@ -28,81 +28,6 @@ NULL=nul
|
||||
CPP=cl.exe
|
||||
RSC=rc.exe
|
||||
|
||||
!IF "$(CFG)" == "namedcheckconf - Win32 Release"
|
||||
_VC_MANIFEST_INC=0
|
||||
_VC_MANIFEST_BASENAME=__VC80
|
||||
!ELSE
|
||||
_VC_MANIFEST_INC=1
|
||||
_VC_MANIFEST_BASENAME=__VC80.Debug
|
||||
!ENDIF
|
||||
|
||||
####################################################
|
||||
# Specifying name of temporary resource file used only in incremental builds:
|
||||
|
||||
!if "$(_VC_MANIFEST_INC)" == "1"
|
||||
_VC_MANIFEST_AUTO_RES=$(_VC_MANIFEST_BASENAME).auto.res
|
||||
!else
|
||||
_VC_MANIFEST_AUTO_RES=
|
||||
!endif
|
||||
|
||||
####################################################
|
||||
# _VC_MANIFEST_EMBED_EXE - command to embed manifest in EXE:
|
||||
|
||||
!if "$(_VC_MANIFEST_INC)" == "1"
|
||||
|
||||
#MT_SPECIAL_RETURN=1090650113
|
||||
#MT_SPECIAL_SWITCH=-notify_resource_update
|
||||
MT_SPECIAL_RETURN=0
|
||||
MT_SPECIAL_SWITCH=
|
||||
_VC_MANIFEST_EMBED_EXE= \
|
||||
if exist $@.manifest mt.exe -manifest $@.manifest -out:$(_VC_MANIFEST_BASENAME).auto.manifest $(MT_SPECIAL_SWITCH) & \
|
||||
if "%ERRORLEVEL%" == "$(MT_SPECIAL_RETURN)" \
|
||||
rc /r $(_VC_MANIFEST_BASENAME).auto.rc & \
|
||||
link $** /out:$@ $(LFLAGS)
|
||||
|
||||
!else
|
||||
|
||||
_VC_MANIFEST_EMBED_EXE= \
|
||||
if exist $@.manifest mt.exe -manifest $@.manifest -outputresource:$@;1
|
||||
|
||||
!endif
|
||||
|
||||
####################################################
|
||||
# _VC_MANIFEST_EMBED_DLL - command to embed manifest in DLL:
|
||||
|
||||
!if "$(_VC_MANIFEST_INC)" == "1"
|
||||
|
||||
#MT_SPECIAL_RETURN=1090650113
|
||||
#MT_SPECIAL_SWITCH=-notify_resource_update
|
||||
MT_SPECIAL_RETURN=0
|
||||
MT_SPECIAL_SWITCH=
|
||||
_VC_MANIFEST_EMBED_EXE= \
|
||||
if exist $@.manifest mt.exe -manifest $@.manifest -out:$(_VC_MANIFEST_BASENAME).auto.manifest $(MT_SPECIAL_SWITCH) & \
|
||||
if "%ERRORLEVEL%" == "$(MT_SPECIAL_RETURN)" \
|
||||
rc /r $(_VC_MANIFEST_BASENAME).auto.rc & \
|
||||
link $** /out:$@ $(LFLAGS)
|
||||
|
||||
!else
|
||||
|
||||
_VC_MANIFEST_EMBED_EXE= \
|
||||
if exist $@.manifest mt.exe -manifest $@.manifest -outputresource:$@;2
|
||||
|
||||
!endif
|
||||
####################################################
|
||||
# _VC_MANIFEST_CLEAN - command to clean resources files generated temporarily:
|
||||
|
||||
!if "$(_VC_MANIFEST_INC)" == "1"
|
||||
|
||||
_VC_MANIFEST_CLEAN=-del $(_VC_MANIFEST_BASENAME).auto.res \
|
||||
$(_VC_MANIFEST_BASENAME).auto.rc \
|
||||
$(_VC_MANIFEST_BASENAME).auto.manifest
|
||||
|
||||
!else
|
||||
|
||||
_VC_MANIFEST_CLEAN=
|
||||
|
||||
!endif
|
||||
|
||||
!IF "$(CFG)" == "namedcheckconf - Win32 Release"
|
||||
|
||||
OUTDIR=.\Release
|
||||
@@ -133,7 +58,6 @@ CLEAN :
|
||||
-@erase "$(INTDIR)\vc60.idb"
|
||||
-@erase "$(OUTDIR)\namedcheckconf.bsc"
|
||||
-@erase "..\..\..\Build\Release\named-checkconf.exe"
|
||||
-@$(_VC_MANIFEST_CLEAN)
|
||||
|
||||
"$(OUTDIR)" :
|
||||
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
|
||||
@@ -163,7 +87,6 @@ LINK32_OBJS= \
|
||||
$(LINK32) @<<
|
||||
$(LINK32_FLAGS) $(LINK32_OBJS)
|
||||
<<
|
||||
$(_VC_MANIFEST_EMBED_EXE)
|
||||
|
||||
!ELSEIF "$(CFG)" == "namedcheckconf - Win32 Debug"
|
||||
|
||||
@@ -198,7 +121,6 @@ CLEAN :
|
||||
-@erase "$(OUTDIR)\namedcheckconf.bsc"
|
||||
-@erase "..\..\..\Build\Debug\named-checkconf.exe"
|
||||
-@erase "..\..\..\Build\Debug\named-checkconf.ilk"
|
||||
-@$(_VC_MANIFEST_CLEAN)
|
||||
|
||||
"$(OUTDIR)" :
|
||||
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
|
||||
@@ -228,7 +150,6 @@ LINK32_OBJS= \
|
||||
$(LINK32) @<<
|
||||
$(LINK32_FLAGS) $(LINK32_OBJS)
|
||||
<<
|
||||
$(_VC_MANIFEST_EMBED_EXE)
|
||||
|
||||
!ENDIF
|
||||
|
||||
@@ -366,39 +287,3 @@ SOURCE="..\named-checkconf.c"
|
||||
|
||||
!ENDIF
|
||||
|
||||
####################################################
|
||||
# Commands to generate initial empty manifest file and the RC file
|
||||
# that references it, and for generating the .res file:
|
||||
|
||||
$(_VC_MANIFEST_BASENAME).auto.res : $(_VC_MANIFEST_BASENAME).auto.rc
|
||||
|
||||
$(_VC_MANIFEST_BASENAME).auto.rc : $(_VC_MANIFEST_BASENAME).auto.manifest
|
||||
type <<$@
|
||||
#include <winuser.h>
|
||||
1RT_MANIFEST"$(_VC_MANIFEST_BASENAME).auto.manifest"
|
||||
<< KEEP
|
||||
|
||||
$(_VC_MANIFEST_BASENAME).auto.manifest :
|
||||
type <<$@
|
||||
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
|
||||
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
|
||||
</assembly>
|
||||
<< KEEP
|
||||
####################################################
|
||||
# Commands to generate initial empty manifest file and the RC file
|
||||
# that references it, and for generating the .res file:
|
||||
|
||||
$(_VC_MANIFEST_BASENAME).auto.res : $(_VC_MANIFEST_BASENAME).auto.rc
|
||||
|
||||
$(_VC_MANIFEST_BASENAME).auto.rc : $(_VC_MANIFEST_BASENAME).auto.manifest
|
||||
type <<$@
|
||||
#include <winuser.h>
|
||||
1RT_MANIFEST"$(_VC_MANIFEST_BASENAME).auto.manifest"
|
||||
<< KEEP
|
||||
|
||||
$(_VC_MANIFEST_BASENAME).auto.manifest :
|
||||
type <<$@
|
||||
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
|
||||
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
|
||||
</assembly>
|
||||
<< KEEP
|
||||
|
||||
@@ -51,7 +51,7 @@ BSC32=bscmake.exe
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
|
||||
# ADD LINK32 user32.lib advapi32.lib ws2_32.lib Release/checktool.lib ../../../lib/isc/win32/Release/libisc.lib ../../../lib/dns/win32/Release/libdns.lib /nologo /subsystem:console /machine:I386 /out:"../../../Build/Release/named-checkzone.exe"
|
||||
# ADD LINK32 user32.lib advapi32.lib ws2_32.lib ../../../lib/isc/win32/Release/libisc.lib ../../../lib/dns/win32/Release/libdns.lib /nologo /subsystem:console /machine:I386 /out:"../../../Build/Release/named-checkzone.exe"
|
||||
|
||||
!ELSEIF "$(CFG)" == "namedcheckzone - Win32 Debug"
|
||||
|
||||
@@ -76,7 +76,7 @@ BSC32=bscmake.exe
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
|
||||
# ADD LINK32 user32.lib advapi32.lib ws2_32.lib Debug/checktool.lib ../../../lib/isc/win32/Debug/libisc.lib ../../../lib/dns/win32/Debug/libdns.lib /nologo /subsystem:console /debug /machine:I386 /out:"../../../Build/Debug/named-checkzone.exe" /pdbtype:sept
|
||||
# ADD LINK32 user32.lib advapi32.lib ws2_32.lib ../../../lib/isc/win32/Debug/libisc.lib ../../../lib/dns/win32/Debug/libdns.lib /nologo /subsystem:console /debug /machine:I386 /out:"../../../Build/Debug/named-checkzone.exe" /pdbtype:sept
|
||||
|
||||
!ENDIF
|
||||
|
||||
@@ -89,6 +89,10 @@ LINK32=link.exe
|
||||
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE="..\check-tool.c"
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE="..\named-checkzone.c"
|
||||
# End Source File
|
||||
# End Group
|
||||
|
||||
@@ -25,81 +25,6 @@ NULL=
|
||||
NULL=nul
|
||||
!ENDIF
|
||||
|
||||
!IF "$(CFG)" == "namedcheckzone - Win32 Release"
|
||||
_VC_MANIFEST_INC=0
|
||||
_VC_MANIFEST_BASENAME=__VC80
|
||||
!ELSE
|
||||
_VC_MANIFEST_INC=1
|
||||
_VC_MANIFEST_BASENAME=__VC80.Debug
|
||||
!ENDIF
|
||||
|
||||
####################################################
|
||||
# Specifying name of temporary resource file used only in incremental builds:
|
||||
|
||||
!if "$(_VC_MANIFEST_INC)" == "1"
|
||||
_VC_MANIFEST_AUTO_RES=$(_VC_MANIFEST_BASENAME).auto.res
|
||||
!else
|
||||
_VC_MANIFEST_AUTO_RES=
|
||||
!endif
|
||||
|
||||
####################################################
|
||||
# _VC_MANIFEST_EMBED_EXE - command to embed manifest in EXE:
|
||||
|
||||
!if "$(_VC_MANIFEST_INC)" == "1"
|
||||
|
||||
#MT_SPECIAL_RETURN=1090650113
|
||||
#MT_SPECIAL_SWITCH=-notify_resource_update
|
||||
MT_SPECIAL_RETURN=0
|
||||
MT_SPECIAL_SWITCH=
|
||||
_VC_MANIFEST_EMBED_EXE= \
|
||||
if exist $@.manifest mt.exe -manifest $@.manifest -out:$(_VC_MANIFEST_BASENAME).auto.manifest $(MT_SPECIAL_SWITCH) & \
|
||||
if "%ERRORLEVEL%" == "$(MT_SPECIAL_RETURN)" \
|
||||
rc /r $(_VC_MANIFEST_BASENAME).auto.rc & \
|
||||
link $** /out:$@ $(LFLAGS)
|
||||
|
||||
!else
|
||||
|
||||
_VC_MANIFEST_EMBED_EXE= \
|
||||
if exist $@.manifest mt.exe -manifest $@.manifest -outputresource:$@;1
|
||||
|
||||
!endif
|
||||
|
||||
####################################################
|
||||
# _VC_MANIFEST_EMBED_DLL - command to embed manifest in DLL:
|
||||
|
||||
!if "$(_VC_MANIFEST_INC)" == "1"
|
||||
|
||||
#MT_SPECIAL_RETURN=1090650113
|
||||
#MT_SPECIAL_SWITCH=-notify_resource_update
|
||||
MT_SPECIAL_RETURN=0
|
||||
MT_SPECIAL_SWITCH=
|
||||
_VC_MANIFEST_EMBED_EXE= \
|
||||
if exist $@.manifest mt.exe -manifest $@.manifest -out:$(_VC_MANIFEST_BASENAME).auto.manifest $(MT_SPECIAL_SWITCH) & \
|
||||
if "%ERRORLEVEL%" == "$(MT_SPECIAL_RETURN)" \
|
||||
rc /r $(_VC_MANIFEST_BASENAME).auto.rc & \
|
||||
link $** /out:$@ $(LFLAGS)
|
||||
|
||||
!else
|
||||
|
||||
_VC_MANIFEST_EMBED_EXE= \
|
||||
if exist $@.manifest mt.exe -manifest $@.manifest -outputresource:$@;2
|
||||
|
||||
!endif
|
||||
####################################################
|
||||
# _VC_MANIFEST_CLEAN - command to clean resources files generated temporarily:
|
||||
|
||||
!if "$(_VC_MANIFEST_INC)" == "1"
|
||||
|
||||
_VC_MANIFEST_CLEAN=-del $(_VC_MANIFEST_BASENAME).auto.res \
|
||||
$(_VC_MANIFEST_BASENAME).auto.rc \
|
||||
$(_VC_MANIFEST_BASENAME).auto.manifest
|
||||
|
||||
!else
|
||||
|
||||
_VC_MANIFEST_CLEAN=
|
||||
|
||||
!endif
|
||||
|
||||
!IF "$(CFG)" == "namedcheckzone - Win32 Release"
|
||||
|
||||
OUTDIR=.\Release
|
||||
@@ -124,7 +49,6 @@ CLEAN :
|
||||
-@erase "$(INTDIR)\named-checkzone.obj"
|
||||
-@erase "$(INTDIR)\vc60.idb"
|
||||
-@erase "..\..\..\Build\Release\named-checkzone.exe"
|
||||
-@$(_VC_MANIFEST_CLEAN)
|
||||
|
||||
"$(OUTDIR)" :
|
||||
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
|
||||
@@ -179,7 +103,6 @@ LINK32_OBJS= \
|
||||
$(LINK32) @<<
|
||||
$(LINK32_FLAGS) $(LINK32_OBJS)
|
||||
<<
|
||||
$(_VC_MANIFEST_EMBED_EXE)
|
||||
|
||||
!ELSEIF "$(CFG)" == "namedcheckzone - Win32 Debug"
|
||||
|
||||
@@ -214,7 +137,6 @@ CLEAN :
|
||||
-@erase "$(OUTDIR)\namedcheckzone.bsc"
|
||||
-@erase "..\..\..\Build\Debug\named-checkzone.exe"
|
||||
-@erase "..\..\..\Build\Debug\named-checkzone.ilk"
|
||||
-@$(_VC_MANIFEST_CLEAN)
|
||||
|
||||
"$(OUTDIR)" :
|
||||
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
|
||||
@@ -276,7 +198,6 @@ LINK32_OBJS= \
|
||||
$(LINK32) @<<
|
||||
$(LINK32_FLAGS) $(LINK32_OBJS)
|
||||
<<
|
||||
$(_VC_MANIFEST_EMBED_EXE)
|
||||
|
||||
!ENDIF
|
||||
|
||||
@@ -382,21 +303,3 @@ SOURCE="..\named-checkzone.c"
|
||||
|
||||
!ENDIF
|
||||
|
||||
####################################################
|
||||
# Commands to generate initial empty manifest file and the RC file
|
||||
# that references it, and for generating the .res file:
|
||||
|
||||
$(_VC_MANIFEST_BASENAME).auto.res : $(_VC_MANIFEST_BASENAME).auto.rc
|
||||
|
||||
$(_VC_MANIFEST_BASENAME).auto.rc : $(_VC_MANIFEST_BASENAME).auto.manifest
|
||||
type <<$@
|
||||
#include <winuser.h>
|
||||
1RT_MANIFEST"$(_VC_MANIFEST_BASENAME).auto.manifest"
|
||||
<< KEEP
|
||||
|
||||
$(_VC_MANIFEST_BASENAME).auto.manifest :
|
||||
type <<$@
|
||||
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
|
||||
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
|
||||
</assembly>
|
||||
<< KEEP
|
||||
|
||||
+3
-3
@@ -1,5 +1,5 @@
|
||||
# Copyright (C) 2004, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
# Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2000-2002 Internet Software Consortium.
|
||||
#
|
||||
# Permission to use, copy, modify, and distribute this software for any
|
||||
# purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -13,7 +13,7 @@
|
||||
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
# PERFORMANCE OF THIS SOFTWARE.
|
||||
|
||||
# $Id: Makefile.in,v 1.25.12.14 2007/01/18 00:06:04 marka Exp $
|
||||
# $Id: Makefile.in,v 1.25.12.12 2004/08/18 23:25:57 marka Exp $
|
||||
|
||||
srcdir = @srcdir@
|
||||
VPATH = @srcdir@
|
||||
|
||||
+48
-148
@@ -1,4 +1,4 @@
|
||||
.\" Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -13,17 +13,14 @@
|
||||
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
.\" PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.\" $Id: dig.1,v 1.14.2.4.2.15 2007/01/30 00:11:47 marka Exp $
|
||||
.\" $Id: dig.1,v 1.14.2.4.2.10 2005/10/13 02:33:42 marka Exp $
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
.\" Title: dig
|
||||
.\" Author:
|
||||
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
|
||||
.\" Date: Jun 30, 2000
|
||||
.\" Manual: BIND9
|
||||
.\" Source: BIND9
|
||||
.\"
|
||||
.\" ** You probably do not want to edit this file directly **
|
||||
.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
|
||||
.\" Instead of manually editing it, you probably should edit the DocBook XML
|
||||
.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
|
||||
.TH "DIG" "1" "Jun 30, 2000" "BIND9" "BIND9"
|
||||
.\" disable hyphenation
|
||||
.nh
|
||||
@@ -65,28 +62,19 @@ It is possible to set per\-user defaults for
|
||||
\fBdig\fR
|
||||
via
|
||||
\fI${HOME}/.digrc\fR. This file is read and any options in it are applied before the command line arguments.
|
||||
.PP
|
||||
The IN and CH class names overlap with the IN and CH top level domains names. Either use the
|
||||
\fB\-t\fR
|
||||
and
|
||||
\fB\-c\fR
|
||||
options to specify the type and class or use "IN." and "CH." when looking up these top level domains.
|
||||
.SH "SIMPLE USAGE"
|
||||
.PP
|
||||
A typical invocation of
|
||||
\fBdig\fR
|
||||
looks like:
|
||||
.sp
|
||||
.RS 4
|
||||
.nf
|
||||
dig @server name type
|
||||
.fi
|
||||
.RE
|
||||
.sp
|
||||
where:
|
||||
.PP
|
||||
.TP
|
||||
\fBserver\fR
|
||||
.RS 4
|
||||
is the name or IP address of the name server to query. This can be an IPv4 address in dotted\-decimal notation or an IPv6 address in colon\-delimited notation. When the supplied
|
||||
\fIserver\fR
|
||||
argument is a hostname,
|
||||
@@ -98,15 +86,11 @@ argument is provided,
|
||||
consults
|
||||
\fI/etc/resolv.conf\fR
|
||||
and queries the name servers listed there. The reply from the name server that responds is displayed.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fBname\fR
|
||||
.RS 4
|
||||
is the name of the resource record that is to be looked up.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fBtype\fR
|
||||
.RS 4
|
||||
indicates what type of query is required \(em ANY, A, MX, SIG, etc.
|
||||
\fItype\fR
|
||||
can be any valid query type. If no
|
||||
@@ -114,7 +98,6 @@ can be any valid query type. If no
|
||||
argument is supplied,
|
||||
\fBdig\fR
|
||||
will perform a lookup for an A record.
|
||||
.RE
|
||||
.SH "OPTIONS"
|
||||
.PP
|
||||
The
|
||||
@@ -214,26 +197,19 @@ Each query option is identified by a keyword preceded by a plus sign (+). Some k
|
||||
no
|
||||
to negate the meaning of that keyword. Other keywords assign values to options like the timeout interval. They have the form
|
||||
\fB+keyword=value\fR. The query options are:
|
||||
.PP
|
||||
.TP
|
||||
\fB+[no]tcp\fR
|
||||
.RS 4
|
||||
Use [do not use] TCP when querying name servers. The default behaviour is to use UDP unless an AXFR or IXFR query is requested, in which case a TCP connection is used.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+[no]vc\fR
|
||||
.RS 4
|
||||
Use [do not use] TCP when querying name servers. This alternate syntax to
|
||||
\fI+[no]tcp\fR
|
||||
is provided for backwards compatibility. The "vc" stands for "virtual circuit".
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+[no]ignore\fR
|
||||
.RS 4
|
||||
Ignore truncation in UDP responses instead of retrying with TCP. By default, TCP retries are performed.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+domain=somename\fR
|
||||
.RS 4
|
||||
Set the search list to contain the single domain
|
||||
\fIsomename\fR, as if specified in a
|
||||
\fBdomain\fR
|
||||
@@ -241,54 +217,36 @@ directive in
|
||||
\fI/etc/resolv.conf\fR, and enable search list processing as if the
|
||||
\fI+search\fR
|
||||
option were given.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+[no]search\fR
|
||||
.RS 4
|
||||
Use [do not use] the search list defined by the searchlist or domain directive in
|
||||
\fIresolv.conf\fR
|
||||
(if any). The search list is not used by default.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+[no]defname\fR
|
||||
.RS 4
|
||||
Deprecated, treated as a synonym for
|
||||
\fI+[no]search\fR
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+[no]aaonly\fR
|
||||
.RS 4
|
||||
Sets the "aa" flag in the query.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+[no]aaflag\fR
|
||||
.RS 4
|
||||
A synonym for
|
||||
\fI+[no]aaonly\fR.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+[no]adflag\fR
|
||||
.RS 4
|
||||
Set [do not set] the AD (authentic data) bit in the query. The AD bit currently has a standard meaning only in responses, not in queries, but the ability to set the bit in the query is provided for completeness.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+[no]cdflag\fR
|
||||
.RS 4
|
||||
Set [do not set] the CD (checking disabled) bit in the query. This requests the server to not perform DNSSEC validation of responses.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+[no]cl\fR
|
||||
.RS 4
|
||||
Display [do not display] the CLASS when printing the record.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+[no]ttlid\fR
|
||||
.RS 4
|
||||
Display [do not display] the TTL when printing the record.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+[no]recurse\fR
|
||||
.RS 4
|
||||
Toggle the setting of the RD (recursion desired) bit in the query. This bit is set by default, which means
|
||||
\fBdig\fR
|
||||
normally sends recursive queries. Recursion is automatically disabled when the
|
||||
@@ -296,109 +254,75 @@ normally sends recursive queries. Recursion is automatically disabled when the
|
||||
or
|
||||
\fI+trace\fR
|
||||
query options are used.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+[no]nssearch\fR
|
||||
.RS 4
|
||||
When this option is set,
|
||||
\fBdig\fR
|
||||
attempts to find the authoritative name servers for the zone containing the name being looked up and display the SOA record that each name server has for the zone.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+[no]trace\fR
|
||||
.RS 4
|
||||
Toggle tracing of the delegation path from the root name servers for the name being looked up. Tracing is disabled by default. When tracing is enabled,
|
||||
\fBdig\fR
|
||||
makes iterative queries to resolve the name being looked up. It will follow referrals from the root servers, showing the answer from each server that was used to resolve the lookup.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+[no]cmd\fR
|
||||
.RS 4
|
||||
toggles the printing of the initial comment in the output identifying the version of
|
||||
\fBdig\fR
|
||||
and the query options that have been applied. This comment is printed by default.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+[no]short\fR
|
||||
.RS 4
|
||||
Provide a terse answer. The default is to print the answer in a verbose form.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+[no]identify\fR
|
||||
.RS 4
|
||||
Show [or do not show] the IP address and port number that supplied the answer when the
|
||||
\fI+short\fR
|
||||
option is enabled. If short form answers are requested, the default is not to show the source address and port number of the server that provided the answer.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+[no]comments\fR
|
||||
.RS 4
|
||||
Toggle the display of comment lines in the output. The default is to print comments.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+[no]stats\fR
|
||||
.RS 4
|
||||
This query option toggles the printing of statistics: when the query was made, the size of the reply and so on. The default behaviour is to print the query statistics.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+[no]qr\fR
|
||||
.RS 4
|
||||
Print [do not print] the query as it is sent. By default, the query is not printed.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+[no]question\fR
|
||||
.RS 4
|
||||
Print [do not print] the question section of a query when an answer is returned. The default is to print the question section as a comment.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+[no]answer\fR
|
||||
.RS 4
|
||||
Display [do not display] the answer section of a reply. The default is to display it.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+[no]authority\fR
|
||||
.RS 4
|
||||
Display [do not display] the authority section of a reply. The default is to display it.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+[no]additional\fR
|
||||
.RS 4
|
||||
Display [do not display] the additional section of a reply. The default is to display it.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+[no]all\fR
|
||||
.RS 4
|
||||
Set or clear all display flags.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+time=T\fR
|
||||
.RS 4
|
||||
Sets the timeout for a query to
|
||||
\fIT\fR
|
||||
seconds. The default time out is 5 seconds. An attempt to set
|
||||
\fIT\fR
|
||||
to less than 1 will result in a query timeout of 1 second being applied.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+tries=T\fR
|
||||
.RS 4
|
||||
Sets the number of times to try UDP queries to server to
|
||||
\fIT\fR
|
||||
instead of the default, 3. If
|
||||
\fIT\fR
|
||||
is less than or equal to zero, the number of tries is silently rounded up to 1.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+retry=T\fR
|
||||
.RS 4
|
||||
Sets the number of times to retry UDP queries to server to
|
||||
\fIT\fR
|
||||
instead of the default, 2. Unlike
|
||||
\fI+tries\fR, this does not include the initial query.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+ndots=D\fR
|
||||
.RS 4
|
||||
Set the number of dots that have to appear in
|
||||
\fIname\fR
|
||||
to
|
||||
@@ -410,44 +334,30 @@ or
|
||||
\fBdomain\fR
|
||||
directive in
|
||||
\fI/etc/resolv.conf\fR.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+bufsize=B\fR
|
||||
.RS 4
|
||||
Set the UDP message buffer size advertised using EDNS0 to
|
||||
\fIB\fR
|
||||
bytes. The maximum and minimum sizes of this buffer are 65535 and 0 respectively. Values outside this range are rounded up or down appropriately.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+[no]multiline\fR
|
||||
.RS 4
|
||||
Print records like the SOA records in a verbose multi\-line format with human\-readable comments. The default is to print each record on a single line, to facilitate machine parsing of the
|
||||
\fBdig\fR
|
||||
output.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+[no]fail\fR
|
||||
.RS 4
|
||||
Do not try the next server if you receive a SERVFAIL. The default is to not try the next server which is the reverse of normal stub resolver behaviour.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+[no]besteffort\fR
|
||||
.RS 4
|
||||
Attempt to display the contents of messages which are malformed. The default is to not display malformed answers.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+[no]dnssec\fR
|
||||
.RS 4
|
||||
Requests DNSSEC records be sent by setting the DNSSEC OK bit (DO) in the OPT record in the additional section of the query.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+[no]sigchase\fR
|
||||
.RS 4
|
||||
Chase DNSSEC signature chains. Requires dig be compiled with \-DDIG_SIGCHASE.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+trusted\-key=####\fR
|
||||
.RS 4
|
||||
Specifies a file containing trusted keys to be used with
|
||||
\fB+sigchase\fR. Each DNSKEY record must be on its own line.
|
||||
.sp
|
||||
@@ -460,12 +370,9 @@ then
|
||||
in the current directory.
|
||||
.sp
|
||||
Requires dig be compiled with \-DDIG_SIGCHASE.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB+[no]topdown\fR
|
||||
.RS 4
|
||||
When chasing DNSSEC signature chains perform a top down validation. Requires dig be compiled with \-DDIG_SIGCHASE.
|
||||
.RE
|
||||
.SH "MULTIPLE QUERIES"
|
||||
.PP
|
||||
The BIND 9 implementation of
|
||||
@@ -482,11 +389,9 @@ A global set of query options, which should be applied to all queries, can also
|
||||
\fB+[no]cmd\fR
|
||||
option) can be overridden by a query\-specific set of query options. For example:
|
||||
.sp
|
||||
.RS 4
|
||||
.nf
|
||||
dig +qr www.isc.org any \-x 127.0.0.1 isc.org ns +noqr
|
||||
.fi
|
||||
.RE
|
||||
.sp
|
||||
shows how
|
||||
\fBdig\fR
|
||||
@@ -513,11 +418,6 @@ isc.org.
|
||||
\fBnamed\fR(8),
|
||||
\fBdnssec\-keygen\fR(8),
|
||||
RFC1035.
|
||||
.SH "BUGS"
|
||||
.SH "BUGS "
|
||||
.PP
|
||||
There are probably too many query options.
|
||||
.SH "COPYRIGHT"
|
||||
Copyright \(co 2004\-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
.br
|
||||
Copyright \(co 2000\-2003 Internet Software Consortium.
|
||||
.br
|
||||
|
||||
+3
-3
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2006 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: dig.c,v 1.157.2.13.2.31 2006/07/22 23:52:57 marka Exp $ */
|
||||
/* $Id: dig.c,v 1.157.2.13.2.29 2005/10/14 01:38:40 marka Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
#include <stdlib.h>
|
||||
@@ -1437,7 +1437,7 @@ parse_args(isc_boolean_t is_batchfile, isc_boolean_t config_only,
|
||||
* Anything which isn't an option
|
||||
*/
|
||||
if (open_type_class) {
|
||||
if (strncasecmp(rv[0], "ixfr=", 5) == 0) {
|
||||
if (strncmp(rv[0], "ixfr=", 5) == 0) {
|
||||
rdtype = dns_rdatatype_ixfr;
|
||||
result = ISC_R_SUCCESS;
|
||||
} else {
|
||||
|
||||
+4
-13
@@ -1,8 +1,8 @@
|
||||
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
|
||||
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.0//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.0/docbookx.dtd"
|
||||
[<!ENTITY mdash "—">]>
|
||||
<!--
|
||||
- Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -18,7 +18,7 @@
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
|
||||
<!-- $Id: dig.docbook,v 1.4.2.7.4.16 2007/01/29 23:57:18 marka Exp $ -->
|
||||
<!-- $Id: dig.docbook,v 1.4.2.7.4.12 2005/08/30 00:50:29 marka Exp $ -->
|
||||
|
||||
<refentry>
|
||||
|
||||
@@ -36,8 +36,6 @@
|
||||
<copyright>
|
||||
<year>2004</year>
|
||||
<year>2005</year>
|
||||
<year>2006</year>
|
||||
<year>2007</year>
|
||||
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
|
||||
</copyright>
|
||||
<copyright>
|
||||
@@ -125,13 +123,6 @@ It is possible to set per-user defaults for <command>dig</command> via
|
||||
are applied before the command line arguments.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The IN and CH class names overlap with the IN and CH top level
|
||||
domains names. Either use the <option>-t</option> and
|
||||
<option>-c</option> options to specify the type and class or
|
||||
use "IN." and "CH." when looking up these top level domains.
|
||||
</para>
|
||||
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
|
||||
+12
-18
@@ -1,5 +1,5 @@
|
||||
<!--
|
||||
- Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -14,15 +14,15 @@
|
||||
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
<!-- $Id: dig.html,v 1.6.2.4.2.20 2007/01/30 00:11:47 marka Exp $ -->
|
||||
<!-- $Id: dig.html,v 1.6.2.4.2.13 2005/10/13 02:33:43 marka Exp $ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>dig</title>
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.69.1">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en">
|
||||
<a name="id2476275"></a><div class="titlepage"></div>
|
||||
<a name="id2463721"></a><div class="titlepage"></div>
|
||||
<div class="refnamediv">
|
||||
<h2>Name</h2>
|
||||
<p>dig — DNS lookup utility</p>
|
||||
@@ -34,7 +34,7 @@
|
||||
<div class="cmdsynopsis"><p><code class="command">dig</code> [global-queryopt...] [query...]</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543485"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2525976"></a><h2>DESCRIPTION</h2>
|
||||
<p>
|
||||
<span><strong class="command">dig</strong></span> (domain information groper) is a flexible tool
|
||||
for interrogating DNS name servers. It performs DNS lookups and
|
||||
@@ -67,15 +67,9 @@ It is possible to set per-user defaults for <span><strong class="command">dig</s
|
||||
<code class="filename">${HOME}/.digrc</code>. This file is read and any options in it
|
||||
are applied before the command line arguments.
|
||||
</p>
|
||||
<p>
|
||||
The IN and CH class names overlap with the IN and CH top level
|
||||
domains names. Either use the <code class="option">-t</code> and
|
||||
<code class="option">-c</code> options to specify the type and class or
|
||||
use "IN." and "CH." when looking up these top level domains.
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543554"></a><h2>SIMPLE USAGE</h2>
|
||||
<a name="id2526035"></a><h2>SIMPLE USAGE</h2>
|
||||
<p>
|
||||
A typical invocation of <span><strong class="command">dig</strong></span> looks like:
|
||||
</p>
|
||||
@@ -113,7 +107,7 @@ ANY, A, MX, SIG, etc.
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543633"></a><h2>OPTIONS</h2>
|
||||
<a name="id2526114"></a><h2>OPTIONS</h2>
|
||||
<p>
|
||||
The <code class="option">-b</code> option sets the source IP address of the query
|
||||
to <em class="parameter"><code>address</code></em>. This must be a valid address on
|
||||
@@ -194,7 +188,7 @@ being used. In BIND, this is done by providing appropriate
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543816"></a><h2>QUERY OPTIONS</h2>
|
||||
<a name="id2526365"></a><h2>QUERY OPTIONS</h2>
|
||||
<p>
|
||||
<span><strong class="command">dig</strong></span> provides a number of query options which affect
|
||||
the way in which lookups are made and the results displayed. Some of
|
||||
@@ -452,7 +446,7 @@ Requires dig be compiled with -DDIG_SIGCHASE.
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2544552"></a><h2>MULTIPLE QUERIES</h2>
|
||||
<a name="id2527033"></a><h2>MULTIPLE QUERIES</h2>
|
||||
<p>
|
||||
The BIND 9 implementation of <span><strong class="command">dig </strong></span> supports
|
||||
specifying multiple queries on the command line (in addition to
|
||||
@@ -493,7 +487,7 @@ will not print the initial query when it looks up the NS records for
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2544611"></a><h2>FILES</h2>
|
||||
<a name="id2527092"></a><h2>FILES</h2>
|
||||
<p>
|
||||
<code class="filename">/etc/resolv.conf</code>
|
||||
</p>
|
||||
@@ -502,7 +496,7 @@ will not print the initial query when it looks up the NS records for
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2544630"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2527111"></a><h2>SEE ALSO</h2>
|
||||
<p>
|
||||
<span class="citerefentry"><span class="refentrytitle">host</span>(1)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">named</span>(8)</span>,
|
||||
@@ -511,7 +505,7 @@ will not print the initial query when it looks up the NS records for
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2544737"></a><h2>BUGS </h2>
|
||||
<a name="id2527149"></a><h2>BUGS </h2>
|
||||
<p>
|
||||
There are probably too many query options.
|
||||
</p>
|
||||
|
||||
+55
-95
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: dighost.c,v 1.221.2.19.2.40 2007/02/27 01:07:15 marka Exp $ */
|
||||
/* $Id: dighost.c,v 1.221.2.19.2.31 2005/10/14 01:38:40 marka Exp $ */
|
||||
|
||||
/*
|
||||
* Notice to programmers: Do not use this code as an example of how to
|
||||
@@ -314,9 +314,6 @@ cancel_lookup(dig_lookup_t *lookup);
|
||||
static void
|
||||
recv_done(isc_task_t *task, isc_event_t *event);
|
||||
|
||||
static void
|
||||
send_udp(dig_query_t *query);
|
||||
|
||||
static void
|
||||
connect_timeout(isc_task_t *task, isc_event_t *event);
|
||||
|
||||
@@ -723,8 +720,6 @@ make_empty_lookup(void) {
|
||||
looknew->section_authority = ISC_TRUE;
|
||||
looknew->section_additional = ISC_TRUE;
|
||||
looknew->new_search = ISC_FALSE;
|
||||
looknew->done_as_is = ISC_FALSE;
|
||||
looknew->need_search = ISC_FALSE;
|
||||
ISC_LINK_INIT(looknew, link);
|
||||
ISC_LIST_INIT(looknew->q);
|
||||
ISC_LIST_INIT(looknew->my_server_list);
|
||||
@@ -796,8 +791,6 @@ clone_lookup(dig_lookup_t *lookold, isc_boolean_t servers) {
|
||||
looknew->section_additional = lookold->section_additional;
|
||||
looknew->retries = lookold->retries;
|
||||
looknew->tsigctx = NULL;
|
||||
looknew->need_search = lookold->need_search;
|
||||
looknew->done_as_is = lookold->done_as_is;
|
||||
|
||||
if (servers)
|
||||
clone_server_list(lookold->my_server_list,
|
||||
@@ -952,8 +945,9 @@ setup_system(void) {
|
||||
if (lwresult != LWRES_R_SUCCESS)
|
||||
fatal("lwres_context_create failed");
|
||||
|
||||
lwresult = lwres_conf_parse(lwctx, RESOLV_CONF);
|
||||
if (lwresult != LWRES_R_SUCCESS && lwresult != LWRES_R_NOTFOUND)
|
||||
if (isc_file_exists(RESOLV_CONF))
|
||||
lwresult = lwres_conf_parse(lwctx, RESOLV_CONF);
|
||||
if (lwresult != LWRES_R_SUCCESS)
|
||||
fatal("parse of %s failed", RESOLV_CONF);
|
||||
|
||||
lwconf = lwres_conf_get(lwctx);
|
||||
@@ -1200,10 +1194,7 @@ clear_query(dig_query_t *query) {
|
||||
isc_mempool_put(commctx, query->recvspace);
|
||||
isc_buffer_invalidate(&query->recvbuf);
|
||||
isc_buffer_invalidate(&query->lengthbuf);
|
||||
if (query->waiting_senddone)
|
||||
query->pending_free = ISC_TRUE;
|
||||
else
|
||||
isc_mem_free(mctx, query);
|
||||
isc_mem_free(mctx, query);
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -1228,10 +1219,9 @@ try_clear_lookup(dig_lookup_t *lookup) {
|
||||
debug("query to %s still pending", q->servname);
|
||||
q = ISC_LIST_NEXT(q, link);
|
||||
}
|
||||
return (ISC_FALSE);
|
||||
}
|
||||
return (ISC_FALSE);
|
||||
}
|
||||
|
||||
/*
|
||||
* At this point, we know there are no queries on the lookup,
|
||||
* so can make it go away also.
|
||||
@@ -1264,6 +1254,7 @@ try_clear_lookup(dig_lookup_t *lookup) {
|
||||
return (ISC_TRUE);
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* If we can, start the next lookup in the queue running.
|
||||
* This assumes that the lookup on the head of the queue hasn't been
|
||||
@@ -1503,7 +1494,6 @@ followup_lookup(dns_message_t *msg, dig_query_t *query, dns_section_t section)
|
||||
static isc_boolean_t
|
||||
next_origin(dns_message_t *msg, dig_query_t *query) {
|
||||
dig_lookup_t *lookup;
|
||||
dig_searchlist_t *search;
|
||||
|
||||
UNUSED(msg);
|
||||
|
||||
@@ -1518,22 +1508,13 @@ next_origin(dns_message_t *msg, dig_query_t *query) {
|
||||
* about finding the next entry.
|
||||
*/
|
||||
return (ISC_FALSE);
|
||||
if (query->lookup->origin == NULL && !query->lookup->need_search)
|
||||
if (query->lookup->origin == NULL)
|
||||
/*
|
||||
* Then we just did rootorg; there's nothing left.
|
||||
*/
|
||||
return (ISC_FALSE);
|
||||
if (query->lookup->origin == NULL && query->lookup->need_search) {
|
||||
lookup = requeue_lookup(query->lookup, ISC_TRUE);
|
||||
lookup->origin = ISC_LIST_HEAD(search_list);
|
||||
lookup->need_search = ISC_FALSE;
|
||||
} else {
|
||||
search = ISC_LIST_NEXT(query->lookup->origin, link);
|
||||
if (search == NULL && query->lookup->done_as_is)
|
||||
return (ISC_FALSE);
|
||||
lookup = requeue_lookup(query->lookup, ISC_TRUE);
|
||||
lookup->origin = search;
|
||||
}
|
||||
lookup = requeue_lookup(query->lookup, ISC_TRUE);
|
||||
lookup->origin = ISC_LIST_NEXT(query->lookup->origin, link);
|
||||
cancel_lookup(query->lookup);
|
||||
return (ISC_TRUE);
|
||||
}
|
||||
@@ -1655,16 +1636,11 @@ setup_lookup(dig_lookup_t *lookup) {
|
||||
* take the first entry in the searchlist iff either usesearch
|
||||
* is TRUE or we got a domain line in the resolv.conf file.
|
||||
*/
|
||||
if (lookup->new_search) {
|
||||
if ((count_dots(lookup->textname) >= ndots) || !usesearch) {
|
||||
lookup->origin = NULL; /* Force abs lookup */
|
||||
lookup->done_as_is = ISC_TRUE;
|
||||
lookup->need_search = usesearch;
|
||||
} else if (lookup->origin == NULL && usesearch) {
|
||||
lookup->origin = ISC_LIST_HEAD(search_list);
|
||||
lookup->need_search = ISC_FALSE;
|
||||
}
|
||||
}
|
||||
/* XXX New search here? */
|
||||
if ((count_dots(lookup->textname) >= ndots) || !usesearch)
|
||||
lookup->origin = NULL; /* Force abs lookup */
|
||||
else if (lookup->origin == NULL && lookup->new_search && usesearch)
|
||||
lookup->origin = ISC_LIST_HEAD(search_list);
|
||||
|
||||
if (lookup->origin != NULL) {
|
||||
debug("trying origin %s", lookup->origin->origin);
|
||||
@@ -1808,9 +1784,9 @@ setup_lookup(dig_lookup_t *lookup) {
|
||||
check_result(result, "dns_compress_init");
|
||||
|
||||
debug("starting to render the message");
|
||||
isc_buffer_init(&lookup->renderbuf, lookup->sendspace, COMMSIZE);
|
||||
isc_buffer_init(&lookup->sendbuf, lookup->sendspace, COMMSIZE);
|
||||
result = dns_message_renderbegin(lookup->sendmsg, &cctx,
|
||||
&lookup->renderbuf);
|
||||
&lookup->sendbuf);
|
||||
check_result(result, "dns_message_renderbegin");
|
||||
if (lookup->udpsize > 0 || lookup->dnssec) {
|
||||
if (lookup->udpsize == 0)
|
||||
@@ -1833,7 +1809,7 @@ setup_lookup(dig_lookup_t *lookup) {
|
||||
/*
|
||||
* Force TCP mode if the request is larger than 512 bytes.
|
||||
*/
|
||||
if (isc_buffer_usedlength(&lookup->renderbuf) > 512)
|
||||
if (isc_buffer_usedlength(&lookup->sendbuf) > 512)
|
||||
lookup->tcp_mode = ISC_TRUE;
|
||||
|
||||
lookup->pending = ISC_FALSE;
|
||||
@@ -1849,8 +1825,6 @@ setup_lookup(dig_lookup_t *lookup) {
|
||||
query, lookup);
|
||||
query->lookup = lookup;
|
||||
query->waiting_connect = ISC_FALSE;
|
||||
query->waiting_senddone = ISC_FALSE;
|
||||
query->pending_free = ISC_FALSE;
|
||||
query->recv_made = ISC_FALSE;
|
||||
query->first_pass = ISC_TRUE;
|
||||
query->first_soa_rcvd = ISC_FALSE;
|
||||
@@ -1874,7 +1848,6 @@ setup_lookup(dig_lookup_t *lookup) {
|
||||
isc_buffer_init(&query->recvbuf, query->recvspace, COMMSIZE);
|
||||
isc_buffer_init(&query->lengthbuf, query->lengthspace, 2);
|
||||
isc_buffer_init(&query->slbuf, query->slspace, 2);
|
||||
query->sendbuf = lookup->renderbuf;
|
||||
|
||||
ISC_LINK_INIT(query, link);
|
||||
ISC_LIST_ENQUEUE(lookup->q, query, link);
|
||||
@@ -1892,43 +1865,18 @@ setup_lookup(dig_lookup_t *lookup) {
|
||||
*/
|
||||
static void
|
||||
send_done(isc_task_t *_task, isc_event_t *event) {
|
||||
isc_socketevent_t *sevent = (isc_socketevent_t *)event;
|
||||
isc_buffer_t *b = NULL;
|
||||
dig_query_t *query, *next;
|
||||
dig_lookup_t *l;
|
||||
|
||||
REQUIRE(event->ev_type == ISC_SOCKEVENT_SENDDONE);
|
||||
|
||||
UNUSED(_task);
|
||||
|
||||
LOCK_LOOKUP;
|
||||
|
||||
isc_event_free(&event);
|
||||
|
||||
debug("send_done()");
|
||||
sendcount--;
|
||||
debug("sendcount=%d", sendcount);
|
||||
INSIST(sendcount >= 0);
|
||||
|
||||
for (b = ISC_LIST_HEAD(sevent->bufferlist);
|
||||
b != NULL;
|
||||
b = ISC_LIST_HEAD(sevent->bufferlist))
|
||||
ISC_LIST_DEQUEUE(sevent->bufferlist, b, link);
|
||||
|
||||
query = event->ev_arg;
|
||||
query->waiting_senddone = ISC_FALSE;
|
||||
l = query->lookup;
|
||||
|
||||
if (l->ns_search_only && !l->trace_root) {
|
||||
debug("sending next, since searching");
|
||||
next = ISC_LIST_NEXT(query, link);
|
||||
if (next != NULL)
|
||||
send_udp(next);
|
||||
}
|
||||
|
||||
isc_event_free(&event);
|
||||
|
||||
if (query->pending_free)
|
||||
isc_mem_free(mctx, query);
|
||||
|
||||
check_if_done();
|
||||
UNLOCK_LOOKUP;
|
||||
}
|
||||
@@ -2072,6 +2020,7 @@ send_tcp_connect(dig_query_t *query) {
|
||||
static void
|
||||
send_udp(dig_query_t *query) {
|
||||
dig_lookup_t *l = NULL;
|
||||
dig_query_t *next;
|
||||
isc_result_t result;
|
||||
|
||||
debug("send_udp(%p)", query);
|
||||
@@ -2113,16 +2062,27 @@ send_udp(dig_query_t *query) {
|
||||
debug("recvcount=%d", recvcount);
|
||||
}
|
||||
ISC_LIST_INIT(query->sendlist);
|
||||
ISC_LIST_ENQUEUE(query->sendlist, &query->sendbuf, link);
|
||||
ISC_LINK_INIT(&l->sendbuf, link);
|
||||
ISC_LIST_ENQUEUE(query->sendlist, &l->sendbuf,
|
||||
link);
|
||||
debug("sending a request");
|
||||
TIME_NOW(&query->time_sent);
|
||||
INSIST(query->sock != NULL);
|
||||
query->waiting_senddone = ISC_TRUE;
|
||||
result = isc_socket_sendtov(query->sock, &query->sendlist,
|
||||
global_task, send_done, query,
|
||||
&query->sockaddr, NULL);
|
||||
check_result(result, "isc_socket_sendtov");
|
||||
sendcount++;
|
||||
/*
|
||||
* If we're at the endgame of a nameserver search, we need to
|
||||
* immediately bring up all the queries. Do it here.
|
||||
*/
|
||||
if (l->ns_search_only && !l->trace_root) {
|
||||
debug("sending next, since searching");
|
||||
next = ISC_LIST_NEXT(query, link);
|
||||
if (next != NULL)
|
||||
send_udp(next);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -2211,10 +2171,6 @@ tcp_length_done(isc_task_t *task, isc_event_t *event) {
|
||||
recvcount--;
|
||||
INSIST(recvcount >= 0);
|
||||
|
||||
b = ISC_LIST_HEAD(sevent->bufferlist);
|
||||
INSIST(b == &query->lengthbuf);
|
||||
ISC_LIST_DEQUEUE(sevent->bufferlist, b, link);
|
||||
|
||||
if (sevent->result == ISC_R_CANCELED) {
|
||||
isc_event_free(&event);
|
||||
l = query->lookup;
|
||||
@@ -2240,6 +2196,8 @@ tcp_length_done(isc_task_t *task, isc_event_t *event) {
|
||||
UNLOCK_LOOKUP;
|
||||
return;
|
||||
}
|
||||
b = ISC_LIST_HEAD(sevent->bufferlist);
|
||||
ISC_LIST_DEQUEUE(sevent->bufferlist, &query->lengthbuf, link);
|
||||
length = isc_buffer_getuint16(b);
|
||||
if (length == 0) {
|
||||
isc_event_free(&event);
|
||||
@@ -2296,12 +2254,16 @@ launch_next_query(dig_query_t *query, isc_boolean_t include_question) {
|
||||
|
||||
isc_buffer_clear(&query->slbuf);
|
||||
isc_buffer_clear(&query->lengthbuf);
|
||||
isc_buffer_putuint16(&query->slbuf, (isc_uint16_t) query->sendbuf.used);
|
||||
isc_buffer_putuint16(&query->slbuf,
|
||||
(isc_uint16_t) query->lookup->sendbuf.used);
|
||||
ISC_LIST_INIT(query->sendlist);
|
||||
ISC_LINK_INIT(&query->slbuf, link);
|
||||
ISC_LIST_ENQUEUE(query->sendlist, &query->slbuf, link);
|
||||
if (include_question)
|
||||
ISC_LIST_ENQUEUE(query->sendlist, &query->sendbuf, link);
|
||||
if (include_question) {
|
||||
ISC_LINK_INIT(&query->lookup->sendbuf, link);
|
||||
ISC_LIST_ENQUEUE(query->sendlist, &query->lookup->sendbuf,
|
||||
link);
|
||||
}
|
||||
ISC_LINK_INIT(&query->lengthbuf, link);
|
||||
ISC_LIST_ENQUEUE(query->lengthlist, &query->lengthbuf, link);
|
||||
|
||||
@@ -2313,7 +2275,6 @@ launch_next_query(dig_query_t *query, isc_boolean_t include_question) {
|
||||
if (!query->first_soa_rcvd) {
|
||||
debug("sending a request in launch_next_query");
|
||||
TIME_NOW(&query->time_sent);
|
||||
query->waiting_senddone = ISC_TRUE;
|
||||
result = isc_socket_sendv(query->sock, &query->sendlist,
|
||||
global_task, send_done, query);
|
||||
check_result(result, "isc_socket_sendv");
|
||||
@@ -2597,10 +2558,6 @@ recv_done(isc_task_t *task, isc_event_t *event) {
|
||||
REQUIRE(event->ev_type == ISC_SOCKEVENT_RECVDONE);
|
||||
sevent = (isc_socketevent_t *)event;
|
||||
|
||||
b = ISC_LIST_HEAD(sevent->bufferlist);
|
||||
INSIST(b == &query->recvbuf);
|
||||
ISC_LIST_DEQUEUE(sevent->bufferlist, &query->recvbuf, link);
|
||||
|
||||
if ((l->tcp_mode) && (l->timer != NULL))
|
||||
isc_timer_touch(l->timer);
|
||||
if ((!l->pending && !l->ns_search_only) || cancel_now) {
|
||||
@@ -2634,6 +2591,9 @@ recv_done(isc_task_t *task, isc_event_t *event) {
|
||||
return;
|
||||
}
|
||||
|
||||
b = ISC_LIST_HEAD(sevent->bufferlist);
|
||||
ISC_LIST_DEQUEUE(sevent->bufferlist, &query->recvbuf, link);
|
||||
|
||||
if (!l->tcp_mode &&
|
||||
!isc_sockaddr_equal(&sevent->address, &query->sockaddr)) {
|
||||
char buf1[ISC_SOCKADDR_FORMATSIZE];
|
||||
@@ -2679,7 +2639,7 @@ recv_done(isc_task_t *task, isc_event_t *event) {
|
||||
}
|
||||
}
|
||||
|
||||
result = dns_message_peekheader(b, &id, &msgflags);
|
||||
result = dns_message_peekheader(b, &id, &msgflags);
|
||||
if (result != ISC_R_SUCCESS || l->sendmsg->id != id) {
|
||||
match = ISC_FALSE;
|
||||
if (l->tcp_mode) {
|
||||
@@ -2875,8 +2835,7 @@ recv_done(isc_task_t *task, isc_event_t *event) {
|
||||
}
|
||||
|
||||
if (!l->doing_xfr || l->xfr_q == query) {
|
||||
if (msg->rcode != dns_rcode_noerror &&
|
||||
(l->origin != NULL || l->need_search)) {
|
||||
if (msg->rcode != dns_rcode_noerror && l->origin != NULL) {
|
||||
if (!next_origin(msg, query)) {
|
||||
printmessage(query, msg, ISC_TRUE);
|
||||
received(b->used, &sevent->address, query);
|
||||
@@ -2966,6 +2925,7 @@ recv_done(isc_task_t *task, isc_event_t *event) {
|
||||
chase_msg2->msg = msg;
|
||||
}
|
||||
#endif
|
||||
|
||||
}
|
||||
|
||||
#ifdef DIG_SIGCHASE
|
||||
@@ -3612,7 +3572,7 @@ get_trusted_key(isc_mem_t *mctx)
|
||||
filename);
|
||||
return (ISC_R_FAILURE);
|
||||
}
|
||||
while (fgets(buf, sizeof(buf), fp) != NULL) {
|
||||
while (fgets(buf, 1500, fp) != NULL) {
|
||||
result = opentmpkey(mctx,"tmp_file", &filetemp, &fptemp);
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
fclose(fp);
|
||||
@@ -3938,7 +3898,7 @@ free_name(dns_name_t *name, isc_mem_t *mctx) {
|
||||
* return ISC_R_SUCCESS if the DNSKEY RRset contains a trusted_key
|
||||
* and the RRset is valid
|
||||
* return ISC_R_NOTFOUND if not contains trusted key
|
||||
or if the RRset isn't valid
|
||||
or if the RRset isn't valid
|
||||
* return ISC_R_FAILURE if problem
|
||||
*
|
||||
*/
|
||||
@@ -3963,7 +3923,7 @@ contains_trusted_key(dns_name_t *name, dns_rdataset_t *rdataset,
|
||||
do {
|
||||
dns_rdataset_current(rdataset, &rdata);
|
||||
INSIST(rdata.type == dns_rdatatype_dnskey);
|
||||
|
||||
|
||||
result = dns_dnssec_keyfromrdata(name, &rdata,
|
||||
mctx, &dnsseckey);
|
||||
check_result(result, "dns_dnssec_keyfromrdata");
|
||||
@@ -4018,7 +3978,7 @@ sigchase_verify_sig(dns_name_t *name, dns_rdataset_t *rdataset,
|
||||
do {
|
||||
dns_rdataset_current(keyrdataset, &keyrdata);
|
||||
INSIST(keyrdata.type == dns_rdatatype_dnskey);
|
||||
|
||||
|
||||
result = dns_dnssec_keyfromrdata(name, &keyrdata,
|
||||
mctx, &dnsseckey);
|
||||
check_result(result, "dns_dnssec_keyfromrdata");
|
||||
@@ -4119,7 +4079,7 @@ sigchase_verify_ds(dns_name_t *name, dns_rdataset_t *keyrdataset,
|
||||
do {
|
||||
dns_rdataset_current(keyrdataset, &keyrdata);
|
||||
INSIST(keyrdata.type == dns_rdatatype_dnskey);
|
||||
|
||||
|
||||
result = dns_dnssec_keyfromrdata(name, &keyrdata,
|
||||
mctx, &dnsseckey);
|
||||
check_result(result, "dns_dnssec_keyfromrdata");
|
||||
|
||||
+7
-15
@@ -1,5 +1,5 @@
|
||||
.\" Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
.\" Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2000-2002 Internet Software Consortium.
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and distribute this software for any
|
||||
.\" purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -13,17 +13,14 @@
|
||||
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
.\" PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.\" $Id: host.1,v 1.11.2.1.4.11 2007/01/18 04:20:22 marka Exp $
|
||||
.\" $Id: host.1,v 1.11.2.1.4.7 2005/10/13 02:33:43 marka Exp $
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
.\" Title: host
|
||||
.\" Author:
|
||||
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
|
||||
.\" Date: Jun 30, 2000
|
||||
.\" Manual: BIND9
|
||||
.\" Source: BIND9
|
||||
.\"
|
||||
.\" ** You probably do not want to edit this file directly **
|
||||
.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
|
||||
.\" Instead of manually editing it, you probably should edit the DocBook XML
|
||||
.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
|
||||
.TH "HOST" "1" "Jun 30, 2000" "BIND9" "BIND9"
|
||||
.\" disable hyphenation
|
||||
.nh
|
||||
@@ -186,8 +183,3 @@ will effectively wait forever for a reply. The time to wait for a response will
|
||||
.PP
|
||||
\fBdig\fR(1),
|
||||
\fBnamed\fR(8).
|
||||
.SH "COPYRIGHT"
|
||||
Copyright \(co 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
.br
|
||||
Copyright \(co 2000\-2003 Internet Software Consortium.
|
||||
.br
|
||||
|
||||
+5
-39
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2006 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: host.c,v 1.76.2.5.2.16 2006/05/23 04:43:47 marka Exp $ */
|
||||
/* $Id: host.c,v 1.76.2.5.2.13 2005/07/04 03:29:45 marka Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
#include <limits.h>
|
||||
@@ -37,7 +37,6 @@
|
||||
#include <dns/rdataclass.h>
|
||||
#include <dns/rdataset.h>
|
||||
#include <dns/rdatatype.h>
|
||||
#include <dns/rdatastruct.h>
|
||||
|
||||
#include <dig/dig.h>
|
||||
|
||||
@@ -46,7 +45,6 @@ static isc_boolean_t default_lookups = ISC_TRUE;
|
||||
static int seen_error = -1;
|
||||
static isc_boolean_t list_addresses = ISC_TRUE;
|
||||
static dns_rdatatype_t list_type = dns_rdatatype_a;
|
||||
static isc_boolean_t printed_server = ISC_FALSE;
|
||||
|
||||
static const char *opcodetext[] = {
|
||||
"QUERY",
|
||||
@@ -353,32 +351,6 @@ printrdata(dns_message_t *msg, dns_rdataset_t *rdataset, dns_name_t *owner,
|
||||
return (ISC_R_SUCCESS);
|
||||
}
|
||||
|
||||
static void
|
||||
chase_cnamechain(dns_message_t *msg, dns_name_t *qname) {
|
||||
isc_result_t result;
|
||||
dns_rdataset_t *rdataset;
|
||||
dns_rdata_cname_t cname;
|
||||
dns_rdata_t rdata = DNS_RDATA_INIT;
|
||||
unsigned int i = msg->counts[DNS_SECTION_ANSWER];
|
||||
|
||||
while (i-- > 0) {
|
||||
rdataset = NULL;
|
||||
result = dns_message_findname(msg, DNS_SECTION_ANSWER, qname,
|
||||
dns_rdatatype_cname, 0, NULL,
|
||||
&rdataset);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
return;
|
||||
result = dns_rdataset_first(rdataset);
|
||||
check_result(result, "dns_rdataset_first");
|
||||
dns_rdata_reset(&rdata);
|
||||
dns_rdataset_current(rdataset, &rdata);
|
||||
result = dns_rdata_tostruct(&rdata, &cname, NULL);
|
||||
check_result(result, "dns_rdata_tostruct");
|
||||
dns_name_copy(&cname.cname, qname, NULL);
|
||||
dns_rdata_freestruct(&cname);
|
||||
}
|
||||
}
|
||||
|
||||
isc_result_t
|
||||
printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
|
||||
isc_boolean_t did_flag = ISC_FALSE;
|
||||
@@ -395,7 +367,7 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
|
||||
*/
|
||||
force_error = (seen_error == 1) ? 1 : 0;
|
||||
seen_error = 1;
|
||||
if (listed_server && !printed_server) {
|
||||
if (listed_server) {
|
||||
char sockstr[ISC_SOCKADDR_FORMATSIZE];
|
||||
|
||||
printf("Using domain server:\n");
|
||||
@@ -404,7 +376,6 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
|
||||
sizeof(sockstr));
|
||||
printf("Address: %s\n", sockstr);
|
||||
printf("Aliases: \n\n");
|
||||
printed_server = ISC_TRUE;
|
||||
}
|
||||
|
||||
if (msg->rcode != 0) {
|
||||
@@ -418,15 +389,10 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) {
|
||||
if (default_lookups && query->lookup->rdtype == dns_rdatatype_a) {
|
||||
char namestr[DNS_NAME_FORMATSIZE];
|
||||
dig_lookup_t *lookup;
|
||||
dns_fixedname_t fixed;
|
||||
dns_name_t *name;
|
||||
|
||||
/* Add AAAA and MX lookups. */
|
||||
dns_fixedname_init(&fixed);
|
||||
name = dns_fixedname_name(&fixed);
|
||||
dns_name_copy(query->lookup->name, name, NULL);
|
||||
chase_cnamechain(msg, name);
|
||||
dns_name_format(name, namestr, sizeof(namestr));
|
||||
|
||||
dns_name_format(query->lookup->name, namestr, sizeof(namestr));
|
||||
lookup = clone_lookup(query->lookup, ISC_FALSE);
|
||||
if (lookup != NULL) {
|
||||
strncpy(lookup->textname, namestr,
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
|
||||
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.0//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.0/docbookx.dtd"
|
||||
[<!ENTITY mdash "—">]>
|
||||
<!--
|
||||
- Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
- Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2002 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
- purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -18,7 +18,7 @@
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
|
||||
<!-- $Id: host.docbook,v 1.2.2.2.4.10 2007/01/29 22:14:53 sra Exp $ -->
|
||||
<!-- $Id: host.docbook,v 1.2.2.2.4.7 2005/05/13 01:22:32 marka Exp $ -->
|
||||
|
||||
<refentry>
|
||||
|
||||
@@ -36,14 +36,12 @@
|
||||
<copyright>
|
||||
<year>2004</year>
|
||||
<year>2005</year>
|
||||
<year>2007</year>
|
||||
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
|
||||
</copyright>
|
||||
<copyright>
|
||||
<year>2000</year>
|
||||
<year>2001</year>
|
||||
<year>2002</year>
|
||||
<year>2003</year>
|
||||
<holder>Internet Software Consortium.</holder>
|
||||
</copyright>
|
||||
</docinfo>
|
||||
|
||||
+8
-8
@@ -1,6 +1,6 @@
|
||||
<!--
|
||||
- Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
- Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2002 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
- purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -14,15 +14,15 @@
|
||||
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
<!-- $Id: host.html,v 1.4.2.1.4.18 2007/01/26 23:27:33 marka Exp $ -->
|
||||
<!-- $Id: host.html,v 1.4.2.1.4.12 2005/10/13 02:33:44 marka Exp $ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>host</title>
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.69.1">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en">
|
||||
<a name="id2476275"></a><div class="titlepage"></div>
|
||||
<a name="id2463721"></a><div class="titlepage"></div>
|
||||
<div class="refnamediv">
|
||||
<h2>Name</h2>
|
||||
<p>host — DNS lookup utility</p>
|
||||
@@ -32,7 +32,7 @@
|
||||
<div class="cmdsynopsis"><p><code class="command">host</code> [<code class="option">-aCdlnrTwv</code>] [<code class="option">-c <em class="replaceable"><code>class</code></em></code>] [<code class="option">-N <em class="replaceable"><code>ndots</code></em></code>] [<code class="option">-R <em class="replaceable"><code>number</code></em></code>] [<code class="option">-t <em class="replaceable"><code>type</code></em></code>] [<code class="option">-W <em class="replaceable"><code>wait</code></em></code>] [<code class="option">-4</code>] [<code class="option">-6</code>] {name} [server]</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543411"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2525901"></a><h2>DESCRIPTION</h2>
|
||||
<p>
|
||||
<span><strong class="command">host</strong></span>
|
||||
is a simple utility for performing DNS lookups.
|
||||
@@ -155,13 +155,13 @@ value for an integer quantity.
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543682"></a><h2>FILES</h2>
|
||||
<a name="id2526241"></a><h2>FILES</h2>
|
||||
<p>
|
||||
<code class="filename">/etc/resolv.conf</code>
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543694"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2526253"></a><h2>SEE ALSO</h2>
|
||||
<p>
|
||||
<span class="citerefentry"><span class="refentrytitle">dig</span>(1)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">named</span>(8)</span>.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2006 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: dig.h,v 1.71.2.6.2.15 2006/12/07 06:07:56 marka Exp $ */
|
||||
/* $Id: dig.h,v 1.71.2.6.2.11 2005/07/04 03:29:45 marka Exp $ */
|
||||
|
||||
#ifndef DIG_H
|
||||
#define DIG_H
|
||||
@@ -116,8 +116,6 @@ struct dig_lookup {
|
||||
section_additional,
|
||||
servfail_stops,
|
||||
new_search,
|
||||
need_search,
|
||||
done_as_is,
|
||||
besteffort,
|
||||
dnssec;
|
||||
#ifdef DIG_SIGCHASE
|
||||
@@ -148,7 +146,7 @@ isc_boolean_t sigchase;
|
||||
char onamespace[BUFSIZE];
|
||||
isc_buffer_t namebuf;
|
||||
isc_buffer_t onamebuf;
|
||||
isc_buffer_t renderbuf;
|
||||
isc_buffer_t sendbuf;
|
||||
char *sendspace;
|
||||
dns_name_t *name;
|
||||
isc_timer_t *timer;
|
||||
@@ -175,8 +173,6 @@ isc_boolean_t sigchase;
|
||||
struct dig_query {
|
||||
dig_lookup_t *lookup;
|
||||
isc_boolean_t waiting_connect,
|
||||
pending_free,
|
||||
waiting_senddone,
|
||||
first_pass,
|
||||
first_soa_rcvd,
|
||||
second_rr_rcvd,
|
||||
@@ -202,7 +198,6 @@ struct dig_query {
|
||||
ISC_LINK(dig_query_t) link;
|
||||
isc_sockaddr_t sockaddr;
|
||||
isc_time_t time_sent;
|
||||
isc_buffer_t sendbuf;
|
||||
};
|
||||
|
||||
struct dig_server {
|
||||
|
||||
+43
-107
@@ -1,4 +1,4 @@
|
||||
.\" Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and distribute this software for any
|
||||
.\" purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -12,17 +12,14 @@
|
||||
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
.\" PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.\" $Id: nslookup.1,v 1.1.6.10 2007/01/30 00:11:47 marka Exp $
|
||||
.\" $Id: nslookup.1,v 1.1.6.5 2005/10/13 02:33:43 marka Exp $
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
.\" Title: nslookup
|
||||
.\" Author:
|
||||
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
|
||||
.\" Date: Jun 30, 2000
|
||||
.\" Manual: BIND9
|
||||
.\" Source: BIND9
|
||||
.\"
|
||||
.\" ** You probably do not want to edit this file directly **
|
||||
.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
|
||||
.\" Instead of manually editing it, you probably should edit the DocBook XML
|
||||
.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
|
||||
.TH "NSLOOKUP" "1" "Jun 30, 2000" "BIND9" "BIND9"
|
||||
.\" disable hyphenation
|
||||
.nh
|
||||
@@ -42,34 +39,27 @@ has two modes: interactive and non\-interactive. Interactive mode allows the use
|
||||
.SH "ARGUMENTS"
|
||||
.PP
|
||||
Interactive mode is entered in the following cases:
|
||||
.TP 4
|
||||
.TP 3
|
||||
1.
|
||||
when no arguments are given (the default name server will be used)
|
||||
.TP 4
|
||||
.TP
|
||||
2.
|
||||
when the first argument is a hyphen (\-) and the second argument is the host name or Internet address of a name server.
|
||||
.sp
|
||||
.RE
|
||||
.PP
|
||||
Non\-interactive mode is used when the name or Internet address of the host to be looked up is given as the first argument. The optional second argument specifies the host name or address of a name server.
|
||||
.PP
|
||||
Options can also be specified on the command line if they precede the arguments and are prefixed with a hyphen. For example, to change the default query type to host information, and the initial timeout to 10 seconds, type:
|
||||
.sp .RS 4 .nf nslookup \-query=hinfo \-timeout=10 .fi .RE
|
||||
.IP .sp .nf nslookup \-query=hinfo \-timeout=10 .fi
|
||||
.SH "INTERACTIVE COMMANDS"
|
||||
.PP
|
||||
\fBhost\fR [server]
|
||||
.RS 4
|
||||
.TP
|
||||
host [server]
|
||||
Look up information for host using the current default server or using server, if specified. If host is an Internet address and the query type is A or PTR, the name of the host is returned. If host is a name and does not have a trailing period, the search list is used to qualify the name.
|
||||
.sp
|
||||
To look up a host not in the current domain, append a period to the name.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fBserver\fR \fIdomain\fR
|
||||
.RS 4
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fBlserver\fR \fIdomain\fR
|
||||
.RS 4
|
||||
Change the default server to
|
||||
\fIdomain\fR;
|
||||
\fBlserver\fR
|
||||
@@ -77,158 +67,107 @@ uses the initial server to look up information about
|
||||
\fIdomain\fR, while
|
||||
\fBserver\fR
|
||||
uses the current default server. If an authoritative answer can't be found, the names of servers that might have the answer are returned.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fBroot\fR
|
||||
.RS 4
|
||||
not implemented
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fBfinger\fR
|
||||
.RS 4
|
||||
not implemented
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fBls\fR
|
||||
.RS 4
|
||||
not implemented
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fBview\fR
|
||||
.RS 4
|
||||
not implemented
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fBhelp\fR
|
||||
.RS 4
|
||||
not implemented
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB?\fR
|
||||
.RS 4
|
||||
not implemented
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fBexit\fR
|
||||
.RS 4
|
||||
Exits the program.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fBset\fR \fIkeyword\fR\fI[=value]\fR
|
||||
.RS 4
|
||||
This command is used to change state information that affects the lookups. Valid keywords are:
|
||||
.RS 4
|
||||
.PP
|
||||
.RS
|
||||
.TP
|
||||
\fBall\fR
|
||||
.RS 4
|
||||
Prints the current values of the frequently used options to
|
||||
\fBset\fR. Information about the current default server and host is also printed.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fBclass=\fR\fIvalue\fR
|
||||
.RS 4
|
||||
Change the query class to one of:
|
||||
.RS 4
|
||||
.PP
|
||||
.RS
|
||||
.TP
|
||||
\fBIN\fR
|
||||
.RS 4
|
||||
the Internet class
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fBCH\fR
|
||||
.RS 4
|
||||
the Chaos class
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fBHS\fR
|
||||
.RS 4
|
||||
the Hesiod class
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fBANY\fR
|
||||
.RS 4
|
||||
wildcard
|
||||
.RE
|
||||
.RE
|
||||
.IP "" 4
|
||||
.IP
|
||||
The class specifies the protocol group of the information.
|
||||
.sp
|
||||
(Default = IN; abbreviation = cl)
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB\fI[no]\fR\fR\fBdebug\fR
|
||||
.RS 4
|
||||
Turn debugging mode on. A lot more information is printed about the packet sent to the server and the resulting answer.
|
||||
.sp
|
||||
(Default = nodebug; abbreviation =
|
||||
[no]deb)
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB\fI[no]\fR\fR\fBd2\fR
|
||||
.RS 4
|
||||
Turn debugging mode on. A lot more information is printed about the packet sent to the server and the resulting answer.
|
||||
.sp
|
||||
(Default = nod2)
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fBdomain=\fR\fIname\fR
|
||||
.RS 4
|
||||
Sets the search list to
|
||||
\fIname\fR.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB\fI[no]\fR\fR\fBsearch\fR
|
||||
.RS 4
|
||||
If the lookup request contains at least one period but doesn't end with a trailing period, append the domain names in the domain search list to the request until an answer is received.
|
||||
.sp
|
||||
(Default = search)
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fBport=\fR\fIvalue\fR
|
||||
.RS 4
|
||||
Change the default TCP/UDP name server port to
|
||||
\fIvalue\fR.
|
||||
.sp
|
||||
(Default = 53; abbreviation = po)
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fBquerytype=\fR\fIvalue\fR
|
||||
.RS 4
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fBtype=\fR\fIvalue\fR
|
||||
.RS 4
|
||||
Change the type of the information query.
|
||||
Change the top of the information query.
|
||||
.sp
|
||||
(Default = A; abbreviations = q, ty)
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB\fI[no]\fR\fR\fBrecurse\fR
|
||||
.RS 4
|
||||
Tell the name server to query other servers if it does not have the information.
|
||||
.sp
|
||||
(Default = recurse; abbreviation = [no]rec)
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fBretry=\fR\fInumber\fR
|
||||
.RS 4
|
||||
Set the number of retries to number.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fBtimeout=\fR\fInumber\fR
|
||||
.RS 4
|
||||
Change the initial timeout interval for waiting for a reply to number seconds.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fB\fI[no]\fR\fR\fBvc\fR
|
||||
.RS 4
|
||||
Always use a virtual circuit when sending requests to the server.
|
||||
.sp
|
||||
(Default = novc)
|
||||
.RE
|
||||
.RE
|
||||
.IP "" 4
|
||||
.RE
|
||||
.IP
|
||||
.SH "FILES"
|
||||
.PP
|
||||
\fI/etc/resolv.conf\fR
|
||||
@@ -240,6 +179,3 @@ Always use a virtual circuit when sending requests to the server.
|
||||
.SH "AUTHOR"
|
||||
.PP
|
||||
Andrew Cherenson
|
||||
.SH "COPYRIGHT"
|
||||
Copyright \(co 2004\-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
.br
|
||||
|
||||
+2
-3
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2006 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: nslookup.c,v 1.90.2.4.2.12 2006/06/09 23:50:53 marka Exp $ */
|
||||
/* $Id: nslookup.c,v 1.90.2.4.2.10 2005/07/12 05:47:42 marka Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -708,7 +708,6 @@ get_next_command(void) {
|
||||
if (buf == NULL)
|
||||
fatal("memory allocation failure");
|
||||
fputs("> ", stderr);
|
||||
fflush(stderr);
|
||||
isc_app_block();
|
||||
ptr = fgets(buf, COMMSIZE, stdin);
|
||||
isc_app_unblock();
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
|
||||
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.0//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.0/docbookx.dtd"
|
||||
[<!ENTITY mdash "—">]>
|
||||
<!--
|
||||
- Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
- purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -17,7 +17,7 @@
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
|
||||
<!-- $Id: nslookup.docbook,v 1.3.6.10 2007/01/29 23:57:18 marka Exp $ -->
|
||||
<!-- $Id: nslookup.docbook,v 1.3.6.5 2005/05/13 01:22:33 marka Exp $ -->
|
||||
|
||||
<!--
|
||||
- Copyright (c) 1985, 1989
|
||||
@@ -68,8 +68,6 @@
|
||||
<copyright>
|
||||
<year>2004</year>
|
||||
<year>2005</year>
|
||||
<year>2006</year>
|
||||
<year>2007</year>
|
||||
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
|
||||
</copyright>
|
||||
</docinfo>
|
||||
@@ -142,7 +140,7 @@ nslookup -query=hinfo -timeout=10
|
||||
<refsect1>
|
||||
<title>INTERACTIVE COMMANDS</title>
|
||||
<variablelist>
|
||||
<varlistentry><term><constant>host</constant> <optional>server</optional></term>
|
||||
<varlistentry><term>host <optional>server</optional></term>
|
||||
<listitem><para>
|
||||
Look up information for host using the current default server or
|
||||
using server, if specified. If host is an Internet address and
|
||||
@@ -265,7 +263,7 @@ the lookups. Valid keywords are:
|
||||
|
||||
<varlistentry><term><constant>type=</constant><replaceable>value</replaceable></term>
|
||||
<listitem><para>
|
||||
Change the type of the information query.
|
||||
Change the top of the information query.
|
||||
</para><para>
|
||||
(Default = A; abbreviations = q, ty)
|
||||
</para></listitem></varlistentry>
|
||||
|
||||
+12
-12
@@ -1,5 +1,5 @@
|
||||
<!--
|
||||
- Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
- purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -13,15 +13,15 @@
|
||||
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
<!-- $Id: nslookup.html,v 1.1.6.16 2007/01/30 00:11:47 marka Exp $ -->
|
||||
<!-- $Id: nslookup.html,v 1.1.6.9 2005/10/13 02:33:44 marka Exp $ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>nslookup</title>
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.69.1">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en">
|
||||
<a name="id2476276"></a><div class="titlepage"></div>
|
||||
<a name="id2463728"></a><div class="titlepage"></div>
|
||||
<div class="refnamediv">
|
||||
<h2>Name</h2>
|
||||
<p>nslookup — query Internet name servers interactively</p>
|
||||
@@ -31,7 +31,7 @@
|
||||
<div class="cmdsynopsis"><p><code class="command">nslookup</code> [<code class="option">-option</code>] [name | -] [server]</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543346"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2525973"></a><h2>DESCRIPTION</h2>
|
||||
<p>
|
||||
<span><strong class="command">Nslookup</strong></span>
|
||||
is a program to query Internet domain name servers. <span><strong class="command">Nslookup</strong></span>
|
||||
@@ -43,7 +43,7 @@ domain.
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543363"></a><h2>ARGUMENTS</h2>
|
||||
<a name="id2525990"></a><h2>ARGUMENTS</h2>
|
||||
<p>
|
||||
Interactive mode is entered in the following cases:
|
||||
</p>
|
||||
@@ -75,9 +75,9 @@ nslookup -query=hinfo -timeout=10
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543405"></a><h2>INTERACTIVE COMMANDS</h2>
|
||||
<a name="id2526033"></a><h2>INTERACTIVE COMMANDS</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term"><code class="constant">host</code> [<span class="optional">server</span>]</span></dt>
|
||||
<dt><span class="term">host [<span class="optional">server</span>]</span></dt>
|
||||
<dd>
|
||||
<p>
|
||||
Look up information for host using the current default server or
|
||||
@@ -200,7 +200,7 @@ the lookups. Valid keywords are:
|
||||
<dt><span class="term"><code class="constant">type=</code><em class="replaceable"><code>value</code></em></span></dt>
|
||||
<dd>
|
||||
<p>
|
||||
Change the type of the information query.
|
||||
Change the top of the information query.
|
||||
</p>
|
||||
<p>
|
||||
(Default = A; abbreviations = q, ty)
|
||||
@@ -241,13 +241,13 @@ the lookups. Valid keywords are:
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543797"></a><h2>FILES</h2>
|
||||
<a name="id2526490"></a><h2>FILES</h2>
|
||||
<p>
|
||||
<code class="filename">/etc/resolv.conf</code>
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543810"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2526503"></a><h2>SEE ALSO</h2>
|
||||
<p>
|
||||
<span class="citerefentry"><span class="refentrytitle">dig</span>(1)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">host</span>(1)</span>,
|
||||
@@ -255,7 +255,7 @@ the lookups. Valid keywords are:
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543845"></a><h2>Author</h2>
|
||||
<a name="id2526538"></a><h2>Author</h2>
|
||||
<p>
|
||||
Andrew Cherenson
|
||||
</p>
|
||||
|
||||
@@ -50,7 +50,7 @@ BSC32=bscmake.exe
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
|
||||
# ADD LINK32 user32.lib advapi32.lib ws2_32.lib Release/dighost.lib ../../../lib/isc/win32/Release/libisc.lib ../../../lib/dns/win32/Release/libdns.lib ../../../lib/bind9/win32/Release/libbind9.lib ../../../lib/lwres/win32/Release/liblwres.lib /nologo /subsystem:console /machine:I386 /out:"../../../Build/Release/dig.exe"
|
||||
# ADD LINK32 user32.lib advapi32.lib ws2_32.lib ../../../lib/isc/win32/Release/libisc.lib ../../../lib/dns/win32/Release/libdns.lib ../../../lib/bind9/win32/Release/libbind9.lib ../../../lib/lwres/win32/Release/liblwres.lib /nologo /subsystem:console /machine:I386 /out:"../../../Build/Release/dig.exe"
|
||||
|
||||
!ELSEIF "$(CFG)" == "dig - Win32 Debug"
|
||||
|
||||
@@ -75,7 +75,7 @@ BSC32=bscmake.exe
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
|
||||
# ADD LINK32 user32.lib advapi32.lib ws2_32.lib Debug/dighost.lib ../../../lib/isc/win32/Debug/libisc.lib ../../../lib/dns/win32/Debug/libdns.lib ../../../lib/bind9/win32/Debug/libbind9.lib ../../../lib/lwres/win32/Debug/liblwres.lib /nologo /subsystem:console /debug /machine:I386 /out:"../../../Build/Debug/dig.exe" /pdbtype:sept
|
||||
# ADD LINK32 user32.lib advapi32.lib ws2_32.lib ../../../lib/isc/win32/Debug/libisc.lib ../../../lib/dns/win32/Debug/libdns.lib ../../../lib/bind9/win32/Debug/libbind9.lib ../../../lib/lwres/win32/Debug/liblwres.lib /nologo /subsystem:console /debug /machine:I386 /out:"../../../Build/Debug/dig.exe" /pdbtype:sept
|
||||
|
||||
!ENDIF
|
||||
|
||||
@@ -90,6 +90,10 @@ LINK32=link.exe
|
||||
|
||||
SOURCE=..\dig.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\dighost.c
|
||||
# End Source File
|
||||
# End Group
|
||||
# Begin Group "Header Files"
|
||||
|
||||
|
||||
@@ -28,81 +28,6 @@ NULL=nul
|
||||
CPP=cl.exe
|
||||
RSC=rc.exe
|
||||
|
||||
!IF "$(CFG)" == "dig - Win32 Release"
|
||||
_VC_MANIFEST_INC=0
|
||||
_VC_MANIFEST_BASENAME=__VC80
|
||||
!ELSE
|
||||
_VC_MANIFEST_INC=1
|
||||
_VC_MANIFEST_BASENAME=__VC80.Debug
|
||||
!ENDIF
|
||||
|
||||
####################################################
|
||||
# Specifying name of temporary resource file used only in incremental builds:
|
||||
|
||||
!if "$(_VC_MANIFEST_INC)" == "1"
|
||||
_VC_MANIFEST_AUTO_RES=$(_VC_MANIFEST_BASENAME).auto.res
|
||||
!else
|
||||
_VC_MANIFEST_AUTO_RES=
|
||||
!endif
|
||||
|
||||
####################################################
|
||||
# _VC_MANIFEST_EMBED_EXE - command to embed manifest in EXE:
|
||||
|
||||
!if "$(_VC_MANIFEST_INC)" == "1"
|
||||
|
||||
#MT_SPECIAL_RETURN=1090650113
|
||||
#MT_SPECIAL_SWITCH=-notify_resource_update
|
||||
MT_SPECIAL_RETURN=0
|
||||
MT_SPECIAL_SWITCH=
|
||||
_VC_MANIFEST_EMBED_EXE= \
|
||||
if exist $@.manifest mt.exe -manifest $@.manifest -out:$(_VC_MANIFEST_BASENAME).auto.manifest $(MT_SPECIAL_SWITCH) & \
|
||||
if "%ERRORLEVEL%" == "$(MT_SPECIAL_RETURN)" \
|
||||
rc /r $(_VC_MANIFEST_BASENAME).auto.rc & \
|
||||
link $** /out:$@ $(LFLAGS)
|
||||
|
||||
!else
|
||||
|
||||
_VC_MANIFEST_EMBED_EXE= \
|
||||
if exist $@.manifest mt.exe -manifest $@.manifest -outputresource:$@;1
|
||||
|
||||
!endif
|
||||
|
||||
####################################################
|
||||
# _VC_MANIFEST_EMBED_DLL - command to embed manifest in DLL:
|
||||
|
||||
!if "$(_VC_MANIFEST_INC)" == "1"
|
||||
|
||||
#MT_SPECIAL_RETURN=1090650113
|
||||
#MT_SPECIAL_SWITCH=-notify_resource_update
|
||||
MT_SPECIAL_RETURN=0
|
||||
MT_SPECIAL_SWITCH=
|
||||
_VC_MANIFEST_EMBED_EXE= \
|
||||
if exist $@.manifest mt.exe -manifest $@.manifest -out:$(_VC_MANIFEST_BASENAME).auto.manifest $(MT_SPECIAL_SWITCH) & \
|
||||
if "%ERRORLEVEL%" == "$(MT_SPECIAL_RETURN)" \
|
||||
rc /r $(_VC_MANIFEST_BASENAME).auto.rc & \
|
||||
link $** /out:$@ $(LFLAGS)
|
||||
|
||||
!else
|
||||
|
||||
_VC_MANIFEST_EMBED_EXE= \
|
||||
if exist $@.manifest mt.exe -manifest $@.manifest -outputresource:$@;2
|
||||
|
||||
!endif
|
||||
####################################################
|
||||
# _VC_MANIFEST_CLEAN - command to clean resources files generated temporarily:
|
||||
|
||||
!if "$(_VC_MANIFEST_INC)" == "1"
|
||||
|
||||
_VC_MANIFEST_CLEAN=-del $(_VC_MANIFEST_BASENAME).auto.res \
|
||||
$(_VC_MANIFEST_BASENAME).auto.rc \
|
||||
$(_VC_MANIFEST_BASENAME).auto.manifest
|
||||
|
||||
!else
|
||||
|
||||
_VC_MANIFEST_CLEAN=
|
||||
|
||||
!endif
|
||||
|
||||
!IF "$(CFG)" == "dig - Win32 Release"
|
||||
|
||||
OUTDIR=.\Release
|
||||
@@ -127,7 +52,6 @@ CLEAN :
|
||||
-@erase "$(INTDIR)\dighost.obj"
|
||||
-@erase "$(INTDIR)\vc60.idb"
|
||||
-@erase "..\..\..\Build\Release\dig.exe"
|
||||
-@$(_VC_MANIFEST_CLEAN)
|
||||
|
||||
"$(OUTDIR)" :
|
||||
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
|
||||
@@ -151,7 +75,6 @@ LINK32_OBJS= \
|
||||
$(LINK32) @<<
|
||||
$(LINK32_FLAGS) $(LINK32_OBJS)
|
||||
<<
|
||||
$(_VC_MANIFEST_EMBED_EXE)
|
||||
|
||||
!ELSEIF "$(CFG)" == "dig - Win32 Debug"
|
||||
|
||||
@@ -186,7 +109,6 @@ CLEAN :
|
||||
-@erase "$(OUTDIR)\dig.pdb"
|
||||
-@erase "..\..\..\Build\Debug\dig.exe"
|
||||
-@erase "..\..\..\Build\Debug\dig.ilk"
|
||||
-@$(_VC_MANIFEST_CLEAN)
|
||||
|
||||
"$(OUTDIR)" :
|
||||
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
|
||||
@@ -217,7 +139,6 @@ LINK32_OBJS= \
|
||||
$(LINK32) @<<
|
||||
$(LINK32_FLAGS) $(LINK32_OBJS)
|
||||
<<
|
||||
$(_VC_MANIFEST_EMBED_EXE)
|
||||
|
||||
!ENDIF
|
||||
|
||||
@@ -405,21 +326,3 @@ SOURCE=..\dighost.c
|
||||
|
||||
!ENDIF
|
||||
|
||||
####################################################
|
||||
# Commands to generate initial empty manifest file and the RC file
|
||||
# that references it, and for generating the .res file:
|
||||
|
||||
$(_VC_MANIFEST_BASENAME).auto.res : $(_VC_MANIFEST_BASENAME).auto.rc
|
||||
|
||||
$(_VC_MANIFEST_BASENAME).auto.rc : $(_VC_MANIFEST_BASENAME).auto.manifest
|
||||
type <<$@
|
||||
#include <winuser.h>
|
||||
1RT_MANIFEST"$(_VC_MANIFEST_BASENAME).auto.manifest"
|
||||
<< KEEP
|
||||
|
||||
$(_VC_MANIFEST_BASENAME).auto.manifest :
|
||||
type <<$@
|
||||
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
|
||||
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
|
||||
</assembly>
|
||||
<< KEEP
|
||||
|
||||
@@ -1,113 +0,0 @@
|
||||
# Microsoft Developer Studio Project File - Name="dighost" - Package Owner=<4>
|
||||
# Microsoft Developer Studio Generated Build File, Format Version 6.00
|
||||
# ** DO NOT EDIT **
|
||||
|
||||
# TARGTYPE "Win32 (x86) Static-Link Library" 0x0104
|
||||
|
||||
CFG=dighost - Win32 Debug
|
||||
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
|
||||
!MESSAGE use the Export Makefile command and run
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "dighost.mak".
|
||||
!MESSAGE
|
||||
!MESSAGE You can specify a configuration when running NMAKE
|
||||
!MESSAGE by defining the macro CFG on the command line. For example:
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "dighost.mak" CFG="dighost - Win32 Debug"
|
||||
!MESSAGE
|
||||
!MESSAGE Possible choices for configuration are:
|
||||
!MESSAGE
|
||||
!MESSAGE "dighost - Win32 Release" (based on "Win32 (x86) Static-Link Library")
|
||||
!MESSAGE "dighost - Win32 Debug" (based on "Win32 (x86) Static-Link Library")
|
||||
!MESSAGE
|
||||
|
||||
# Begin Project
|
||||
# PROP AllowPerConfigDependencies 0
|
||||
# PROP Scc_ProjName ""
|
||||
# PROP Scc_LocalPath ""
|
||||
CPP=cl.exe
|
||||
MTL=midl.exe
|
||||
RSC=rc.exe
|
||||
|
||||
!IF "$(CFG)" == "dighost - Win32 Release"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 0
|
||||
# PROP BASE Output_Dir "Release"
|
||||
# PROP BASE Intermediate_Dir "Release"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 0
|
||||
# PROP Output_Dir "Release"
|
||||
# PROP Intermediate_Dir "Release"
|
||||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /YX /FD /c
|
||||
# ADD CPP /nologo /MD /W3 /GX /O2 /I "./" /I "../../../" /I "../include" /I "../../../lib/isc/win32" /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../../../lib/lwres/win32/include" /I "../../../lib/lwres/include" /I "../../../lib/dns/include" /I "../../../lib/bind9/include" /D "NDEBUG" /D "WIN32" /D "_WINDOWS" /D "__STDC__" /D "_MBCS" /YX /FD /c /Fddighost
|
||||
# SUBTRACT CPP /X
|
||||
# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
|
||||
# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32
|
||||
# ADD LINK32 /out:"Release/dighost.lib"
|
||||
|
||||
!ELSEIF "$(CFG)" == "dighost - Win32 Debug"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 1
|
||||
# PROP BASE Output_Dir "Debug"
|
||||
# PROP BASE Intermediate_Dir "Debug"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 1
|
||||
# PROP Output_Dir "Debug"
|
||||
# PROP Intermediate_Dir "Debug"
|
||||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /GZ /c
|
||||
# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "./" /I "../../../" /I "../include" /I "../../../lib/isc/win32" /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../../../lib/lwres/win32/include" /I "../../../lib/lwres/include" /I "../../../lib/dns/include" /I "../../../lib/bind9/include" /D "_DEBUG" /D "WIN32" /D "_WINDOWS" /D "__STDC__" /D "_MBCS" /FR /YX /FD /GZ /c /Fddighost
|
||||
# SUBTRACT CPP /X
|
||||
# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
|
||||
# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
|
||||
# ADD BASE RSC /l 0x409 /d "_DEBUG"
|
||||
# ADD RSC /l 0x409 /d "_DEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32
|
||||
# ADD LINK32 /debug out:"Debug/dighost.lib"
|
||||
|
||||
!ENDIF
|
||||
|
||||
# Begin Target
|
||||
|
||||
# Name "dighost - Win32 Release"
|
||||
# Name "dighost - Win32 Debug"
|
||||
# Begin Group "Source Files"
|
||||
|
||||
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
||||
# End Group
|
||||
# Begin Group "Header Files"
|
||||
|
||||
# PROP Default_Filter "h;hpp;hxx;hm;inl"
|
||||
# End Group
|
||||
# Begin Group "Resource Files"
|
||||
|
||||
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
|
||||
# End Group
|
||||
# Begin Group "Main Dns Lib"
|
||||
|
||||
# PROP Default_Filter "c"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\dighost.c
|
||||
# End Source File
|
||||
# End Group
|
||||
# End Target
|
||||
# End Project
|
||||
@@ -1,29 +0,0 @@
|
||||
Microsoft Developer Studio Workspace File, Format Version 6.00
|
||||
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
|
||||
|
||||
###############################################################################
|
||||
|
||||
Project: "dighost"=".\dighost.dsp" - Package Owner=<4>
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<4>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
Global:
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<3>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
@@ -50,7 +50,7 @@ BSC32=bscmake.exe
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
|
||||
# ADD LINK32 user32.lib advapi32.lib ws2_32.lib Release/dighost.lib ../../../lib/isc/win32/Release/libisc.lib ../../../lib/dns/win32/Release/libdns.lib ../../../lib/bind9/win32/Release/libbind9.lib ../../../lib/lwres/win32/Release/liblwres.lib /nologo /subsystem:console /machine:I386 /out:"../../../Build/Release/host.exe"
|
||||
# ADD LINK32 user32.lib advapi32.lib ws2_32.lib ../../../lib/isc/win32/Release/libisc.lib ../../../lib/dns/win32/Release/libdns.lib ../../../lib/bind9/win32/Release/libbind9.lib ../../../lib/lwres/win32/Release/liblwres.lib /nologo /subsystem:console /machine:I386 /out:"../../../Build/Release/host.exe"
|
||||
|
||||
!ELSEIF "$(CFG)" == "host - Win32 Debug"
|
||||
|
||||
@@ -75,7 +75,7 @@ BSC32=bscmake.exe
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
|
||||
# ADD LINK32 user32.lib advapi32.lib ws2_32.lib Debug/dighost.lib ../../../lib/isc/win32/Debug/libisc.lib ../../../lib/dns/win32/Debug/libdns.lib ../../../lib/bind9/win32/Debug/libbind9.lib ../../../lib/lwres/win32/Debug/liblwres.lib /nologo /subsystem:console /debug /machine:I386 /out:"../../../Build/Debug/host.exe" /pdbtype:sept
|
||||
# ADD LINK32 user32.lib advapi32.lib ws2_32.lib ../../../lib/isc/win32/Debug/libisc.lib ../../../lib/dns/win32/Debug/libdns.lib ../../../lib/bind9/win32/Debug/libbind9.lib ../../../lib/lwres/win32/Debug/liblwres.lib /nologo /subsystem:console /debug /machine:I386 /out:"../../../Build/Debug/host.exe" /pdbtype:sept
|
||||
|
||||
!ENDIF
|
||||
|
||||
@@ -88,6 +88,10 @@ LINK32=link.exe
|
||||
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\dighost.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\host.c
|
||||
# End Source File
|
||||
# End Group
|
||||
|
||||
@@ -28,81 +28,6 @@ NULL=nul
|
||||
CPP=cl.exe
|
||||
RSC=rc.exe
|
||||
|
||||
!IF "$(CFG)" == "host - Win32 Release"
|
||||
_VC_MANIFEST_INC=0
|
||||
_VC_MANIFEST_BASENAME=__VC80
|
||||
!ELSE
|
||||
_VC_MANIFEST_INC=1
|
||||
_VC_MANIFEST_BASENAME=__VC80.Debug
|
||||
!ENDIF
|
||||
|
||||
####################################################
|
||||
# Specifying name of temporary resource file used only in incremental builds:
|
||||
|
||||
!if "$(_VC_MANIFEST_INC)" == "1"
|
||||
_VC_MANIFEST_AUTO_RES=$(_VC_MANIFEST_BASENAME).auto.res
|
||||
!else
|
||||
_VC_MANIFEST_AUTO_RES=
|
||||
!endif
|
||||
|
||||
####################################################
|
||||
# _VC_MANIFEST_EMBED_EXE - command to embed manifest in EXE:
|
||||
|
||||
!if "$(_VC_MANIFEST_INC)" == "1"
|
||||
|
||||
#MT_SPECIAL_RETURN=1090650113
|
||||
#MT_SPECIAL_SWITCH=-notify_resource_update
|
||||
MT_SPECIAL_RETURN=0
|
||||
MT_SPECIAL_SWITCH=
|
||||
_VC_MANIFEST_EMBED_EXE= \
|
||||
if exist $@.manifest mt.exe -manifest $@.manifest -out:$(_VC_MANIFEST_BASENAME).auto.manifest $(MT_SPECIAL_SWITCH) & \
|
||||
if "%ERRORLEVEL%" == "$(MT_SPECIAL_RETURN)" \
|
||||
rc /r $(_VC_MANIFEST_BASENAME).auto.rc & \
|
||||
link $** /out:$@ $(LFLAGS)
|
||||
|
||||
!else
|
||||
|
||||
_VC_MANIFEST_EMBED_EXE= \
|
||||
if exist $@.manifest mt.exe -manifest $@.manifest -outputresource:$@;1
|
||||
|
||||
!endif
|
||||
|
||||
####################################################
|
||||
# _VC_MANIFEST_EMBED_DLL - command to embed manifest in DLL:
|
||||
|
||||
!if "$(_VC_MANIFEST_INC)" == "1"
|
||||
|
||||
#MT_SPECIAL_RETURN=1090650113
|
||||
#MT_SPECIAL_SWITCH=-notify_resource_update
|
||||
MT_SPECIAL_RETURN=0
|
||||
MT_SPECIAL_SWITCH=
|
||||
_VC_MANIFEST_EMBED_EXE= \
|
||||
if exist $@.manifest mt.exe -manifest $@.manifest -out:$(_VC_MANIFEST_BASENAME).auto.manifest $(MT_SPECIAL_SWITCH) & \
|
||||
if "%ERRORLEVEL%" == "$(MT_SPECIAL_RETURN)" \
|
||||
rc /r $(_VC_MANIFEST_BASENAME).auto.rc & \
|
||||
link $** /out:$@ $(LFLAGS)
|
||||
|
||||
!else
|
||||
|
||||
_VC_MANIFEST_EMBED_EXE= \
|
||||
if exist $@.manifest mt.exe -manifest $@.manifest -outputresource:$@;2
|
||||
|
||||
!endif
|
||||
####################################################
|
||||
# _VC_MANIFEST_CLEAN - command to clean resources files generated temporarily:
|
||||
|
||||
!if "$(_VC_MANIFEST_INC)" == "1"
|
||||
|
||||
_VC_MANIFEST_CLEAN=-del $(_VC_MANIFEST_BASENAME).auto.res \
|
||||
$(_VC_MANIFEST_BASENAME).auto.rc \
|
||||
$(_VC_MANIFEST_BASENAME).auto.manifest
|
||||
|
||||
!else
|
||||
|
||||
_VC_MANIFEST_CLEAN=
|
||||
|
||||
!endif
|
||||
|
||||
!IF "$(CFG)" == "host - Win32 Release"
|
||||
|
||||
OUTDIR=.\Release
|
||||
@@ -127,7 +52,6 @@ CLEAN :
|
||||
-@erase "$(INTDIR)\host.obj"
|
||||
-@erase "$(INTDIR)\vc60.idb"
|
||||
-@erase "..\..\..\Build\Release\host.exe"
|
||||
-@$(_VC_MANIFEST_CLEAN)
|
||||
|
||||
"$(OUTDIR)" :
|
||||
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
|
||||
@@ -151,7 +75,6 @@ LINK32_OBJS= \
|
||||
$(LINK32) @<<
|
||||
$(LINK32_FLAGS) $(LINK32_OBJS)
|
||||
<<
|
||||
$(_VC_MANIFEST_EMBED_EXE)
|
||||
|
||||
!ELSEIF "$(CFG)" == "host - Win32 Debug"
|
||||
|
||||
@@ -186,7 +109,6 @@ CLEAN :
|
||||
-@erase "$(OUTDIR)\host.pdb"
|
||||
-@erase "..\..\..\Build\Debug\host.exe"
|
||||
-@erase "..\..\..\Build\Debug\host.ilk"
|
||||
-@$(_VC_MANIFEST_CLEAN)
|
||||
|
||||
"$(OUTDIR)" :
|
||||
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
|
||||
@@ -217,7 +139,6 @@ LINK32_OBJS= \
|
||||
$(LINK32) @<<
|
||||
$(LINK32_FLAGS) $(LINK32_OBJS)
|
||||
<<
|
||||
$(_VC_MANIFEST_EMBED_EXE)
|
||||
|
||||
!ENDIF
|
||||
|
||||
@@ -405,21 +326,3 @@ SOURCE=..\host.c
|
||||
|
||||
!ENDIF
|
||||
|
||||
####################################################
|
||||
# Commands to generate initial empty manifest file and the RC file
|
||||
# that references it, and for generating the .res file:
|
||||
|
||||
$(_VC_MANIFEST_BASENAME).auto.res : $(_VC_MANIFEST_BASENAME).auto.rc
|
||||
|
||||
$(_VC_MANIFEST_BASENAME).auto.rc : $(_VC_MANIFEST_BASENAME).auto.manifest
|
||||
type <<$@
|
||||
#include <winuser.h>
|
||||
1RT_MANIFEST"$(_VC_MANIFEST_BASENAME).auto.manifest"
|
||||
<< KEEP
|
||||
|
||||
$(_VC_MANIFEST_BASENAME).auto.manifest :
|
||||
type <<$@
|
||||
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
|
||||
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
|
||||
</assembly>
|
||||
<< KEEP
|
||||
|
||||
@@ -28,81 +28,6 @@ NULL=nul
|
||||
CPP=cl.exe
|
||||
RSC=rc.exe
|
||||
|
||||
!IF "$(CFG)" == "nslookup - Win32 Release"
|
||||
_VC_MANIFEST_INC=0
|
||||
_VC_MANIFEST_BASENAME=__VC80
|
||||
!ELSE
|
||||
_VC_MANIFEST_INC=1
|
||||
_VC_MANIFEST_BASENAME=__VC80.Debug
|
||||
!ENDIF
|
||||
|
||||
####################################################
|
||||
# Specifying name of temporary resource file used only in incremental builds:
|
||||
|
||||
!if "$(_VC_MANIFEST_INC)" == "1"
|
||||
_VC_MANIFEST_AUTO_RES=$(_VC_MANIFEST_BASENAME).auto.res
|
||||
!else
|
||||
_VC_MANIFEST_AUTO_RES=
|
||||
!endif
|
||||
|
||||
####################################################
|
||||
# _VC_MANIFEST_EMBED_EXE - command to embed manifest in EXE:
|
||||
|
||||
!if "$(_VC_MANIFEST_INC)" == "1"
|
||||
|
||||
#MT_SPECIAL_RETURN=1090650113
|
||||
#MT_SPECIAL_SWITCH=-notify_resource_update
|
||||
MT_SPECIAL_RETURN=0
|
||||
MT_SPECIAL_SWITCH=
|
||||
_VC_MANIFEST_EMBED_EXE= \
|
||||
if exist $@.manifest mt.exe -manifest $@.manifest -out:$(_VC_MANIFEST_BASENAME).auto.manifest $(MT_SPECIAL_SWITCH) & \
|
||||
if "%ERRORLEVEL%" == "$(MT_SPECIAL_RETURN)" \
|
||||
rc /r $(_VC_MANIFEST_BASENAME).auto.rc & \
|
||||
link $** /out:$@ $(LFLAGS)
|
||||
|
||||
!else
|
||||
|
||||
_VC_MANIFEST_EMBED_EXE= \
|
||||
if exist $@.manifest mt.exe -manifest $@.manifest -outputresource:$@;1
|
||||
|
||||
!endif
|
||||
|
||||
####################################################
|
||||
# _VC_MANIFEST_EMBED_DLL - command to embed manifest in DLL:
|
||||
|
||||
!if "$(_VC_MANIFEST_INC)" == "1"
|
||||
|
||||
#MT_SPECIAL_RETURN=1090650113
|
||||
#MT_SPECIAL_SWITCH=-notify_resource_update
|
||||
MT_SPECIAL_RETURN=0
|
||||
MT_SPECIAL_SWITCH=
|
||||
_VC_MANIFEST_EMBED_EXE= \
|
||||
if exist $@.manifest mt.exe -manifest $@.manifest -out:$(_VC_MANIFEST_BASENAME).auto.manifest $(MT_SPECIAL_SWITCH) & \
|
||||
if "%ERRORLEVEL%" == "$(MT_SPECIAL_RETURN)" \
|
||||
rc /r $(_VC_MANIFEST_BASENAME).auto.rc & \
|
||||
link $** /out:$@ $(LFLAGS)
|
||||
|
||||
!else
|
||||
|
||||
_VC_MANIFEST_EMBED_EXE= \
|
||||
if exist $@.manifest mt.exe -manifest $@.manifest -outputresource:$@;2
|
||||
|
||||
!endif
|
||||
####################################################
|
||||
# _VC_MANIFEST_CLEAN - command to clean resources files generated temporarily:
|
||||
|
||||
!if "$(_VC_MANIFEST_INC)" == "1"
|
||||
|
||||
_VC_MANIFEST_CLEAN=-del $(_VC_MANIFEST_BASENAME).auto.res \
|
||||
$(_VC_MANIFEST_BASENAME).auto.rc \
|
||||
$(_VC_MANIFEST_BASENAME).auto.manifest
|
||||
|
||||
!else
|
||||
|
||||
_VC_MANIFEST_CLEAN=
|
||||
|
||||
!endif
|
||||
|
||||
!IF "$(CFG)" == "nslookup - Win32 Release"
|
||||
|
||||
OUTDIR=.\Release
|
||||
@@ -127,7 +52,6 @@ CLEAN :
|
||||
-@erase "$(INTDIR)\nslookup.obj"
|
||||
-@erase "$(INTDIR)\vc60.idb"
|
||||
-@erase "..\..\..\Build\Release\nslookup.exe"
|
||||
-@$(_VC_MANIFEST_CLEAN)
|
||||
|
||||
"$(OUTDIR)" :
|
||||
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
|
||||
@@ -151,7 +75,6 @@ LINK32_OBJS= \
|
||||
$(LINK32) @<<
|
||||
$(LINK32_FLAGS) $(LINK32_OBJS)
|
||||
<<
|
||||
$(_VC_MANIFEST_EMBED_EXE)
|
||||
|
||||
!ELSEIF "$(CFG)" == "nslookup - Win32 Debug"
|
||||
|
||||
@@ -186,7 +109,6 @@ CLEAN :
|
||||
-@erase "$(OUTDIR)\nslookup.pdb"
|
||||
-@erase "..\..\..\Build\Debug\nslookup.exe"
|
||||
-@erase "..\..\..\Build\Debug\nslookup.ilk"
|
||||
-@$(_VC_MANIFEST_CLEAN)
|
||||
|
||||
"$(OUTDIR)" :
|
||||
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
|
||||
@@ -217,7 +139,6 @@ LINK32_OBJS= \
|
||||
$(LINK32) @<<
|
||||
$(LINK32_FLAGS) $(LINK32_OBJS)
|
||||
<<
|
||||
$(_VC_MANIFEST_EMBED_EXE)
|
||||
|
||||
!ENDIF
|
||||
|
||||
@@ -405,21 +326,3 @@ SOURCE=..\nslookup.c
|
||||
|
||||
!ENDIF
|
||||
|
||||
####################################################
|
||||
# Commands to generate initial empty manifest file and the RC file
|
||||
# that references it, and for generating the .res file:
|
||||
|
||||
$(_VC_MANIFEST_BASENAME).auto.res : $(_VC_MANIFEST_BASENAME).auto.rc
|
||||
|
||||
$(_VC_MANIFEST_BASENAME).auto.rc : $(_VC_MANIFEST_BASENAME).auto.manifest
|
||||
type <<$@
|
||||
#include <winuser.h>
|
||||
1RT_MANIFEST"$(_VC_MANIFEST_BASENAME).auto.manifest"
|
||||
<< KEEP
|
||||
|
||||
$(_VC_MANIFEST_BASENAME).auto.manifest :
|
||||
type <<$@
|
||||
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
|
||||
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
|
||||
</assembly>
|
||||
<< KEEP
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
# Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 2000-2002 Internet Software Consortium.
|
||||
#
|
||||
# Permission to use, copy, modify, and distribute this software for any
|
||||
# purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -13,7 +13,7 @@
|
||||
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
# PERFORMANCE OF THIS SOFTWARE.
|
||||
|
||||
# $Id: Makefile.in,v 1.19.12.14 2007/01/18 00:06:04 marka Exp $
|
||||
# $Id: Makefile.in,v 1.19.12.12 2005/05/02 00:25:54 marka Exp $
|
||||
|
||||
srcdir = @srcdir@
|
||||
VPATH = @srcdir@
|
||||
|
||||
+23
-59
@@ -1,4 +1,4 @@
|
||||
.\" Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -13,17 +13,14 @@
|
||||
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
.\" PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.\" $Id: dnssec-keygen.8,v 1.19.12.12 2007/01/30 00:11:47 marka Exp $
|
||||
.\" $Id: dnssec-keygen.8,v 1.19.12.9 2005/10/13 02:33:45 marka Exp $
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
.\" Title: dnssec\-keygen
|
||||
.\" Author:
|
||||
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
|
||||
.\" Date: June 30, 2000
|
||||
.\" Manual: BIND9
|
||||
.\" Source: BIND9
|
||||
.\"
|
||||
.\" ** You probably do not want to edit this file directly **
|
||||
.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
|
||||
.\" Instead of manually editing it, you probably should edit the DocBook XML
|
||||
.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
|
||||
.TH "DNSSEC\-KEYGEN" "8" "June 30, 2000" "BIND9" "BIND9"
|
||||
.\" disable hyphenation
|
||||
.nh
|
||||
@@ -39,9 +36,8 @@ dnssec\-keygen \- DNSSEC key generation tool
|
||||
\fBdnssec\-keygen\fR
|
||||
generates keys for DNSSEC (Secure DNS), as defined in RFC 2535 and RFC <TBA\\>. It can also generate keys for use with TSIG (Transaction Signatures), as defined in RFC 2845.
|
||||
.SH "OPTIONS"
|
||||
.PP
|
||||
.TP
|
||||
\-a \fIalgorithm\fR
|
||||
.RS 4
|
||||
Selects the cryptographic algorithm. The value of
|
||||
\fBalgorithm\fR
|
||||
must be one of RSAMD5 (RSA) or RSASHA1, DSA, DH (Diffie Hellman), or HMAC\-MD5. These values are case insensitive.
|
||||
@@ -49,58 +45,38 @@ must be one of RSAMD5 (RSA) or RSASHA1, DSA, DH (Diffie Hellman), or HMAC\-MD5.
|
||||
Note 1: that for DNSSEC, RSASHA1 is a mandatory to implement algorithm, and DSA is recommended. For TSIG, HMAC\-MD5 is mandatory.
|
||||
.sp
|
||||
Note 2: HMAC\-MD5 and DH automatically set the \-k flag.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-b \fIkeysize\fR
|
||||
.RS 4
|
||||
Specifies the number of bits in the key. The choice of key size depends on the algorithm used. RSAMD5 / RSASHA1 keys must be between 512 and 2048 bits. Diffie Hellman keys must be between 128 and 4096 bits. DSA keys must be between 512 and 1024 bits and an exact multiple of 64. HMAC\-MD5 keys must be between 1 and 512 bits.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-n \fInametype\fR
|
||||
.RS 4
|
||||
Specifies the owner type of the key. The value of
|
||||
\fBnametype\fR
|
||||
must either be ZONE (for a DNSSEC zone key (KEY/DNSKEY)), HOST or ENTITY (for a key associated with a host (KEY)), USER (for a key associated with a user(KEY)) or OTHER (DNSKEY). These values are case insensitive.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-c \fIclass\fR
|
||||
.RS 4
|
||||
Indicates that the DNS record containing the key should have the specified class. If not specified, class IN is used.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-e
|
||||
.RS 4
|
||||
If generating an RSAMD5/RSASHA1 key, use a large exponent.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-f \fIflag\fR
|
||||
.RS 4
|
||||
Set the specified flag in the flag field of the KEY/DNSKEY record. The only recognized flag is KSK (Key Signing Key) DNSKEY.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-g \fIgenerator\fR
|
||||
.RS 4
|
||||
If generating a Diffie Hellman key, use this generator. Allowed values are 2 and 5. If no generator is specified, a known prime from RFC 2539 will be used if possible; otherwise the default is 2.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-h
|
||||
.RS 4
|
||||
Prints a short summary of the options and arguments to
|
||||
\fBdnssec\-keygen\fR.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-k
|
||||
.RS 4
|
||||
Generate KEY records rather than DNSKEY records.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-p \fIprotocol\fR
|
||||
.RS 4
|
||||
Sets the protocol value for the generated key. The protocol is a number between 0 and 255. The default is 3 (DNSSEC). Other possible values for this argument are listed in RFC 2535 and its successors.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-r \fIrandomdev\fR
|
||||
.RS 4
|
||||
Specifies the source of randomness. If the operating system does not provide a
|
||||
\fI/dev/random\fR
|
||||
or equivalent device, the default source of randomness is keyboard input.
|
||||
@@ -108,24 +84,17 @@ or equivalent device, the default source of randomness is keyboard input.
|
||||
specifies the name of a character device or file containing random data to be used instead of the default. The special value
|
||||
\fIkeyboard\fR
|
||||
indicates that keyboard input should be used.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-s \fIstrength\fR
|
||||
.RS 4
|
||||
Specifies the strength value of the key. The strength is a number between 0 and 15, and currently has no defined purpose in DNSSEC.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-t \fItype\fR
|
||||
.RS 4
|
||||
Indicates the use of the key.
|
||||
\fBtype\fR
|
||||
must be one of AUTHCONF, NOAUTHCONF, NOAUTH, or NOCONF. The default is AUTHCONF. AUTH refers to the ability to authenticate data, and CONF the ability to encrypt data.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-v \fIlevel\fR
|
||||
.RS 4
|
||||
Sets the debugging level.
|
||||
.RE
|
||||
.SH "GENERATED KEYS"
|
||||
.PP
|
||||
When
|
||||
@@ -133,15 +102,15 @@ When
|
||||
completes successfully, it prints a string of the form
|
||||
\fIKnnnn.+aaa+iiiii\fR
|
||||
to the standard output. This is an identification string for the key it has generated.
|
||||
.TP 4
|
||||
.TP 3
|
||||
\(bu
|
||||
\fInnnn\fR
|
||||
is the key name.
|
||||
.TP 4
|
||||
.TP
|
||||
\(bu
|
||||
\fIaaa\fR
|
||||
is the numeric representation of the algorithm.
|
||||
.TP 4
|
||||
.TP
|
||||
\(bu
|
||||
\fIiiiii\fR
|
||||
is the key identifier (or footprint).
|
||||
@@ -193,8 +162,3 @@ RFC 2539.
|
||||
.SH "AUTHOR"
|
||||
.PP
|
||||
Internet Systems Consortium
|
||||
.SH "COPYRIGHT"
|
||||
Copyright \(co 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
.br
|
||||
Copyright \(co 2000\-2003 Internet Software Consortium.
|
||||
.br
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Portions Copyright (C) 2004, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Portions Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
* Portions Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Portions Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
* Portions Copyright (C) 1995-2000 by Network Associates, Inc.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -16,7 +16,7 @@
|
||||
* IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: dnssec-keygen.c,v 1.48.2.1.10.13 2007/01/18 00:06:04 marka Exp $ */
|
||||
/* $Id: dnssec-keygen.c,v 1.48.2.1.10.11 2004/06/11 01:17:34 marka Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
|
||||
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.0//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.0/docbookx.dtd"
|
||||
[<!ENTITY mdash "—">]>
|
||||
<!--
|
||||
- Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -18,7 +18,7 @@
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
|
||||
<!-- $Id: dnssec-keygen.docbook,v 1.3.12.11 2007/01/29 23:57:18 marka Exp $ -->
|
||||
<!-- $Id: dnssec-keygen.docbook,v 1.3.12.9 2005/08/30 01:41:41 marka Exp $ -->
|
||||
|
||||
<refentry>
|
||||
<refentryinfo>
|
||||
@@ -35,7 +35,6 @@
|
||||
<copyright>
|
||||
<year>2004</year>
|
||||
<year>2005</year>
|
||||
<year>2007</year>
|
||||
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
|
||||
</copyright>
|
||||
<copyright>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!--
|
||||
- Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -14,15 +14,15 @@
|
||||
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
<!-- $Id: dnssec-keygen.html,v 1.5.2.1.4.18 2007/01/30 00:11:47 marka Exp $ -->
|
||||
<!-- $Id: dnssec-keygen.html,v 1.5.2.1.4.13 2005/10/13 02:33:45 marka Exp $ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>dnssec-keygen</title>
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.69.1">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en">
|
||||
<a name="id2476275"></a><div class="titlepage"></div>
|
||||
<a name="id2463721"></a><div class="titlepage"></div>
|
||||
<div class="refnamediv">
|
||||
<h2>Name</h2>
|
||||
<p><span class="application">dnssec-keygen</span> — DNSSEC key generation tool</p>
|
||||
@@ -32,7 +32,7 @@
|
||||
<div class="cmdsynopsis"><p><code class="command">dnssec-keygen</code> {-a <em class="replaceable"><code>algorithm</code></em>} {-b <em class="replaceable"><code>keysize</code></em>} {-n <em class="replaceable"><code>nametype</code></em>} [<code class="option">-c <em class="replaceable"><code>class</code></em></code>] [<code class="option">-e</code>] [<code class="option">-f <em class="replaceable"><code>flag</code></em></code>] [<code class="option">-g <em class="replaceable"><code>generator</code></em></code>] [<code class="option">-h</code>] [<code class="option">-k</code>] [<code class="option">-p <em class="replaceable"><code>protocol</code></em></code>] [<code class="option">-r <em class="replaceable"><code>randomdev</code></em></code>] [<code class="option">-s <em class="replaceable"><code>strength</code></em></code>] [<code class="option">-t <em class="replaceable"><code>type</code></em></code>] [<code class="option">-v <em class="replaceable"><code>level</code></em></code>] {name}</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543462"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2525956"></a><h2>DESCRIPTION</h2>
|
||||
<p>
|
||||
<span><strong class="command">dnssec-keygen</strong></span> generates keys for DNSSEC
|
||||
(Secure DNS), as defined in RFC 2535 and RFC <TBA\>. It can also generate
|
||||
@@ -41,7 +41,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543475"></a><h2>OPTIONS</h2>
|
||||
<a name="id2525969"></a><h2>OPTIONS</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term">-a <em class="replaceable"><code>algorithm</code></em></span></dt>
|
||||
<dd>
|
||||
@@ -144,7 +144,7 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543744"></a><h2>GENERATED KEYS</h2>
|
||||
<a name="id2526306"></a><h2>GENERATED KEYS</h2>
|
||||
<p>
|
||||
When <span><strong class="command">dnssec-keygen</strong></span> completes successfully,
|
||||
it prints a string of the form <code class="filename">Knnnn.+aaa+iiiii</code>
|
||||
@@ -187,7 +187,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543832"></a><h2>EXAMPLE</h2>
|
||||
<a name="id2526394"></a><h2>EXAMPLE</h2>
|
||||
<p>
|
||||
To generate a 768-bit DSA key for the domain
|
||||
<strong class="userinput"><code>example.com</code></strong>, the following command would be
|
||||
@@ -209,7 +209,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543878"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2526440"></a><h2>SEE ALSO</h2>
|
||||
<p>
|
||||
<span class="citerefentry"><span class="refentrytitle">dnssec-signzone</span>(8)</span>,
|
||||
<em class="citetitle">BIND 9 Administrator Reference Manual</em>,
|
||||
@@ -219,7 +219,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543979"></a><h2>AUTHOR</h2>
|
||||
<a name="id2526473"></a><h2>AUTHOR</h2>
|
||||
<p>
|
||||
<span class="corpauthor">Internet Systems Consortium</span>
|
||||
</p>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
.\" Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -13,17 +13,14 @@
|
||||
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
.\" PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.\" $Id: dnssec-signzone.8,v 1.23.2.1.4.13 2007/01/30 00:11:47 marka Exp $
|
||||
.\" $Id: dnssec-signzone.8,v 1.23.2.1.4.10 2005/10/13 02:33:45 marka Exp $
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
.\" Title: dnssec\-signzone
|
||||
.\" Author:
|
||||
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
|
||||
.\" Date: June 30, 2000
|
||||
.\" Manual: BIND9
|
||||
.\" Source: BIND9
|
||||
.\"
|
||||
.\" ** You probably do not want to edit this file directly **
|
||||
.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
|
||||
.\" Instead of manually editing it, you probably should edit the DocBook XML
|
||||
.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
|
||||
.TH "DNSSEC\-SIGNZONE" "8" "June 30, 2000" "BIND9" "BIND9"
|
||||
.\" disable hyphenation
|
||||
.nh
|
||||
@@ -41,71 +38,50 @@ signs a zone. It generates NSEC and RRSIG records and produces a signed version
|
||||
\fIkeyset\fR
|
||||
file for each child zone.
|
||||
.SH "OPTIONS"
|
||||
.PP
|
||||
.TP
|
||||
\-a
|
||||
.RS 4
|
||||
Verify all generated signatures.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-c \fIclass\fR
|
||||
.RS 4
|
||||
Specifies the DNS class of the zone.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-k \fIkey\fR
|
||||
.RS 4
|
||||
Treat specified key as a key signing key ignoring any key flags. This option may be specified multiple times.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-l \fIdomain\fR
|
||||
.RS 4
|
||||
Generate a DLV set in addition to the key (DNSKEY) and DS sets. The domain is appended to the name of the records.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-d \fIdirectory\fR
|
||||
.RS 4
|
||||
Look for
|
||||
\fIkeyset\fR
|
||||
files in
|
||||
\fBdirectory\fR
|
||||
as the directory
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-g
|
||||
.RS 4
|
||||
Generate DS records for child zones from keyset files. Existing DS records will be removed.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-s \fIstart\-time\fR
|
||||
.RS 4
|
||||
Specify the date and time when the generated RRSIG records become valid. This can be either an absolute or relative time. An absolute start time is indicated by a number in YYYYMMDDHHMMSS notation; 20000530144500 denotes 14:45:00 UTC on May 30th, 2000. A relative start time is indicated by +N, which is N seconds from the current time. If no
|
||||
\fBstart\-time\fR
|
||||
is specified, the current time minus 1 hour (to allow for clock skew) is used.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-e \fIend\-time\fR
|
||||
.RS 4
|
||||
Specify the date and time when the generated RRSIG records expire. As with
|
||||
\fBstart\-time\fR, an absolute time is indicated in YYYYMMDDHHMMSS notation. A time relative to the start time is indicated with +N, which is N seconds from the start time. A time relative to the current time is indicated with now+N. If no
|
||||
\fBend\-time\fR
|
||||
is specified, 30 days from the start time is used as a default.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-f \fIoutput\-file\fR
|
||||
.RS 4
|
||||
The name of the output file containing the signed zone. The default is to append
|
||||
\fI.signed\fR
|
||||
to the input file.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-h
|
||||
.RS 4
|
||||
Prints a short summary of the options and arguments to
|
||||
\fBdnssec\-signzone\fR.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-i \fIinterval\fR
|
||||
.RS 4
|
||||
When a previously signed zone is passed as input, records may be resigned. The
|
||||
\fBinterval\fR
|
||||
option specifies the cycle interval as an offset from the current time (in seconds). If a RRSIG record expires after the cycle interval, it is retained. Otherwise, it is considered to be expiring soon, and it will be replaced.
|
||||
@@ -117,25 +93,17 @@ or
|
||||
are specified,
|
||||
\fBdnssec\-signzone\fR
|
||||
generates signatures that are valid for 30 days, with a cycle interval of 7.5 days. Therefore, if any existing RRSIG records are due to expire in less than 7.5 days, they would be replaced.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-n \fIncpus\fR
|
||||
.RS 4
|
||||
Specifies the number of threads to use. By default, one thread is started for each detected CPU.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-o \fIorigin\fR
|
||||
.RS 4
|
||||
The zone origin. If not specified, the name of the zone file is assumed to be the origin.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-p
|
||||
.RS 4
|
||||
Use pseudo\-random data when signing the zone. This is faster, but less secure, than using real random data. This option may be useful when signing large zones or when the entropy source is limited.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-r \fIrandomdev\fR
|
||||
.RS 4
|
||||
Specifies the source of randomness. If the operating system does not provide a
|
||||
\fI/dev/random\fR
|
||||
or equivalent device, the default source of randomness is keyboard input.
|
||||
@@ -143,32 +111,21 @@ or equivalent device, the default source of randomness is keyboard input.
|
||||
specifies the name of a character device or file containing random data to be used instead of the default. The special value
|
||||
\fIkeyboard\fR
|
||||
indicates that keyboard input should be used.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-t
|
||||
.RS 4
|
||||
Print statistics at completion.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-v \fIlevel\fR
|
||||
.RS 4
|
||||
Sets the debugging level.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-z
|
||||
.RS 4
|
||||
Ignore KSK flag on key when determining what to sign.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
zonefile
|
||||
.RS 4
|
||||
The file containing the zone to be signed.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
key
|
||||
.RS 4
|
||||
The keys used to sign the zone. If no keys are specified, the default all zone keys that have private key files in the current directory.
|
||||
.RE
|
||||
.SH "EXAMPLE"
|
||||
.PP
|
||||
The following command signs the
|
||||
@@ -198,8 +155,3 @@ RFC 2535.
|
||||
.SH "AUTHOR"
|
||||
.PP
|
||||
Internet Systems Consortium
|
||||
.SH "COPYRIGHT"
|
||||
Copyright \(co 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
.br
|
||||
Copyright \(co 2000\-2003 Internet Software Consortium.
|
||||
.br
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Portions Copyright (C) 2004-2006 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Portions Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Portions Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
* Portions Copyright (C) 1995-2000 by Network Associates, Inc.
|
||||
*
|
||||
@@ -16,7 +16,7 @@
|
||||
* IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: dnssec-signzone.c,v 1.139.2.2.4.23 2006/01/04 23:50:19 marka Exp $ */
|
||||
/* $Id: dnssec-signzone.c,v 1.139.2.2.4.21 2005/10/14 01:38:41 marka Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -1292,6 +1292,10 @@ nsecify(void) {
|
||||
result = dns_dbiterator_next(dbiter);
|
||||
continue;
|
||||
}
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
dns_db_detachnode(gdb, &nextnode);
|
||||
break;
|
||||
}
|
||||
if (!dns_name_issubdomain(nextname, gorigin) ||
|
||||
(zonecut != NULL &&
|
||||
dns_name_issubdomain(nextname, zonecut)))
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
|
||||
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.0//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.0/docbookx.dtd"
|
||||
[<!ENTITY mdash "—">]>
|
||||
<!--
|
||||
- Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -18,7 +18,7 @@
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
|
||||
<!-- $Id: dnssec-signzone.docbook,v 1.2.2.2.4.13 2007/01/29 23:57:18 marka Exp $ -->
|
||||
<!-- $Id: dnssec-signzone.docbook,v 1.2.2.2.4.11 2005/06/24 00:18:15 marka Exp $ -->
|
||||
|
||||
<refentry>
|
||||
<refentryinfo>
|
||||
@@ -35,7 +35,6 @@
|
||||
<copyright>
|
||||
<year>2004</year>
|
||||
<year>2005</year>
|
||||
<year>2007</year>
|
||||
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
|
||||
</copyright>
|
||||
<copyright>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!--
|
||||
- Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -14,15 +14,15 @@
|
||||
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
<!-- $Id: dnssec-signzone.html,v 1.4.2.1.4.19 2007/01/30 00:11:47 marka Exp $ -->
|
||||
<!-- $Id: dnssec-signzone.html,v 1.4.2.1.4.14 2005/10/13 02:33:46 marka Exp $ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>dnssec-signzone</title>
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.69.1">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en">
|
||||
<a name="id2476275"></a><div class="titlepage"></div>
|
||||
<a name="id2463721"></a><div class="titlepage"></div>
|
||||
<div class="refnamediv">
|
||||
<h2>Name</h2>
|
||||
<p><span class="application">dnssec-signzone</span> — DNSSEC zone signing tool</p>
|
||||
@@ -32,7 +32,7 @@
|
||||
<div class="cmdsynopsis"><p><code class="command">dnssec-signzone</code> [<code class="option">-a</code>] [<code class="option">-c <em class="replaceable"><code>class</code></em></code>] [<code class="option">-d <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-e <em class="replaceable"><code>end-time</code></em></code>] [<code class="option">-f <em class="replaceable"><code>output-file</code></em></code>] [<code class="option">-g</code>] [<code class="option">-h</code>] [<code class="option">-k <em class="replaceable"><code>key</code></em></code>] [<code class="option">-l <em class="replaceable"><code>domain</code></em></code>] [<code class="option">-i <em class="replaceable"><code>interval</code></em></code>] [<code class="option">-n <em class="replaceable"><code>nthreads</code></em></code>] [<code class="option">-o <em class="replaceable"><code>origin</code></em></code>] [<code class="option">-p</code>] [<code class="option">-r <em class="replaceable"><code>randomdev</code></em></code>] [<code class="option">-s <em class="replaceable"><code>start-time</code></em></code>] [<code class="option">-t</code>] [<code class="option">-v <em class="replaceable"><code>level</code></em></code>] [<code class="option">-z</code>] {zonefile} [key...]</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543485"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2525979"></a><h2>DESCRIPTION</h2>
|
||||
<p>
|
||||
<span><strong class="command">dnssec-signzone</strong></span> signs a zone. It generates
|
||||
NSEC and RRSIG records and produces a signed version of the
|
||||
@@ -43,7 +43,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543501"></a><h2>OPTIONS</h2>
|
||||
<a name="id2525995"></a><h2>OPTIONS</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term">-a</span></dt>
|
||||
<dd><p>
|
||||
@@ -179,7 +179,7 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543873"></a><h2>EXAMPLE</h2>
|
||||
<a name="id2526435"></a><h2>EXAMPLE</h2>
|
||||
<p>
|
||||
The following command signs the <strong class="userinput"><code>example.com</code></strong>
|
||||
zone with the DSA key generated in the <span><strong class="command">dnssec-keygen</strong></span>
|
||||
@@ -203,7 +203,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543923"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2526485"></a><h2>SEE ALSO</h2>
|
||||
<p>
|
||||
<span class="citerefentry"><span class="refentrytitle">dnssec-keygen</span>(8)</span>,
|
||||
<em class="citetitle">BIND 9 Administrator Reference Manual</em>,
|
||||
@@ -211,7 +211,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543949"></a><h2>AUTHOR</h2>
|
||||
<a name="id2526512"></a><h2>AUTHOR</h2>
|
||||
<p>
|
||||
<span class="corpauthor">Internet Systems Consortium</span>
|
||||
</p>
|
||||
|
||||
@@ -1,113 +0,0 @@
|
||||
# Microsoft Developer Studio Project File - Name="dnssectool" - Package Owner=<4>
|
||||
# Microsoft Developer Studio Generated Build File, Format Version 6.00
|
||||
# ** DO NOT EDIT **
|
||||
|
||||
# TARGTYPE "Win32 (x86) Static-Link Library" 0x0104
|
||||
|
||||
CFG=dnssectool - Win32 Debug
|
||||
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
|
||||
!MESSAGE use the Export Makefile command and run
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "dnssectool.mak".
|
||||
!MESSAGE
|
||||
!MESSAGE You can specify a configuration when running NMAKE
|
||||
!MESSAGE by defining the macro CFG on the command line. For example:
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "dnssectool.mak" CFG="dnssectool - Win32 Debug"
|
||||
!MESSAGE
|
||||
!MESSAGE Possible choices for configuration are:
|
||||
!MESSAGE
|
||||
!MESSAGE "dnssectool - Win32 Release" (based on "Win32 (x86) Static-Link Library")
|
||||
!MESSAGE "dnssectool - Win32 Debug" (based on "Win32 (x86) Static-Link Library")
|
||||
!MESSAGE
|
||||
|
||||
# Begin Project
|
||||
# PROP AllowPerConfigDependencies 0
|
||||
# PROP Scc_ProjName ""
|
||||
# PROP Scc_LocalPath ""
|
||||
CPP=cl.exe
|
||||
MTL=midl.exe
|
||||
RSC=rc.exe
|
||||
|
||||
!IF "$(CFG)" == "dnssectool - Win32 Release"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 0
|
||||
# PROP BASE Output_Dir "Release"
|
||||
# PROP BASE Intermediate_Dir "Release"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 0
|
||||
# PROP Output_Dir "Release"
|
||||
# PROP Intermediate_Dir "Release"
|
||||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /YX /FD /c
|
||||
# ADD CPP /nologo /MD /W3 /GX /O2 /I "./" /I "../../../" /I "../include" /I "../../../lib/isc/win32" /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../../../lib/dns/include" /D "NDEBUG" /D "WIN32" /D "_WINDOWS" /D "__STDC__" /D "_MBCS" /YX /FD /c /Fddnssectool
|
||||
# SUBTRACT CPP /X
|
||||
# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
|
||||
# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32
|
||||
# ADD LINK32 /out:"Release/dnssectool.lib"
|
||||
|
||||
!ELSEIF "$(CFG)" == "dnssectool - Win32 Debug"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 1
|
||||
# PROP BASE Output_Dir "Debug"
|
||||
# PROP BASE Intermediate_Dir "Debug"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 1
|
||||
# PROP Output_Dir "Debug"
|
||||
# PROP Intermediate_Dir "Debug"
|
||||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /GZ /c
|
||||
# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "./" /I "../../../" /I "../include" /I "../../../lib/isc/win32" /I "../../../lib/isc/win32/include" /I "../../../lib/isc/include" /I "../../../lib/dns/include" /D "_DEBUG" /D "WIN32" /D "_WINDOWS" /D "__STDC__" /D "_MBCS" /FR /YX /FD /GZ /c /Fddnssectool
|
||||
# SUBTRACT CPP /X
|
||||
# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
|
||||
# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
|
||||
# ADD BASE RSC /l 0x409 /d "_DEBUG"
|
||||
# ADD RSC /l 0x409 /d "_DEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32
|
||||
# ADD LINK32 /debug out:"Debug/dnssectool.lib"
|
||||
|
||||
!ENDIF
|
||||
|
||||
# Begin Target
|
||||
|
||||
# Name "dnssectool - Win32 Release"
|
||||
# Name "dnssectool - Win32 Debug"
|
||||
# Begin Group "Source Files"
|
||||
|
||||
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
||||
# End Group
|
||||
# Begin Group "Header Files"
|
||||
|
||||
# PROP Default_Filter "h;hpp;hxx;hm;inl"
|
||||
# End Group
|
||||
# Begin Group "Resource Files"
|
||||
|
||||
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
|
||||
# End Group
|
||||
# Begin Group "Main Dns Lib"
|
||||
|
||||
# PROP Default_Filter "c"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\dnssectool.c
|
||||
# End Source File
|
||||
# End Group
|
||||
# End Target
|
||||
# End Project
|
||||
@@ -1,29 +0,0 @@
|
||||
Microsoft Developer Studio Workspace File, Format Version 6.00
|
||||
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
|
||||
|
||||
###############################################################################
|
||||
|
||||
Project: "dighost"=".\dnssectool.dsp" - Package Owner=<4>
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<4>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
Global:
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<3>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
@@ -50,7 +50,7 @@ BSC32=bscmake.exe
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
|
||||
# ADD LINK32 user32.lib advapi32.lib Release/dnssectool.lib ../../../lib/isc/win32/Release/libisc.lib ../../../lib/dns/win32/Release/libdns.lib /nologo /subsystem:console /machine:I386 /out:"../../../Build/Release/dnssec-keygen.exe"
|
||||
# ADD LINK32 user32.lib advapi32.lib ../../../lib/isc/win32/Release/libisc.lib ../../../lib/dns/win32/Release/libdns.lib /nologo /subsystem:console /machine:I386 /out:"../../../Build/Release/dnssec-keygen.exe"
|
||||
|
||||
!ELSEIF "$(CFG)" == "keygen - Win32 Debug"
|
||||
|
||||
@@ -75,7 +75,7 @@ BSC32=bscmake.exe
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
|
||||
# ADD LINK32 user32.lib advapi32.lib Debug/dnssectool.lib ../../../lib/isc/win32/Debug/libisc.lib ../../../lib/dns/win32/Debug/libdns.lib /nologo /subsystem:console /debug /machine:I386 /out:"../../../Build/Debug/dnssec-keygen.exe" /pdbtype:sept
|
||||
# ADD LINK32 user32.lib advapi32.lib ../../../lib/isc/win32/Debug/libisc.lib ../../../lib/dns/win32/Debug/libdns.lib /nologo /subsystem:console /debug /machine:I386 /out:"../../../Build/Debug/dnssec-keygen.exe" /pdbtype:sept
|
||||
|
||||
!ENDIF
|
||||
|
||||
@@ -90,6 +90,10 @@ LINK32=link.exe
|
||||
|
||||
SOURCE="..\dnssec-keygen.c"
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\dnssectool.c
|
||||
# End Source File
|
||||
# End Group
|
||||
# Begin Group "Header Files"
|
||||
|
||||
|
||||
@@ -25,81 +25,6 @@ NULL=
|
||||
NULL=nul
|
||||
!ENDIF
|
||||
|
||||
!IF "$(CFG)" == "keygen - Win32 Release"
|
||||
_VC_MANIFEST_INC=0
|
||||
_VC_MANIFEST_BASENAME=__VC80
|
||||
!ELSE
|
||||
_VC_MANIFEST_INC=1
|
||||
_VC_MANIFEST_BASENAME=__VC80.Debug
|
||||
!ENDIF
|
||||
|
||||
####################################################
|
||||
# Specifying name of temporary resource file used only in incremental builds:
|
||||
|
||||
!if "$(_VC_MANIFEST_INC)" == "1"
|
||||
_VC_MANIFEST_AUTO_RES=$(_VC_MANIFEST_BASENAME).auto.res
|
||||
!else
|
||||
_VC_MANIFEST_AUTO_RES=
|
||||
!endif
|
||||
|
||||
####################################################
|
||||
# _VC_MANIFEST_EMBED_EXE - command to embed manifest in EXE:
|
||||
|
||||
!if "$(_VC_MANIFEST_INC)" == "1"
|
||||
|
||||
#MT_SPECIAL_RETURN=1090650113
|
||||
#MT_SPECIAL_SWITCH=-notify_resource_update
|
||||
MT_SPECIAL_RETURN=0
|
||||
MT_SPECIAL_SWITCH=
|
||||
_VC_MANIFEST_EMBED_EXE= \
|
||||
if exist $@.manifest mt.exe -manifest $@.manifest -out:$(_VC_MANIFEST_BASENAME).auto.manifest $(MT_SPECIAL_SWITCH) & \
|
||||
if "%ERRORLEVEL%" == "$(MT_SPECIAL_RETURN)" \
|
||||
rc /r $(_VC_MANIFEST_BASENAME).auto.rc & \
|
||||
link $** /out:$@ $(LFLAGS)
|
||||
|
||||
!else
|
||||
|
||||
_VC_MANIFEST_EMBED_EXE= \
|
||||
if exist $@.manifest mt.exe -manifest $@.manifest -outputresource:$@;1
|
||||
|
||||
!endif
|
||||
|
||||
####################################################
|
||||
# _VC_MANIFEST_EMBED_DLL - command to embed manifest in DLL:
|
||||
|
||||
!if "$(_VC_MANIFEST_INC)" == "1"
|
||||
|
||||
#MT_SPECIAL_RETURN=1090650113
|
||||
#MT_SPECIAL_SWITCH=-notify_resource_update
|
||||
MT_SPECIAL_RETURN=0
|
||||
MT_SPECIAL_SWITCH=
|
||||
_VC_MANIFEST_EMBED_EXE= \
|
||||
if exist $@.manifest mt.exe -manifest $@.manifest -out:$(_VC_MANIFEST_BASENAME).auto.manifest $(MT_SPECIAL_SWITCH) & \
|
||||
if "%ERRORLEVEL%" == "$(MT_SPECIAL_RETURN)" \
|
||||
rc /r $(_VC_MANIFEST_BASENAME).auto.rc & \
|
||||
link $** /out:$@ $(LFLAGS)
|
||||
|
||||
!else
|
||||
|
||||
_VC_MANIFEST_EMBED_EXE= \
|
||||
if exist $@.manifest mt.exe -manifest $@.manifest -outputresource:$@;2
|
||||
|
||||
!endif
|
||||
####################################################
|
||||
# _VC_MANIFEST_CLEAN - command to clean resources files generated temporarily:
|
||||
|
||||
!if "$(_VC_MANIFEST_INC)" == "1"
|
||||
|
||||
_VC_MANIFEST_CLEAN=-del $(_VC_MANIFEST_BASENAME).auto.res \
|
||||
$(_VC_MANIFEST_BASENAME).auto.rc \
|
||||
$(_VC_MANIFEST_BASENAME).auto.manifest
|
||||
|
||||
!else
|
||||
|
||||
_VC_MANIFEST_CLEAN=
|
||||
|
||||
!endif
|
||||
|
||||
!IF "$(CFG)" == "keygen - Win32 Release"
|
||||
|
||||
OUTDIR=.\Release
|
||||
@@ -113,7 +38,6 @@ CLEAN :
|
||||
-@erase "$(INTDIR)\dnssectool.obj"
|
||||
-@erase "$(INTDIR)\vc60.idb"
|
||||
-@erase "..\..\..\Build\Release\dnssec-keygen.exe"
|
||||
-@$(_VC_MANIFEST_CLEAN)
|
||||
|
||||
"$(OUTDIR)" :
|
||||
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
|
||||
@@ -166,7 +90,6 @@ LINK32_OBJS= \
|
||||
$(LINK32) @<<
|
||||
$(LINK32_FLAGS) $(LINK32_OBJS)
|
||||
<<
|
||||
$(_VC_MANIFEST_EMBED_EXE)
|
||||
|
||||
!ELSEIF "$(CFG)" == "keygen - Win32 Debug"
|
||||
|
||||
@@ -190,7 +113,6 @@ CLEAN :
|
||||
-@erase "$(OUTDIR)\keygen.bsc"
|
||||
-@erase "..\..\..\Build\Debug\dnssec-keygen.exe"
|
||||
-@erase "..\..\..\Build\Debug\dnssec-keygen.ilk"
|
||||
-@$(_VC_MANIFEST_CLEAN)
|
||||
|
||||
"$(OUTDIR)" :
|
||||
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
|
||||
@@ -250,7 +172,6 @@ LINK32_OBJS= \
|
||||
$(LINK32) @<<
|
||||
$(LINK32_FLAGS) $(LINK32_OBJS)
|
||||
<<
|
||||
$(_VC_MANIFEST_EMBED_EXE)
|
||||
|
||||
!ENDIF
|
||||
|
||||
@@ -304,21 +225,3 @@ SOURCE=..\dnssectool.c
|
||||
|
||||
!ENDIF
|
||||
|
||||
####################################################
|
||||
# Commands to generate initial empty manifest file and the RC file
|
||||
# that references it, and for generating the .res file:
|
||||
|
||||
$(_VC_MANIFEST_BASENAME).auto.res : $(_VC_MANIFEST_BASENAME).auto.rc
|
||||
|
||||
$(_VC_MANIFEST_BASENAME).auto.rc : $(_VC_MANIFEST_BASENAME).auto.manifest
|
||||
type <<$@
|
||||
#include <winuser.h>
|
||||
1RT_MANIFEST"$(_VC_MANIFEST_BASENAME).auto.manifest"
|
||||
<< KEEP
|
||||
|
||||
$(_VC_MANIFEST_BASENAME).auto.manifest :
|
||||
type <<$@
|
||||
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
|
||||
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
|
||||
</assembly>
|
||||
<< KEEP
|
||||
|
||||
@@ -50,7 +50,7 @@ BSC32=bscmake.exe
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
|
||||
# ADD LINK32 user32.lib advapi32.lib Release/dnssectool.lib ../../../lib/isc/win32/Release/libisc.lib ../../../lib/dns/win32/Release/libdns.lib /nologo /subsystem:console /machine:I386 /out:"../../../Build/Release/dnssec-signzone.exe"
|
||||
# ADD LINK32 user32.lib advapi32.lib ../../../lib/isc/win32/Release/libisc.lib ../../../lib/dns/win32/Release/libdns.lib /nologo /subsystem:console /machine:I386 /out:"../../../Build/Release/dnssec-signzone.exe"
|
||||
|
||||
!ELSEIF "$(CFG)" == "signzone - Win32 Debug"
|
||||
|
||||
@@ -75,7 +75,7 @@ BSC32=bscmake.exe
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
|
||||
# ADD LINK32 user32.lib advapi32.lib Debug/dnssectool.lib ../../../lib/isc/win32/Debug/libisc.lib ../../../lib/dns/win32/Debug/libdns.lib /nologo /subsystem:console /debug /machine:I386 /out:"../../../Build/Debug/dnssec-signzone.exe" /pdbtype:sept
|
||||
# ADD LINK32 user32.lib advapi32.lib ../../../lib/isc/win32/Debug/libisc.lib ../../../lib/dns/win32/Debug/libdns.lib /nologo /subsystem:console /debug /machine:I386 /out:"../../../Build/Debug/dnssec-signzone.exe" /pdbtype:sept
|
||||
|
||||
!ENDIF
|
||||
|
||||
@@ -90,6 +90,10 @@ LINK32=link.exe
|
||||
|
||||
SOURCE="..\dnssec-signzone.c"
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\dnssectool.c
|
||||
# End Source File
|
||||
# End Group
|
||||
# Begin Group "Header Files"
|
||||
|
||||
|
||||
@@ -25,81 +25,6 @@ NULL=
|
||||
NULL=nul
|
||||
!ENDIF
|
||||
|
||||
!IF "$(CFG)" == "signzone - Win32 Release"
|
||||
_VC_MANIFEST_INC=0
|
||||
_VC_MANIFEST_BASENAME=__VC80
|
||||
!ELSE
|
||||
_VC_MANIFEST_INC=1
|
||||
_VC_MANIFEST_BASENAME=__VC80.Debug
|
||||
!ENDIF
|
||||
|
||||
####################################################
|
||||
# Specifying name of temporary resource file used only in incremental builds:
|
||||
|
||||
!if "$(_VC_MANIFEST_INC)" == "1"
|
||||
_VC_MANIFEST_AUTO_RES=$(_VC_MANIFEST_BASENAME).auto.res
|
||||
!else
|
||||
_VC_MANIFEST_AUTO_RES=
|
||||
!endif
|
||||
|
||||
####################################################
|
||||
# _VC_MANIFEST_EMBED_EXE - command to embed manifest in EXE:
|
||||
|
||||
!if "$(_VC_MANIFEST_INC)" == "1"
|
||||
|
||||
#MT_SPECIAL_RETURN=1090650113
|
||||
#MT_SPECIAL_SWITCH=-notify_resource_update
|
||||
MT_SPECIAL_RETURN=0
|
||||
MT_SPECIAL_SWITCH=
|
||||
_VC_MANIFEST_EMBED_EXE= \
|
||||
if exist $@.manifest mt.exe -manifest $@.manifest -out:$(_VC_MANIFEST_BASENAME).auto.manifest $(MT_SPECIAL_SWITCH) & \
|
||||
if "%ERRORLEVEL%" == "$(MT_SPECIAL_RETURN)" \
|
||||
rc /r $(_VC_MANIFEST_BASENAME).auto.rc & \
|
||||
link $** /out:$@ $(LFLAGS)
|
||||
|
||||
!else
|
||||
|
||||
_VC_MANIFEST_EMBED_EXE= \
|
||||
if exist $@.manifest mt.exe -manifest $@.manifest -outputresource:$@;1
|
||||
|
||||
!endif
|
||||
|
||||
####################################################
|
||||
# _VC_MANIFEST_EMBED_DLL - command to embed manifest in DLL:
|
||||
|
||||
!if "$(_VC_MANIFEST_INC)" == "1"
|
||||
|
||||
#MT_SPECIAL_RETURN=1090650113
|
||||
#MT_SPECIAL_SWITCH=-notify_resource_update
|
||||
MT_SPECIAL_RETURN=0
|
||||
MT_SPECIAL_SWITCH=
|
||||
_VC_MANIFEST_EMBED_EXE= \
|
||||
if exist $@.manifest mt.exe -manifest $@.manifest -out:$(_VC_MANIFEST_BASENAME).auto.manifest $(MT_SPECIAL_SWITCH) & \
|
||||
if "%ERRORLEVEL%" == "$(MT_SPECIAL_RETURN)" \
|
||||
rc /r $(_VC_MANIFEST_BASENAME).auto.rc & \
|
||||
link $** /out:$@ $(LFLAGS)
|
||||
|
||||
!else
|
||||
|
||||
_VC_MANIFEST_EMBED_EXE= \
|
||||
if exist $@.manifest mt.exe -manifest $@.manifest -outputresource:$@;2
|
||||
|
||||
!endif
|
||||
####################################################
|
||||
# _VC_MANIFEST_CLEAN - command to clean resources files generated temporarily:
|
||||
|
||||
!if "$(_VC_MANIFEST_INC)" == "1"
|
||||
|
||||
_VC_MANIFEST_CLEAN=-del $(_VC_MANIFEST_BASENAME).auto.res \
|
||||
$(_VC_MANIFEST_BASENAME).auto.rc \
|
||||
$(_VC_MANIFEST_BASENAME).auto.manifest
|
||||
|
||||
!else
|
||||
|
||||
_VC_MANIFEST_CLEAN=
|
||||
|
||||
!endif
|
||||
|
||||
!IF "$(CFG)" == "signzone - Win32 Release"
|
||||
|
||||
OUTDIR=.\Release
|
||||
@@ -113,7 +38,6 @@ CLEAN :
|
||||
-@erase "$(INTDIR)\dnssectool.obj"
|
||||
-@erase "$(INTDIR)\vc60.idb"
|
||||
-@erase "..\..\..\Build\Release\dnssec-signzone.exe"
|
||||
-@$(_VC_MANIFEST_CLEAN)
|
||||
|
||||
"$(OUTDIR)" :
|
||||
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
|
||||
@@ -166,7 +90,6 @@ LINK32_OBJS= \
|
||||
$(LINK32) @<<
|
||||
$(LINK32_FLAGS) $(LINK32_OBJS)
|
||||
<<
|
||||
$(_VC_MANIFEST_EMBED_EXE)
|
||||
|
||||
!ELSEIF "$(CFG)" == "signzone - Win32 Debug"
|
||||
|
||||
@@ -190,7 +113,6 @@ CLEAN :
|
||||
-@erase "$(OUTDIR)\signzone.bsc"
|
||||
-@erase "..\..\..\Build\Debug\dnssec-signzone.exe"
|
||||
-@erase "..\..\..\Build\Debug\dnssec-signzone.ilk"
|
||||
-@$(_VC_MANIFEST_CLEAN)
|
||||
|
||||
"$(OUTDIR)" :
|
||||
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
|
||||
@@ -250,7 +172,6 @@ LINK32_OBJS= \
|
||||
$(LINK32) @<<
|
||||
$(LINK32_FLAGS) $(LINK32_OBJS)
|
||||
<<
|
||||
$(_VC_MANIFEST_EMBED_EXE)
|
||||
|
||||
!ENDIF
|
||||
|
||||
@@ -304,21 +225,3 @@ SOURCE=..\dnssectool.c
|
||||
|
||||
!ENDIF
|
||||
|
||||
####################################################
|
||||
# Commands to generate initial empty manifest file and the RC file
|
||||
# that references it, and for generating the .res file:
|
||||
|
||||
$(_VC_MANIFEST_BASENAME).auto.res : $(_VC_MANIFEST_BASENAME).auto.rc
|
||||
|
||||
$(_VC_MANIFEST_BASENAME).auto.rc : $(_VC_MANIFEST_BASENAME).auto.manifest
|
||||
type <<$@
|
||||
#include <winuser.h>
|
||||
1RT_MANIFEST"$(_VC_MANIFEST_BASENAME).auto.manifest"
|
||||
<< KEEP
|
||||
|
||||
$(_VC_MANIFEST_BASENAME).auto.manifest :
|
||||
type <<$@
|
||||
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
|
||||
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
|
||||
</assembly>
|
||||
<< KEEP
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Copyright (C) 2004, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 1998-2003 Internet Software Consortium.
|
||||
# Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
# Copyright (C) 1998-2002 Internet Software Consortium.
|
||||
#
|
||||
# Permission to use, copy, modify, and distribute this software for any
|
||||
# purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -13,7 +13,7 @@
|
||||
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
# PERFORMANCE OF THIS SOFTWARE.
|
||||
|
||||
# $Id: Makefile.in,v 1.74.12.13 2007/01/18 00:06:04 marka Exp $
|
||||
# $Id: Makefile.in,v 1.74.12.11 2004/09/06 21:47:25 marka Exp $
|
||||
|
||||
srcdir = @srcdir@
|
||||
VPATH = @srcdir@
|
||||
|
||||
+17
-17
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
* Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2002 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: aclconf.c,v 1.27.12.9 2007/01/18 00:06:04 marka Exp $ */
|
||||
/* $Id: aclconf.c,v 1.27.12.5 2005/03/17 03:58:25 marka Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -54,10 +54,10 @@ ns_aclconfctx_destroy(ns_aclconfctx_t *ctx) {
|
||||
* Find the definition of the named acl whose name is "name".
|
||||
*/
|
||||
static isc_result_t
|
||||
get_acl_def(const cfg_obj_t *cctx, const char *name, const cfg_obj_t **ret) {
|
||||
get_acl_def(cfg_obj_t *cctx, char *name, cfg_obj_t **ret) {
|
||||
isc_result_t result;
|
||||
const cfg_obj_t *acls = NULL;
|
||||
const cfg_listelt_t *elt;
|
||||
cfg_obj_t *acls = NULL;
|
||||
cfg_listelt_t *elt;
|
||||
|
||||
result = cfg_map_get(cctx, "acl", &acls);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
@@ -65,7 +65,7 @@ get_acl_def(const cfg_obj_t *cctx, const char *name, const cfg_obj_t **ret) {
|
||||
for (elt = cfg_list_first(acls);
|
||||
elt != NULL;
|
||||
elt = cfg_list_next(elt)) {
|
||||
const cfg_obj_t *acl = cfg_listelt_value(elt);
|
||||
cfg_obj_t *acl = cfg_listelt_value(elt);
|
||||
const char *aclname = cfg_obj_asstring(cfg_tuple_get(acl, "name"));
|
||||
if (strcasecmp(aclname, name) == 0) {
|
||||
*ret = cfg_tuple_get(acl, "value");
|
||||
@@ -76,15 +76,15 @@ get_acl_def(const cfg_obj_t *cctx, const char *name, const cfg_obj_t **ret) {
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
convert_named_acl(const cfg_obj_t *nameobj, const cfg_obj_t *cctx,
|
||||
convert_named_acl(cfg_obj_t *nameobj, cfg_obj_t *cctx,
|
||||
ns_aclconfctx_t *ctx, isc_mem_t *mctx,
|
||||
dns_acl_t **target)
|
||||
{
|
||||
isc_result_t result;
|
||||
const cfg_obj_t *cacl = NULL;
|
||||
cfg_obj_t *cacl = NULL;
|
||||
dns_acl_t *dacl;
|
||||
dns_acl_t loop;
|
||||
const char *aclname = cfg_obj_asstring(nameobj);
|
||||
char *aclname = cfg_obj_asstring(nameobj);
|
||||
|
||||
/* Look for an already-converted version. */
|
||||
for (dacl = ISC_LIST_HEAD(ctx->named_acl_cache);
|
||||
@@ -113,7 +113,7 @@ convert_named_acl(const cfg_obj_t *nameobj, const cfg_obj_t *cctx,
|
||||
*/
|
||||
memset(&loop, 0, sizeof(loop));
|
||||
ISC_LINK_INIT(&loop, nextincache);
|
||||
DE_CONST(aclname, loop.name);
|
||||
loop.name = aclname;
|
||||
loop.magic = LOOP_MAGIC;
|
||||
ISC_LIST_APPEND(ctx->named_acl_cache, &loop, nextincache);
|
||||
result = ns_acl_fromconfig(cacl, cctx, ctx, mctx, &dacl);
|
||||
@@ -131,7 +131,7 @@ convert_named_acl(const cfg_obj_t *nameobj, const cfg_obj_t *cctx,
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
convert_keyname(const cfg_obj_t *keyobj, isc_mem_t *mctx, dns_name_t *dnsname) {
|
||||
convert_keyname(cfg_obj_t *keyobj, isc_mem_t *mctx, dns_name_t *dnsname) {
|
||||
isc_result_t result;
|
||||
isc_buffer_t buf;
|
||||
dns_fixedname_t fixname;
|
||||
@@ -154,8 +154,8 @@ convert_keyname(const cfg_obj_t *keyobj, isc_mem_t *mctx, dns_name_t *dnsname) {
|
||||
}
|
||||
|
||||
isc_result_t
|
||||
ns_acl_fromconfig(const cfg_obj_t *caml,
|
||||
const cfg_obj_t *cctx,
|
||||
ns_acl_fromconfig(cfg_obj_t *caml,
|
||||
cfg_obj_t *cctx,
|
||||
ns_aclconfctx_t *ctx,
|
||||
isc_mem_t *mctx,
|
||||
dns_acl_t **target)
|
||||
@@ -164,7 +164,7 @@ ns_acl_fromconfig(const cfg_obj_t *caml,
|
||||
unsigned int count;
|
||||
dns_acl_t *dacl = NULL;
|
||||
dns_aclelement_t *de;
|
||||
const cfg_listelt_t *elt;
|
||||
cfg_listelt_t *elt;
|
||||
|
||||
REQUIRE(target != NULL && *target == NULL);
|
||||
|
||||
@@ -183,7 +183,7 @@ ns_acl_fromconfig(const cfg_obj_t *caml,
|
||||
elt != NULL;
|
||||
elt = cfg_list_next(elt))
|
||||
{
|
||||
const cfg_obj_t *ce = cfg_listelt_value(elt);
|
||||
cfg_obj_t *ce = cfg_listelt_value(elt);
|
||||
if (cfg_obj_istuple(ce)) {
|
||||
/* This must be a negated element. */
|
||||
ce = cfg_tuple_get(ce, "value");
|
||||
@@ -215,7 +215,7 @@ ns_acl_fromconfig(const cfg_obj_t *caml,
|
||||
goto cleanup;
|
||||
} else if (cfg_obj_isstring(ce)) {
|
||||
/* ACL name */
|
||||
const char *name = cfg_obj_asstring(ce);
|
||||
char *name = cfg_obj_asstring(ce);
|
||||
if (strcasecmp(name, "localhost") == 0) {
|
||||
de->type = dns_aclelementtype_localhost;
|
||||
} else if (strcasecmp(name, "localnets") == 0) {
|
||||
|
||||
+4
-102
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: client.c,v 1.176.2.13.4.33 2007/02/26 23:45:55 tbox Exp $ */
|
||||
/* $Id: client.c,v 1.176.2.13.4.26 2005/07/27 02:53:14 marka Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -164,12 +164,6 @@ struct ns_clientmgr {
|
||||
* Must be greater than any valid state.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Enable ns_client_dropport() by default.
|
||||
*/
|
||||
#ifndef NS_CLIENT_DROPPORT
|
||||
#define NS_CLIENT_DROPPORT 1
|
||||
#endif
|
||||
|
||||
static void client_read(ns_client_t *client);
|
||||
static void client_accept(ns_client_t *client);
|
||||
@@ -291,17 +285,8 @@ exit_check(ns_client_t *client) {
|
||||
}
|
||||
/*
|
||||
* I/O cancel is complete. Burn down all state
|
||||
* related to the current request. Ensure that
|
||||
* the client is on the active list and not the
|
||||
* recursing list.
|
||||
* related to the current request.
|
||||
*/
|
||||
LOCK(&client->manager->lock);
|
||||
if (client->list == &client->manager->recursing) {
|
||||
ISC_LIST_UNLINK(*client->list, client, link);
|
||||
ISC_LIST_APPEND(client->manager->active, client, link);
|
||||
client->list = &client->manager->active;
|
||||
}
|
||||
UNLOCK(&client->manager->lock);
|
||||
ns_client_endrequest(client);
|
||||
|
||||
client->state = NS_CLIENTSTATE_READING;
|
||||
@@ -987,34 +972,6 @@ ns_client_send(ns_client_t *client) {
|
||||
ns_client_next(client, result);
|
||||
}
|
||||
|
||||
#if NS_CLIENT_DROPPORT
|
||||
#define DROPPORT_NO 0
|
||||
#define DROPPORT_REQUEST 1
|
||||
#define DROPPORT_RESPONSE 2
|
||||
/*%
|
||||
* ns_client_dropport determines if certain requests / responses
|
||||
* should be dropped based on the port number.
|
||||
*
|
||||
* Returns:
|
||||
* \li 0: Don't drop.
|
||||
* \li 1: Drop request.
|
||||
* \li 2: Drop (error) response.
|
||||
*/
|
||||
static int
|
||||
ns_client_dropport(in_port_t port) {
|
||||
switch (port) {
|
||||
case 7: /* echo */
|
||||
case 13: /* daytime */
|
||||
case 19: /* chargen */
|
||||
case 37: /* time */
|
||||
return (DROPPORT_REQUEST);
|
||||
case 464: /* kpasswd */
|
||||
return (DROPPORT_RESPONSE);
|
||||
}
|
||||
return (DROPPORT_NO);
|
||||
}
|
||||
#endif
|
||||
|
||||
void
|
||||
ns_client_error(ns_client_t *client, isc_result_t result) {
|
||||
dns_rcode_t rcode;
|
||||
@@ -1027,28 +984,6 @@ ns_client_error(ns_client_t *client, isc_result_t result) {
|
||||
message = client->message;
|
||||
rcode = dns_result_torcode(result);
|
||||
|
||||
#if NS_CLIENT_DROPPORT
|
||||
/*
|
||||
* Don't send FORMERR to ports on the drop port list.
|
||||
*/
|
||||
if (rcode == dns_rcode_formerr &&
|
||||
ns_client_dropport(isc_sockaddr_getport(&client->peeraddr)) !=
|
||||
DROPPORT_NO) {
|
||||
char buf[64];
|
||||
isc_buffer_t b;
|
||||
|
||||
isc_buffer_init(&b, buf, sizeof(buf) - 1);
|
||||
if (dns_rcode_totext(rcode, &b) != ISC_R_SUCCESS)
|
||||
isc_buffer_putstr(&b, "UNKNOWN RCODE");
|
||||
ns_client_log(client, DNS_LOGCATEGORY_SECURITY,
|
||||
NS_LOGMODULE_CLIENT, ISC_LOG_DEBUG(10),
|
||||
"dropped error (%.*s) response: suspicious port",
|
||||
(int)isc_buffer_usedlength(&b), buf);
|
||||
ns_client_next(client, ISC_R_SUCCESS);
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Message may be an in-progress reply that we had trouble
|
||||
* with, in which case QR will be set. We need to clear QR before
|
||||
@@ -1273,17 +1208,6 @@ client_request(isc_task_t *task, isc_event_t *event) {
|
||||
|
||||
isc_netaddr_fromsockaddr(&netaddr, &client->peeraddr);
|
||||
|
||||
#if NS_CLIENT_DROPPORT
|
||||
if (ns_client_dropport(isc_sockaddr_getport(&client->peeraddr)) ==
|
||||
DROPPORT_REQUEST) {
|
||||
ns_client_log(client, DNS_LOGCATEGORY_SECURITY,
|
||||
NS_LOGMODULE_CLIENT, ISC_LOG_DEBUG(10),
|
||||
"dropped request: suspicious port");
|
||||
ns_client_next(client, ISC_R_SUCCESS);
|
||||
goto cleanup;
|
||||
}
|
||||
#endif
|
||||
|
||||
ns_client_log(client, NS_LOGCATEGORY_CLIENT,
|
||||
NS_LOGMODULE_CLIENT, ISC_LOG_DEBUG(3),
|
||||
"%s request",
|
||||
@@ -1318,7 +1242,6 @@ client_request(isc_task_t *task, isc_event_t *event) {
|
||||
NS_LOGMODULE_CLIENT, ISC_LOG_DEBUG(2),
|
||||
"dropping multicast request");
|
||||
ns_client_next(client, DNS_R_REFUSED);
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
result = dns_message_peekheader(buffer, &id, &flags);
|
||||
@@ -1485,7 +1408,6 @@ client_request(isc_task_t *task, isc_event_t *event) {
|
||||
"failed to get request's "
|
||||
"destination: %s",
|
||||
isc_result_totext(result));
|
||||
ns_client_next(client, ISC_R_SUCCESS);
|
||||
goto cleanup;
|
||||
}
|
||||
}
|
||||
@@ -1610,15 +1532,12 @@ client_request(isc_task_t *task, isc_event_t *event) {
|
||||
* Decide whether recursive service is available to this client.
|
||||
* We do this here rather than in the query code so that we can
|
||||
* set the RA bit correctly on all kinds of responses, not just
|
||||
* responses to ordinary queries. Note if you can't query the
|
||||
* cache there is no point in setting RA.
|
||||
* responses to ordinary queries.
|
||||
*/
|
||||
ra = ISC_FALSE;
|
||||
if (client->view->resolver != NULL &&
|
||||
client->view->recursion == ISC_TRUE &&
|
||||
ns_client_checkaclsilent(client, client->view->recursionacl,
|
||||
ISC_TRUE) == ISC_R_SUCCESS &&
|
||||
ns_client_checkaclsilent(client, client->view->queryacl,
|
||||
ISC_TRUE) == ISC_R_SUCCESS)
|
||||
ra = ISC_TRUE;
|
||||
|
||||
@@ -2445,20 +2364,3 @@ ns_client_dumprecursing(FILE *f, ns_clientmgr_t *manager) {
|
||||
}
|
||||
UNLOCK(&manager->lock);
|
||||
}
|
||||
|
||||
void
|
||||
ns_client_qnamereplace(ns_client_t *client, dns_name_t *name) {
|
||||
|
||||
if (client->manager != NULL)
|
||||
LOCK(&client->manager->lock);
|
||||
if (client->query.restarts > 0) {
|
||||
/*
|
||||
* client->query.qname was dynamically allocated.
|
||||
*/
|
||||
dns_message_puttempname(client->message,
|
||||
&client->query.qname);
|
||||
}
|
||||
client->query.qname = name;
|
||||
if (client->manager != NULL)
|
||||
UNLOCK(&client->manager->lock);
|
||||
}
|
||||
|
||||
+46
-51
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2006 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2001-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: config.c,v 1.11.2.4.8.32 2006/02/28 06:32:53 marka Exp $ */
|
||||
/* $Id: config.c,v 1.11.2.4.8.29 2004/10/05 02:52:26 marka Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -196,7 +196,7 @@ ns_config_parsedefaults(cfg_parser_t *parser, cfg_obj_t **conf) {
|
||||
}
|
||||
|
||||
isc_result_t
|
||||
ns_config_get(const cfg_obj_t **maps, const char *name, const cfg_obj_t **obj) {
|
||||
ns_config_get(cfg_obj_t **maps, const char *name, cfg_obj_t **obj) {
|
||||
int i;
|
||||
|
||||
for (i = 0;; i++) {
|
||||
@@ -208,13 +208,11 @@ ns_config_get(const cfg_obj_t **maps, const char *name, const cfg_obj_t **obj) {
|
||||
}
|
||||
|
||||
isc_result_t
|
||||
ns_checknames_get(const cfg_obj_t **maps, const char *which,
|
||||
const cfg_obj_t **obj)
|
||||
{
|
||||
const cfg_listelt_t *element;
|
||||
const cfg_obj_t *checknames;
|
||||
const cfg_obj_t *type;
|
||||
const cfg_obj_t *value;
|
||||
ns_checknames_get(cfg_obj_t **maps, const char *which, cfg_obj_t **obj) {
|
||||
cfg_listelt_t *element;
|
||||
cfg_obj_t *checknames;
|
||||
cfg_obj_t *type;
|
||||
cfg_obj_t *value;
|
||||
int i;
|
||||
|
||||
for (i = 0;; i++) {
|
||||
@@ -245,8 +243,8 @@ ns_checknames_get(const cfg_obj_t **maps, const char *which,
|
||||
}
|
||||
|
||||
int
|
||||
ns_config_listcount(const cfg_obj_t *list) {
|
||||
const cfg_listelt_t *e;
|
||||
ns_config_listcount(cfg_obj_t *list) {
|
||||
cfg_listelt_t *e;
|
||||
int i = 0;
|
||||
|
||||
for (e = cfg_list_first(list); e != NULL; e = cfg_list_next(e))
|
||||
@@ -256,9 +254,9 @@ ns_config_listcount(const cfg_obj_t *list) {
|
||||
}
|
||||
|
||||
isc_result_t
|
||||
ns_config_getclass(const cfg_obj_t *classobj, dns_rdataclass_t defclass,
|
||||
ns_config_getclass(cfg_obj_t *classobj, dns_rdataclass_t defclass,
|
||||
dns_rdataclass_t *classp) {
|
||||
const char *str;
|
||||
char *str;
|
||||
isc_textregion_t r;
|
||||
isc_result_t result;
|
||||
|
||||
@@ -267,7 +265,7 @@ ns_config_getclass(const cfg_obj_t *classobj, dns_rdataclass_t defclass,
|
||||
return (ISC_R_SUCCESS);
|
||||
}
|
||||
str = cfg_obj_asstring(classobj);
|
||||
DE_CONST(str, r.base);
|
||||
r.base = str;
|
||||
r.length = strlen(str);
|
||||
result = dns_rdataclass_fromtext(classp, &r);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
@@ -277,9 +275,9 @@ ns_config_getclass(const cfg_obj_t *classobj, dns_rdataclass_t defclass,
|
||||
}
|
||||
|
||||
isc_result_t
|
||||
ns_config_gettype(const cfg_obj_t *typeobj, dns_rdatatype_t deftype,
|
||||
ns_config_gettype(cfg_obj_t *typeobj, dns_rdatatype_t deftype,
|
||||
dns_rdatatype_t *typep) {
|
||||
const char *str;
|
||||
char *str;
|
||||
isc_textregion_t r;
|
||||
isc_result_t result;
|
||||
|
||||
@@ -288,7 +286,7 @@ ns_config_gettype(const cfg_obj_t *typeobj, dns_rdatatype_t deftype,
|
||||
return (ISC_R_SUCCESS);
|
||||
}
|
||||
str = cfg_obj_asstring(typeobj);
|
||||
DE_CONST(str, r.base);
|
||||
r.base = str;
|
||||
r.length = strlen(str);
|
||||
result = dns_rdatatype_fromtext(typep, &r);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
@@ -298,9 +296,9 @@ ns_config_gettype(const cfg_obj_t *typeobj, dns_rdatatype_t deftype,
|
||||
}
|
||||
|
||||
dns_zonetype_t
|
||||
ns_config_getzonetype(const cfg_obj_t *zonetypeobj) {
|
||||
ns_config_getzonetype(cfg_obj_t *zonetypeobj) {
|
||||
dns_zonetype_t ztype = dns_zone_none;
|
||||
const char *str;
|
||||
char *str;
|
||||
|
||||
str = cfg_obj_asstring(zonetypeobj);
|
||||
if (strcasecmp(str, "master") == 0)
|
||||
@@ -315,14 +313,14 @@ ns_config_getzonetype(const cfg_obj_t *zonetypeobj) {
|
||||
}
|
||||
|
||||
isc_result_t
|
||||
ns_config_getiplist(const cfg_obj_t *config, const cfg_obj_t *list,
|
||||
ns_config_getiplist(cfg_obj_t *config, cfg_obj_t *list,
|
||||
in_port_t defport, isc_mem_t *mctx,
|
||||
isc_sockaddr_t **addrsp, isc_uint32_t *countp)
|
||||
{
|
||||
int count, i = 0;
|
||||
const cfg_obj_t *addrlist;
|
||||
const cfg_obj_t *portobj;
|
||||
const cfg_listelt_t *element;
|
||||
cfg_obj_t *addrlist;
|
||||
cfg_obj_t *portobj;
|
||||
cfg_listelt_t *element;
|
||||
isc_sockaddr_t *addrs;
|
||||
in_port_t port;
|
||||
isc_result_t result;
|
||||
@@ -382,12 +380,10 @@ ns_config_putiplist(isc_mem_t *mctx, isc_sockaddr_t **addrsp,
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
get_masters_def(const cfg_obj_t *cctx, const char *name,
|
||||
const cfg_obj_t **ret)
|
||||
{
|
||||
get_masters_def(cfg_obj_t *cctx, char *name, cfg_obj_t **ret) {
|
||||
isc_result_t result;
|
||||
const cfg_obj_t *masters = NULL;
|
||||
const cfg_listelt_t *elt;
|
||||
cfg_obj_t *masters = NULL;
|
||||
cfg_listelt_t *elt;
|
||||
|
||||
result = cfg_map_get(cctx, "masters", &masters);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
@@ -395,7 +391,7 @@ get_masters_def(const cfg_obj_t *cctx, const char *name,
|
||||
for (elt = cfg_list_first(masters);
|
||||
elt != NULL;
|
||||
elt = cfg_list_next(elt)) {
|
||||
const cfg_obj_t *list;
|
||||
cfg_obj_t *list;
|
||||
const char *listname;
|
||||
|
||||
list = cfg_listelt_value(elt);
|
||||
@@ -410,24 +406,24 @@ get_masters_def(const cfg_obj_t *cctx, const char *name,
|
||||
}
|
||||
|
||||
isc_result_t
|
||||
ns_config_getipandkeylist(const cfg_obj_t *config, const cfg_obj_t *list,
|
||||
isc_mem_t *mctx, isc_sockaddr_t **addrsp,
|
||||
dns_name_t ***keysp, isc_uint32_t *countp)
|
||||
ns_config_getipandkeylist(cfg_obj_t *config, cfg_obj_t *list, isc_mem_t *mctx,
|
||||
isc_sockaddr_t **addrsp, dns_name_t ***keysp,
|
||||
isc_uint32_t *countp)
|
||||
{
|
||||
isc_uint32_t addrcount = 0, keycount = 0, i = 0;
|
||||
isc_uint32_t listcount = 0, l = 0, j;
|
||||
isc_uint32_t stackcount = 0, pushed = 0;
|
||||
isc_result_t result;
|
||||
const cfg_listelt_t *element;
|
||||
const cfg_obj_t *addrlist;
|
||||
const cfg_obj_t *portobj;
|
||||
cfg_listelt_t *element;
|
||||
cfg_obj_t *addrlist;
|
||||
cfg_obj_t *portobj;
|
||||
in_port_t port;
|
||||
dns_fixedname_t fname;
|
||||
isc_sockaddr_t *addrs = NULL;
|
||||
dns_name_t **keys = NULL;
|
||||
const char **lists = NULL;
|
||||
char **lists = NULL;
|
||||
struct {
|
||||
const cfg_listelt_t *element;
|
||||
cfg_listelt_t *element;
|
||||
in_port_t port;
|
||||
} *stack = NULL;
|
||||
|
||||
@@ -443,14 +439,13 @@ ns_config_getipandkeylist(const cfg_obj_t *config, const cfg_obj_t *list,
|
||||
if (val > ISC_UINT16_MAX) {
|
||||
cfg_obj_log(portobj, ns_g_lctx, ISC_LOG_ERROR,
|
||||
"port '%u' out of range", val);
|
||||
result = ISC_R_RANGE;
|
||||
goto cleanup;
|
||||
return (ISC_R_RANGE);
|
||||
}
|
||||
port = (in_port_t) val;
|
||||
} else {
|
||||
result = ns_config_getport(config, &port);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
goto cleanup;
|
||||
return (result);
|
||||
}
|
||||
|
||||
result = ISC_R_NOMEMORY;
|
||||
@@ -461,9 +456,9 @@ ns_config_getipandkeylist(const cfg_obj_t *config, const cfg_obj_t *list,
|
||||
element != NULL;
|
||||
element = cfg_list_next(element))
|
||||
{
|
||||
const cfg_obj_t *addr;
|
||||
const cfg_obj_t *key;
|
||||
const char *keystr;
|
||||
cfg_obj_t *addr;
|
||||
cfg_obj_t *key;
|
||||
char *keystr;
|
||||
isc_buffer_t b;
|
||||
|
||||
addr = cfg_tuple_get(cfg_listelt_value(element),
|
||||
@@ -471,7 +466,7 @@ ns_config_getipandkeylist(const cfg_obj_t *config, const cfg_obj_t *list,
|
||||
key = cfg_tuple_get(cfg_listelt_value(element), "key");
|
||||
|
||||
if (!cfg_obj_issockaddr(addr)) {
|
||||
const char *listname = cfg_obj_asstring(addr);
|
||||
char *listname = cfg_obj_asstring(addr);
|
||||
isc_result_t tresult;
|
||||
|
||||
/* Grow lists? */
|
||||
@@ -611,9 +606,9 @@ ns_config_getipandkeylist(const cfg_obj_t *config, const cfg_obj_t *list,
|
||||
if (new == NULL)
|
||||
goto cleanup;
|
||||
memcpy(new, addrs, newsize);
|
||||
isc_mem_put(mctx, addrs, oldsize);
|
||||
} else
|
||||
new = NULL;
|
||||
isc_mem_put(mctx, addrs, oldsize);
|
||||
addrs = new;
|
||||
addrcount = i;
|
||||
|
||||
@@ -624,9 +619,9 @@ ns_config_getipandkeylist(const cfg_obj_t *config, const cfg_obj_t *list,
|
||||
if (new == NULL)
|
||||
goto cleanup;
|
||||
memcpy(new, keys, newsize);
|
||||
isc_mem_put(mctx, keys, oldsize);
|
||||
} else
|
||||
new = NULL;
|
||||
isc_mem_put(mctx, keys, oldsize);
|
||||
keys = new;
|
||||
keycount = i;
|
||||
}
|
||||
@@ -687,10 +682,10 @@ ns_config_putipandkeylist(isc_mem_t *mctx, isc_sockaddr_t **addrsp,
|
||||
}
|
||||
|
||||
isc_result_t
|
||||
ns_config_getport(const cfg_obj_t *config, in_port_t *portp) {
|
||||
const cfg_obj_t *maps[3];
|
||||
const cfg_obj_t *options = NULL;
|
||||
const cfg_obj_t *portobj = NULL;
|
||||
ns_config_getport(cfg_obj_t *config, in_port_t *portp) {
|
||||
cfg_obj_t *maps[3];
|
||||
cfg_obj_t *options = NULL;
|
||||
cfg_obj_t *portobj = NULL;
|
||||
isc_result_t result;
|
||||
int i;
|
||||
|
||||
|
||||
+62
-77
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2006 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2001-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: controlconf.c,v 1.28.2.9.2.11 2006/12/07 04:52:50 marka Exp $ */
|
||||
/* $Id: controlconf.c,v 1.28.2.9.2.6 2004/03/08 09:04:14 marka Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -356,9 +356,6 @@ control_recvmessage(isc_task_t *task, isc_event_t *event) {
|
||||
{
|
||||
ccregion.rstart = isc_buffer_base(&conn->ccmsg.buffer);
|
||||
ccregion.rend = isc_buffer_used(&conn->ccmsg.buffer);
|
||||
if (secret.rstart != NULL)
|
||||
isc_mem_put(listener->mctx, secret.rstart,
|
||||
REGION_SIZE(secret));
|
||||
secret.rstart = isc_mem_get(listener->mctx, key->secret.length);
|
||||
if (secret.rstart == NULL)
|
||||
goto cleanup;
|
||||
@@ -374,6 +371,8 @@ control_recvmessage(isc_task_t *task, isc_event_t *event) {
|
||||
*/
|
||||
if (request != NULL)
|
||||
isccc_sexpr_free(&request);
|
||||
isc_mem_put(listener->mctx, secret.rstart,
|
||||
REGION_SIZE(secret));
|
||||
} else {
|
||||
log_invalid(&conn->ccmsg, result);
|
||||
goto cleanup;
|
||||
@@ -650,12 +649,10 @@ ns_controls_shutdown(ns_controls_t *controls) {
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
cfgkeylist_find(const cfg_obj_t *keylist, const char *keyname,
|
||||
const cfg_obj_t **objp)
|
||||
{
|
||||
const cfg_listelt_t *element;
|
||||
cfgkeylist_find(cfg_obj_t *keylist, const char *keyname, cfg_obj_t **objp) {
|
||||
cfg_listelt_t *element;
|
||||
const char *str;
|
||||
const cfg_obj_t *obj;
|
||||
cfg_obj_t *obj;
|
||||
|
||||
for (element = cfg_list_first(keylist);
|
||||
element != NULL;
|
||||
@@ -674,14 +671,14 @@ cfgkeylist_find(const cfg_obj_t *keylist, const char *keyname,
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
controlkeylist_fromcfg(const cfg_obj_t *keylist, isc_mem_t *mctx,
|
||||
controlkeylist_fromcfg(cfg_obj_t *keylist, isc_mem_t *mctx,
|
||||
controlkeylist_t *keyids)
|
||||
{
|
||||
const cfg_listelt_t *element;
|
||||
cfg_listelt_t *element;
|
||||
char *newstr = NULL;
|
||||
const char *str;
|
||||
const cfg_obj_t *obj;
|
||||
controlkey_t *key;
|
||||
cfg_obj_t *obj;
|
||||
controlkey_t *key = NULL;
|
||||
|
||||
for (element = cfg_list_first(keylist);
|
||||
element != NULL;
|
||||
@@ -700,6 +697,7 @@ controlkeylist_fromcfg(const cfg_obj_t *keylist, isc_mem_t *mctx,
|
||||
key->secret.length = 0;
|
||||
ISC_LINK_INIT(key, link);
|
||||
ISC_LIST_APPEND(*keyids, key, link);
|
||||
key = NULL;
|
||||
newstr = NULL;
|
||||
}
|
||||
return (ISC_R_SUCCESS);
|
||||
@@ -707,16 +705,18 @@ controlkeylist_fromcfg(const cfg_obj_t *keylist, isc_mem_t *mctx,
|
||||
cleanup:
|
||||
if (newstr != NULL)
|
||||
isc_mem_free(mctx, newstr);
|
||||
if (key != NULL)
|
||||
isc_mem_put(mctx, key, sizeof(*key));
|
||||
free_controlkeylist(keyids, mctx);
|
||||
return (ISC_R_NOMEMORY);
|
||||
}
|
||||
|
||||
static void
|
||||
register_keys(const cfg_obj_t *control, const cfg_obj_t *keylist,
|
||||
register_keys(cfg_obj_t *control, cfg_obj_t *keylist,
|
||||
controlkeylist_t *keyids, isc_mem_t *mctx, const char *socktext)
|
||||
{
|
||||
controlkey_t *keyid, *next;
|
||||
const cfg_obj_t *keydef;
|
||||
cfg_obj_t *keydef;
|
||||
char secret[1024];
|
||||
isc_buffer_t b;
|
||||
isc_result_t result;
|
||||
@@ -736,10 +736,10 @@ register_keys(const cfg_obj_t *control, const cfg_obj_t *keylist,
|
||||
ISC_LIST_UNLINK(*keyids, keyid, link);
|
||||
free_controlkey(keyid, mctx);
|
||||
} else {
|
||||
const cfg_obj_t *algobj = NULL;
|
||||
const cfg_obj_t *secretobj = NULL;
|
||||
const char *algstr = NULL;
|
||||
const char *secretstr = NULL;
|
||||
cfg_obj_t *algobj = NULL;
|
||||
cfg_obj_t *secretobj = NULL;
|
||||
char *algstr = NULL;
|
||||
char *secretstr = NULL;
|
||||
|
||||
(void)cfg_map_get(keydef, "algorithm", &algobj);
|
||||
(void)cfg_map_get(keydef, "secret", &secretobj);
|
||||
@@ -805,11 +805,11 @@ get_rndckey(isc_mem_t *mctx, controlkeylist_t *keyids) {
|
||||
isc_result_t result;
|
||||
cfg_parser_t *pctx = NULL;
|
||||
cfg_obj_t *config = NULL;
|
||||
const cfg_obj_t *key = NULL;
|
||||
const cfg_obj_t *algobj = NULL;
|
||||
const cfg_obj_t *secretobj = NULL;
|
||||
const char *algstr = NULL;
|
||||
const char *secretstr = NULL;
|
||||
cfg_obj_t *key = NULL;
|
||||
cfg_obj_t *algobj = NULL;
|
||||
cfg_obj_t *secretobj = NULL;
|
||||
char *algstr = NULL;
|
||||
char *secretstr = NULL;
|
||||
controlkey_t *keyid = NULL;
|
||||
char secret[1024];
|
||||
isc_buffer_t b;
|
||||
@@ -888,13 +888,12 @@ get_rndckey(isc_mem_t *mctx, controlkeylist_t *keyids) {
|
||||
* valid or both are NULL.
|
||||
*/
|
||||
static void
|
||||
get_key_info(const cfg_obj_t *config, const cfg_obj_t *control,
|
||||
const cfg_obj_t **global_keylistp,
|
||||
const cfg_obj_t **control_keylistp)
|
||||
get_key_info(cfg_obj_t *config, cfg_obj_t *control,
|
||||
cfg_obj_t **global_keylistp, cfg_obj_t **control_keylistp)
|
||||
{
|
||||
isc_result_t result;
|
||||
const cfg_obj_t *control_keylist = NULL;
|
||||
const cfg_obj_t *global_keylist = NULL;
|
||||
cfg_obj_t *control_keylist = NULL;
|
||||
cfg_obj_t *global_keylist = NULL;
|
||||
|
||||
REQUIRE(global_keylistp != NULL && *global_keylistp == NULL);
|
||||
REQUIRE(control_keylistp != NULL && *control_keylistp == NULL);
|
||||
@@ -913,15 +912,15 @@ get_key_info(const cfg_obj_t *config, const cfg_obj_t *control,
|
||||
}
|
||||
|
||||
static void
|
||||
update_listener(ns_controls_t *cp, controllistener_t **listenerp,
|
||||
const cfg_obj_t *control, const cfg_obj_t *config,
|
||||
isc_sockaddr_t *addr, ns_aclconfctx_t *aclconfctx,
|
||||
const char *socktext)
|
||||
update_listener(ns_controls_t *cp,
|
||||
controllistener_t **listenerp, cfg_obj_t *control,
|
||||
cfg_obj_t *config, isc_sockaddr_t *addr,
|
||||
ns_aclconfctx_t *aclconfctx, const char *socktext)
|
||||
{
|
||||
controllistener_t *listener;
|
||||
const cfg_obj_t *allow;
|
||||
const cfg_obj_t *global_keylist = NULL;
|
||||
const cfg_obj_t *control_keylist = NULL;
|
||||
cfg_obj_t *allow;
|
||||
cfg_obj_t *global_keylist = NULL;
|
||||
cfg_obj_t *control_keylist = NULL;
|
||||
dns_acl_t *new_acl = NULL;
|
||||
controlkeylist_t keys;
|
||||
isc_result_t result = ISC_R_SUCCESS;
|
||||
@@ -978,25 +977,18 @@ update_listener(ns_controls_t *cp, controllistener_t **listenerp,
|
||||
result = get_rndckey(listener->mctx, &listener->keys);
|
||||
}
|
||||
|
||||
if (result != ISC_R_SUCCESS && global_keylist != NULL) {
|
||||
if (result != ISC_R_SUCCESS && global_keylist != NULL)
|
||||
/*
|
||||
* This message might be a little misleading since the
|
||||
* "new keys" might in fact be identical to the old ones,
|
||||
* but tracking whether they are identical just for the
|
||||
* sake of avoiding this message would be too much trouble.
|
||||
*/
|
||||
if (control != NULL)
|
||||
cfg_obj_log(control, ns_g_lctx, ISC_LOG_WARNING,
|
||||
"couldn't install new keys for "
|
||||
"command channel %s: %s",
|
||||
socktext, isc_result_totext(result));
|
||||
else
|
||||
isc_log_write(ns_g_lctx, NS_LOGCATEGORY_GENERAL,
|
||||
NS_LOGMODULE_CONTROL, ISC_LOG_WARNING,
|
||||
"couldn't install new keys for "
|
||||
"command channel %s: %s",
|
||||
socktext, isc_result_totext(result));
|
||||
}
|
||||
cfg_obj_log(control, ns_g_lctx, ISC_LOG_WARNING,
|
||||
"couldn't install new keys for "
|
||||
"command channel %s: %s",
|
||||
socktext, isc_result_totext(result));
|
||||
|
||||
|
||||
/*
|
||||
* Now, keep the old access list unless a new one can be made.
|
||||
@@ -1013,33 +1005,26 @@ update_listener(ns_controls_t *cp, controllistener_t **listenerp,
|
||||
dns_acl_detach(&listener->acl);
|
||||
dns_acl_attach(new_acl, &listener->acl);
|
||||
dns_acl_detach(&new_acl);
|
||||
} else
|
||||
/* XXXDCL say the old acl is still used? */
|
||||
} else if (control != NULL)
|
||||
cfg_obj_log(control, ns_g_lctx, ISC_LOG_WARNING,
|
||||
"couldn't install new acl for "
|
||||
"command channel %s: %s",
|
||||
socktext, isc_result_totext(result));
|
||||
else
|
||||
isc_log_write(ns_g_lctx, NS_LOGCATEGORY_GENERAL,
|
||||
NS_LOGMODULE_CONTROL, ISC_LOG_WARNING,
|
||||
"couldn't install new acl for "
|
||||
"command channel %s: %s",
|
||||
socktext, isc_result_totext(result));
|
||||
|
||||
*listenerp = listener;
|
||||
}
|
||||
|
||||
static void
|
||||
add_listener(ns_controls_t *cp, controllistener_t **listenerp,
|
||||
const cfg_obj_t *control, const cfg_obj_t *config,
|
||||
isc_sockaddr_t *addr, ns_aclconfctx_t *aclconfctx,
|
||||
const char *socktext)
|
||||
cfg_obj_t *control, cfg_obj_t *config, isc_sockaddr_t *addr,
|
||||
ns_aclconfctx_t *aclconfctx, const char *socktext)
|
||||
{
|
||||
isc_mem_t *mctx = cp->server->mctx;
|
||||
controllistener_t *listener;
|
||||
const cfg_obj_t *allow;
|
||||
const cfg_obj_t *global_keylist = NULL;
|
||||
const cfg_obj_t *control_keylist = NULL;
|
||||
cfg_obj_t *allow;
|
||||
cfg_obj_t *global_keylist = NULL;
|
||||
cfg_obj_t *control_keylist = NULL;
|
||||
dns_acl_t *new_acl = NULL;
|
||||
isc_result_t result = ISC_R_SUCCESS;
|
||||
|
||||
@@ -1150,13 +1135,13 @@ add_listener(ns_controls_t *cp, controllistener_t **listenerp,
|
||||
}
|
||||
|
||||
isc_result_t
|
||||
ns_controls_configure(ns_controls_t *cp, const cfg_obj_t *config,
|
||||
ns_controls_configure(ns_controls_t *cp, cfg_obj_t *config,
|
||||
ns_aclconfctx_t *aclconfctx)
|
||||
{
|
||||
controllistener_t *listener;
|
||||
controllistenerlist_t new_listeners;
|
||||
const cfg_obj_t *controlslist = NULL;
|
||||
const cfg_listelt_t *element, *element2;
|
||||
cfg_obj_t *controlslist = NULL;
|
||||
cfg_listelt_t *element, *element2;
|
||||
char socktext[ISC_SOCKADDR_FORMATSIZE];
|
||||
|
||||
ISC_LIST_INIT(new_listeners);
|
||||
@@ -1178,8 +1163,8 @@ ns_controls_configure(ns_controls_t *cp, const cfg_obj_t *config,
|
||||
for (element = cfg_list_first(controlslist);
|
||||
element != NULL;
|
||||
element = cfg_list_next(element)) {
|
||||
const cfg_obj_t *controls;
|
||||
const cfg_obj_t *inetcontrols = NULL;
|
||||
cfg_obj_t *controls;
|
||||
cfg_obj_t *inetcontrols = NULL;
|
||||
|
||||
controls = cfg_listelt_value(element);
|
||||
(void)cfg_map_get(controls, "inet", &inetcontrols);
|
||||
@@ -1189,9 +1174,9 @@ ns_controls_configure(ns_controls_t *cp, const cfg_obj_t *config,
|
||||
for (element2 = cfg_list_first(inetcontrols);
|
||||
element2 != NULL;
|
||||
element2 = cfg_list_next(element2)) {
|
||||
const cfg_obj_t *control;
|
||||
const cfg_obj_t *obj;
|
||||
isc_sockaddr_t addr;
|
||||
cfg_obj_t *control;
|
||||
cfg_obj_t *obj;
|
||||
isc_sockaddr_t *addr;
|
||||
|
||||
/*
|
||||
* The parser handles BIND 8 configuration file
|
||||
@@ -1204,12 +1189,12 @@ ns_controls_configure(ns_controls_t *cp, const cfg_obj_t *config,
|
||||
control = cfg_listelt_value(element2);
|
||||
|
||||
obj = cfg_tuple_get(control, "address");
|
||||
addr = *cfg_obj_assockaddr(obj);
|
||||
if (isc_sockaddr_getport(&addr) == 0)
|
||||
isc_sockaddr_setport(&addr,
|
||||
addr = cfg_obj_assockaddr(obj);
|
||||
if (isc_sockaddr_getport(addr) == 0)
|
||||
isc_sockaddr_setport(addr,
|
||||
NS_CONTROL_PORT);
|
||||
|
||||
isc_sockaddr_format(&addr, socktext,
|
||||
isc_sockaddr_format(addr, socktext,
|
||||
sizeof(socktext));
|
||||
|
||||
isc_log_write(ns_g_lctx,
|
||||
@@ -1220,7 +1205,7 @@ ns_controls_configure(ns_controls_t *cp, const cfg_obj_t *config,
|
||||
socktext);
|
||||
|
||||
update_listener(cp, &listener, control, config,
|
||||
&addr, aclconfctx, socktext);
|
||||
addr, aclconfctx, socktext);
|
||||
|
||||
if (listener != NULL)
|
||||
/*
|
||||
@@ -1234,7 +1219,7 @@ ns_controls_configure(ns_controls_t *cp, const cfg_obj_t *config,
|
||||
* This is a new listener.
|
||||
*/
|
||||
add_listener(cp, &listener, control,
|
||||
config, &addr, aclconfctx,
|
||||
config, addr, aclconfctx,
|
||||
socktext);
|
||||
|
||||
if (listener != NULL)
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2006 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2001 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: aclconf.h,v 1.12.208.3 2006/03/02 00:37:20 marka Exp $ */
|
||||
/* $Id: aclconf.h,v 1.12.208.1 2004/03/06 10:21:23 marka Exp $ */
|
||||
|
||||
#ifndef NS_ACLCONF_H
|
||||
#define NS_ACLCONF_H 1
|
||||
@@ -49,8 +49,8 @@ ns_aclconfctx_destroy(ns_aclconfctx_t *ctx);
|
||||
*/
|
||||
|
||||
isc_result_t
|
||||
ns_acl_fromconfig(const cfg_obj_t *caml,
|
||||
const cfg_obj_t *cctx,
|
||||
ns_acl_fromconfig(cfg_obj_t *caml,
|
||||
cfg_obj_t *cctx,
|
||||
ns_aclconfctx_t *ctx,
|
||||
isc_mem_t *mctx,
|
||||
dns_acl_t **target);
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2001, 2003 Internet Software Consortium.
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2001 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: builtin.h,v 1.1.204.5 2007/01/18 00:06:04 marka Exp $ */
|
||||
/* $Id: builtin.h,v 1.1.204.3 2004/03/08 04:04:20 marka Exp $ */
|
||||
|
||||
#ifndef NAMED_BUILTIN_H
|
||||
#define NAMED_BUILTIN_H 1
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2006 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: client.h,v 1.60.2.2.10.12 2006/06/06 00:11:40 marka Exp $ */
|
||||
/* $Id: client.h,v 1.60.2.2.10.10 2005/07/29 00:13:08 marka Exp $ */
|
||||
|
||||
#ifndef NAMED_CLIENT_H
|
||||
#define NAMED_CLIENT_H 1
|
||||
@@ -198,12 +198,6 @@ ns_client_next(ns_client_t *client, isc_result_t result);
|
||||
* return no response to the client.
|
||||
*/
|
||||
|
||||
void
|
||||
ns_client_qnamereplace(ns_client_t *client, dns_name_t *name);
|
||||
/*%
|
||||
* Replace the qname.
|
||||
*/
|
||||
|
||||
isc_boolean_t
|
||||
ns_client_shuttingdown(ns_client_t *client);
|
||||
/*
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2006, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2001-2003 Internet Software Consortium.
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2001, 2002 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: config.h,v 1.4.12.8 2007/01/18 00:06:04 marka Exp $ */
|
||||
/* $Id: config.h,v 1.4.12.4 2004/04/20 14:12:10 marka Exp $ */
|
||||
|
||||
#ifndef NAMED_CONFIG_H
|
||||
#define NAMED_CONFIG_H 1
|
||||
@@ -29,28 +29,27 @@ isc_result_t
|
||||
ns_config_parsedefaults(cfg_parser_t *parser, cfg_obj_t **conf);
|
||||
|
||||
isc_result_t
|
||||
ns_config_get(const cfg_obj_t **maps, const char* name, const cfg_obj_t **obj);
|
||||
ns_config_get(cfg_obj_t **maps, const char* name, cfg_obj_t **obj);
|
||||
|
||||
isc_result_t
|
||||
ns_checknames_get(const cfg_obj_t **maps, const char* name,
|
||||
const cfg_obj_t **obj);
|
||||
ns_checknames_get(cfg_obj_t **maps, const char* name, cfg_obj_t **obj);
|
||||
|
||||
int
|
||||
ns_config_listcount(const cfg_obj_t *list);
|
||||
ns_config_listcount(cfg_obj_t *list);
|
||||
|
||||
isc_result_t
|
||||
ns_config_getclass(const cfg_obj_t *classobj, dns_rdataclass_t defclass,
|
||||
ns_config_getclass(cfg_obj_t *classobj, dns_rdataclass_t defclass,
|
||||
dns_rdataclass_t *classp);
|
||||
|
||||
isc_result_t
|
||||
ns_config_gettype(const cfg_obj_t *typeobj, dns_rdatatype_t deftype,
|
||||
ns_config_gettype(cfg_obj_t *typeobj, dns_rdatatype_t deftype,
|
||||
dns_rdatatype_t *typep);
|
||||
|
||||
dns_zonetype_t
|
||||
ns_config_getzonetype(const cfg_obj_t *zonetypeobj);
|
||||
ns_config_getzonetype(cfg_obj_t *zonetypeobj);
|
||||
|
||||
isc_result_t
|
||||
ns_config_getiplist(const cfg_obj_t *config, const cfg_obj_t *list,
|
||||
ns_config_getiplist(cfg_obj_t *config, cfg_obj_t *list,
|
||||
in_port_t defport, isc_mem_t *mctx,
|
||||
isc_sockaddr_t **addrsp, isc_uint32_t *countp);
|
||||
|
||||
@@ -59,16 +58,16 @@ ns_config_putiplist(isc_mem_t *mctx, isc_sockaddr_t **addrsp,
|
||||
isc_uint32_t count);
|
||||
|
||||
isc_result_t
|
||||
ns_config_getipandkeylist(const cfg_obj_t *config, const cfg_obj_t *list,
|
||||
isc_mem_t *mctx, isc_sockaddr_t **addrsp,
|
||||
dns_name_t ***keys, isc_uint32_t *countp);
|
||||
ns_config_getipandkeylist(cfg_obj_t *config, cfg_obj_t *list, isc_mem_t *mctx,
|
||||
isc_sockaddr_t **addrsp, dns_name_t ***keys,
|
||||
isc_uint32_t *countp);
|
||||
|
||||
void
|
||||
ns_config_putipandkeylist(isc_mem_t *mctx, isc_sockaddr_t **addrsp,
|
||||
dns_name_t ***keys, isc_uint32_t count);
|
||||
|
||||
isc_result_t
|
||||
ns_config_getport(const cfg_obj_t *config, in_port_t *portp);
|
||||
ns_config_getport(cfg_obj_t *config, in_port_t *portp);
|
||||
|
||||
isc_result_t
|
||||
ns_config_getkeyalgorithm(const char *str, dns_name_t **name);
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2006 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2001-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: control.h,v 1.6.2.2.2.9 2006/03/02 00:37:20 marka Exp $ */
|
||||
/* $Id: control.h,v 1.6.2.2.2.7 2004/09/03 03:43:32 marka Exp $ */
|
||||
|
||||
#ifndef NAMED_CONTROL_H
|
||||
#define NAMED_CONTROL_H 1
|
||||
@@ -67,7 +67,7 @@ ns_controls_destroy(ns_controls_t **ctrlsp);
|
||||
*/
|
||||
|
||||
isc_result_t
|
||||
ns_controls_configure(ns_controls_t *controls, const cfg_obj_t *config,
|
||||
ns_controls_configure(ns_controls_t *controls, cfg_obj_t *config,
|
||||
ns_aclconfctx_t *aclconfctx);
|
||||
/*
|
||||
* Configure zero or more command channels into 'controls'
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2006 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: globals.h,v 1.59.68.7 2006/03/02 00:37:20 marka Exp $ */
|
||||
/* $Id: globals.h,v 1.59.68.5 2004/03/08 04:04:20 marka Exp $ */
|
||||
|
||||
#ifndef NAMED_GLOBALS_H
|
||||
#define NAMED_GLOBALS_H 1
|
||||
@@ -75,7 +75,7 @@ EXTERN unsigned int ns_g_debuglevel INIT(0);
|
||||
* Current configuration information.
|
||||
*/
|
||||
EXTERN cfg_obj_t * ns_g_config INIT(NULL);
|
||||
EXTERN const cfg_obj_t * ns_g_defaults INIT(NULL);
|
||||
EXTERN cfg_obj_t * ns_g_defaults INIT(NULL);
|
||||
EXTERN const char * ns_g_conffile INIT(NS_SYSCONFDIR
|
||||
"/named.conf");
|
||||
EXTERN const char * ns_g_keyfile INIT(NS_SYSCONFDIR
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2002 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: interfacemgr.h,v 1.23.24.9 2007/01/18 00:06:04 marka Exp $ */
|
||||
/* $Id: interfacemgr.h,v 1.23.24.7 2004/04/29 01:31:22 marka Exp $ */
|
||||
|
||||
#ifndef NAMED_INTERFACEMGR_H
|
||||
#define NAMED_INTERFACEMGR_H 1
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2002 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: log.h,v 1.19.12.5 2007/01/18 00:06:04 marka Exp $ */
|
||||
/* $Id: log.h,v 1.19.12.3 2004/03/08 04:04:21 marka Exp $ */
|
||||
|
||||
#ifndef NAMED_LOG_H
|
||||
#define NAMED_LOG_H 1
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2006 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2001 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: logconf.h,v 1.10.208.3 2006/03/02 00:37:20 marka Exp $ */
|
||||
/* $Id: logconf.h,v 1.10.208.1 2004/03/06 10:21:24 marka Exp $ */
|
||||
|
||||
#ifndef NAMED_LOGCONF_H
|
||||
#define NAMED_LOGCONF_H 1
|
||||
@@ -23,7 +23,7 @@
|
||||
#include <isc/log.h>
|
||||
|
||||
isc_result_t
|
||||
ns_log_configure(isc_logconfig_t *logconf, const cfg_obj_t *logstmt);
|
||||
ns_log_configure(isc_logconfig_t *logconf, cfg_obj_t *logstmt);
|
||||
/*
|
||||
* Set up the logging configuration in '*logconf' according to
|
||||
* the named.conf data in 'logstmt'.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2006 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000, 2001 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: lwresd.h,v 1.12.208.3 2006/03/02 00:37:20 marka Exp $ */
|
||||
/* $Id: lwresd.h,v 1.12.208.1 2004/03/06 10:21:25 marka Exp $ */
|
||||
|
||||
#ifndef NAMED_LWRESD_H
|
||||
#define NAMED_LWRESD_H 1
|
||||
@@ -56,7 +56,7 @@ struct ns_lwreslistener {
|
||||
* Configure lwresd.
|
||||
*/
|
||||
isc_result_t
|
||||
ns_lwresd_configure(isc_mem_t *mctx, const cfg_obj_t *config);
|
||||
ns_lwresd_configure(isc_mem_t *mctx, cfg_obj_t *config);
|
||||
|
||||
isc_result_t
|
||||
ns_lwresd_parseeresolvconf(isc_mem_t *mctx, cfg_parser_t *pctx,
|
||||
@@ -72,8 +72,7 @@ ns_lwresd_shutdown(void);
|
||||
* Manager functions
|
||||
*/
|
||||
isc_result_t
|
||||
ns_lwdmanager_create(isc_mem_t *mctx, const cfg_obj_t *lwres,
|
||||
ns_lwresd_t **lwresdp);
|
||||
ns_lwdmanager_create(isc_mem_t *mctx, cfg_obj_t *lwres, ns_lwresd_t **lwresdp);
|
||||
|
||||
void
|
||||
ns_lwdmanager_attach(ns_lwresd_t *source, ns_lwresd_t **targetp);
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2002 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: main.h,v 1.8.2.2.8.6 2007/01/18 00:06:04 marka Exp $ */
|
||||
/* $Id: main.h,v 1.8.2.2.8.4 2004/03/08 04:04:21 marka Exp $ */
|
||||
|
||||
#ifndef NAMED_MAIN_H
|
||||
#define NAMED_MAIN_H 1
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2002 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: query.h,v 1.28.2.3.8.8 2007/01/18 00:06:04 marka Exp $ */
|
||||
/* $Id: query.h,v 1.28.2.3.8.6 2004/03/08 04:04:21 marka Exp $ */
|
||||
|
||||
#ifndef NAMED_QUERY_H
|
||||
#define NAMED_QUERY_H 1
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2006 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: server.h,v 1.58.2.1.10.13 2006/03/02 00:37:20 marka Exp $ */
|
||||
/* $Id: server.h,v 1.58.2.1.10.11 2004/03/08 04:04:21 marka Exp $ */
|
||||
|
||||
#ifndef NAMED_SERVER_H
|
||||
#define NAMED_SERVER_H 1
|
||||
@@ -208,6 +208,6 @@ ns_server_dumprecursing(ns_server_t *server);
|
||||
* Maintain a list of dispatches that require reserved ports.
|
||||
*/
|
||||
void
|
||||
ns_add_reserved_dispatch(ns_server_t *server, const isc_sockaddr_t *addr);
|
||||
ns_add_reserved_dispatch(ns_server_t *server, isc_sockaddr_t *addr);
|
||||
|
||||
#endif /* NAMED_SERVER_H */
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2006 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000, 2001 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: sortlist.h,v 1.4.208.3 2006/03/02 00:37:20 marka Exp $ */
|
||||
/* $Id: sortlist.h,v 1.4.208.1 2004/03/06 10:21:26 marka Exp $ */
|
||||
|
||||
#ifndef NAMED_SORTLIST_H
|
||||
#define NAMED_SORTLIST_H 1
|
||||
@@ -28,7 +28,7 @@
|
||||
* Type for callback functions that rank addresses.
|
||||
*/
|
||||
typedef int
|
||||
(*dns_addressorderfunc_t)(const isc_netaddr_t *address, const void *arg);
|
||||
(*dns_addressorderfunc_t)(isc_netaddr_t *address, void *arg);
|
||||
|
||||
/*
|
||||
* Return value type for setup_sortlist.
|
||||
@@ -40,8 +40,7 @@ typedef enum {
|
||||
} ns_sortlisttype_t;
|
||||
|
||||
ns_sortlisttype_t
|
||||
ns_sortlist_setup(dns_acl_t *acl, isc_netaddr_t *clientaddr,
|
||||
const void **argp);
|
||||
ns_sortlist_setup(dns_acl_t *acl, isc_netaddr_t *clientaddr, void **argp);
|
||||
/*
|
||||
* Find the sortlist statement in 'acl' that applies to 'clientaddr', if any.
|
||||
*
|
||||
@@ -56,14 +55,14 @@ ns_sortlist_setup(dns_acl_t *acl, isc_netaddr_t *clientaddr,
|
||||
*/
|
||||
|
||||
int
|
||||
ns_sortlist_addrorder1(const isc_netaddr_t *addr, const void *arg);
|
||||
ns_sortlist_addrorder1(isc_netaddr_t *addr, void *arg);
|
||||
/*
|
||||
* Find the sort order of 'addr' in 'arg', the matching element
|
||||
* of a 1-element top-level sortlist statement.
|
||||
*/
|
||||
|
||||
int
|
||||
ns_sortlist_addrorder2(const isc_netaddr_t *addr, const void *arg);
|
||||
ns_sortlist_addrorder2(isc_netaddr_t *addr, void *arg);
|
||||
/*
|
||||
* Find the sort order of 'addr' in 'arg', a topology-like
|
||||
* ACL forming the second element in a 2-element top-level
|
||||
@@ -73,7 +72,7 @@ ns_sortlist_addrorder2(const isc_netaddr_t *addr, const void *arg);
|
||||
void
|
||||
ns_sortlist_byaddrsetup(dns_acl_t *sortlist_acl, isc_netaddr_t *client_addr,
|
||||
dns_addressorderfunc_t *orderp,
|
||||
const void **argp);
|
||||
void **argp);
|
||||
/*
|
||||
* Find the sortlist statement in 'acl' that applies to 'clientaddr', if any.
|
||||
* If a sortlist statement applies, return in '*orderp' a pointer to a function
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2006 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2001 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: tkeyconf.h,v 1.9.208.3 2006/03/02 00:37:20 marka Exp $ */
|
||||
/* $Id: tkeyconf.h,v 1.9.208.1 2004/03/06 10:21:26 marka Exp $ */
|
||||
|
||||
#ifndef NS_TKEYCONF_H
|
||||
#define NS_TKEYCONF_H 1
|
||||
@@ -28,8 +28,8 @@
|
||||
ISC_LANG_BEGINDECLS
|
||||
|
||||
isc_result_t
|
||||
ns_tkeyctx_fromconfig(const cfg_obj_t *options, isc_mem_t *mctx,
|
||||
isc_entropy_t *ectx, dns_tkeyctx_t **tctxp);
|
||||
ns_tkeyctx_fromconfig(cfg_obj_t *options, isc_mem_t *mctx, isc_entropy_t *ectx,
|
||||
dns_tkeyctx_t **tctxp);
|
||||
/*
|
||||
* Create a TKEY context and configure it, including the default DH key
|
||||
* and default domain, according to 'options'.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2006 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2001 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: tsigconf.h,v 1.9.208.3 2006/03/02 00:37:20 marka Exp $ */
|
||||
/* $Id: tsigconf.h,v 1.9.208.1 2004/03/06 10:21:26 marka Exp $ */
|
||||
|
||||
#ifndef NS_TSIGCONF_H
|
||||
#define NS_TSIGCONF_H 1
|
||||
@@ -26,7 +26,7 @@
|
||||
ISC_LANG_BEGINDECLS
|
||||
|
||||
isc_result_t
|
||||
ns_tsigkeyring_fromconfig(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
ns_tsigkeyring_fromconfig(cfg_obj_t *config, cfg_obj_t *vconfig,
|
||||
isc_mem_t *mctx, dns_tsig_keyring_t **ringp);
|
||||
/*
|
||||
* Create a TSIG key ring and configure it according to the 'key'
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2006, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2002 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: zoneconf.h,v 1.16.2.2.8.5 2007/01/18 00:06:04 marka Exp $ */
|
||||
/* $Id: zoneconf.h,v 1.16.2.2.8.1 2004/03/06 10:21:27 marka Exp $ */
|
||||
|
||||
#ifndef NS_ZONECONF_H
|
||||
#define NS_ZONECONF_H 1
|
||||
@@ -30,9 +30,8 @@
|
||||
ISC_LANG_BEGINDECLS
|
||||
|
||||
isc_result_t
|
||||
ns_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
const cfg_obj_t *zconfig, ns_aclconfctx_t *ac,
|
||||
dns_zone_t *zone);
|
||||
ns_zone_configure(cfg_obj_t *config, cfg_obj_t *vconfig, cfg_obj_t *zconfig,
|
||||
ns_aclconfctx_t *ac, dns_zone_t *zone);
|
||||
/*
|
||||
* Configure or reconfigure a zone according to the named.conf
|
||||
* data in 'cctx' and 'czone'.
|
||||
@@ -49,7 +48,7 @@ ns_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
||||
*/
|
||||
|
||||
isc_boolean_t
|
||||
ns_zone_reusable(dns_zone_t *zone, const cfg_obj_t *zconfig);
|
||||
ns_zone_reusable(dns_zone_t *zone, cfg_obj_t *zconfig);
|
||||
/*
|
||||
* If 'zone' can be safely reconfigured according to the configuration
|
||||
* data in 'zconfig', return ISC_TRUE. If the configuration data is so
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2006, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2002 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: interfacemgr.c,v 1.59.2.5.8.20 2007/01/18 00:06:04 marka Exp $ */
|
||||
/* $Id: interfacemgr.c,v 1.59.2.5.8.15 2004/08/10 04:56:23 jinmei Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -182,7 +182,6 @@ ns_interface_create(ns_interfacemgr_t *mgr, isc_sockaddr_t *addr,
|
||||
ifp->mgr = NULL;
|
||||
ifp->generation = mgr->generation;
|
||||
ifp->addr = *addr;
|
||||
ifp->flags = 0;
|
||||
strncpy(ifp->name, name, sizeof(ifp->name));
|
||||
ifp->name[sizeof(ifp->name)-1] = '\0';
|
||||
ifp->clientmgr = NULL;
|
||||
@@ -718,8 +717,9 @@ do_scan(ns_interfacemgr_t *mgr, ns_listenlist_t *ext_listen,
|
||||
* See if the address matches the listen-on statement;
|
||||
* if not, ignore the interface.
|
||||
*/
|
||||
(void)dns_acl_match(&listen_netaddr, NULL, le->acl,
|
||||
&mgr->aclenv, &match, NULL);
|
||||
result = dns_acl_match(&listen_netaddr, NULL,
|
||||
le->acl, &mgr->aclenv,
|
||||
&match, NULL);
|
||||
if (match <= 0)
|
||||
continue;
|
||||
|
||||
@@ -745,9 +745,9 @@ do_scan(ns_interfacemgr_t *mgr, ns_listenlist_t *ext_listen,
|
||||
for (ele = ISC_LIST_HEAD(ext_listen->elts);
|
||||
ele != NULL;
|
||||
ele = ISC_LIST_NEXT(ele, link)) {
|
||||
(void)dns_acl_match(&listen_netaddr,
|
||||
NULL, ele->acl,
|
||||
NULL, &match, NULL);
|
||||
dns_acl_match(&listen_netaddr, NULL,
|
||||
ele->acl, NULL,
|
||||
&match, NULL);
|
||||
if (match > 0 && ele->port == le->port)
|
||||
break;
|
||||
else
|
||||
|
||||
+3
-3
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
* Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2002 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: log.c,v 1.33.2.1.10.8 2007/01/18 00:06:04 marka Exp $ */
|
||||
/* $Id: log.c,v 1.33.2.1.10.6 2005/05/24 23:58:17 marka Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
|
||||
+30
-32
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2006, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2001, 2003 Internet Software Consortium.
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2001 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: logconf.c,v 1.30.2.3.10.6 2007/01/18 00:06:04 marka Exp $ */
|
||||
/* $Id: logconf.c,v 1.30.2.3.10.2 2004/03/06 10:21:18 marka Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -41,13 +41,13 @@
|
||||
* in 'ccat' and add it to 'lctx'.
|
||||
*/
|
||||
static isc_result_t
|
||||
category_fromconf(const cfg_obj_t *ccat, isc_logconfig_t *lctx) {
|
||||
category_fromconf(cfg_obj_t *ccat, isc_logconfig_t *lctx) {
|
||||
isc_result_t result;
|
||||
const char *catname;
|
||||
isc_logcategory_t *category;
|
||||
isc_logmodule_t *module;
|
||||
const cfg_obj_t *destinations = NULL;
|
||||
const cfg_listelt_t *element = NULL;
|
||||
cfg_obj_t *destinations = NULL;
|
||||
cfg_listelt_t *element = NULL;
|
||||
|
||||
catname = cfg_obj_asstring(cfg_tuple_get(ccat, "name"));
|
||||
category = isc_log_categorybyname(ns_g_lctx, catname);
|
||||
@@ -68,8 +68,8 @@ category_fromconf(const cfg_obj_t *ccat, isc_logconfig_t *lctx) {
|
||||
element != NULL;
|
||||
element = cfg_list_next(element))
|
||||
{
|
||||
const cfg_obj_t *channel = cfg_listelt_value(element);
|
||||
const char *channelname = cfg_obj_asstring(channel);
|
||||
cfg_obj_t *channel = cfg_listelt_value(element);
|
||||
char *channelname = cfg_obj_asstring(channel);
|
||||
|
||||
result = isc_log_usechannel(lctx, channelname, category,
|
||||
module);
|
||||
@@ -89,18 +89,18 @@ category_fromconf(const cfg_obj_t *ccat, isc_logconfig_t *lctx) {
|
||||
* in 'cchan' and add it to 'lctx'.
|
||||
*/
|
||||
static isc_result_t
|
||||
channel_fromconf(const cfg_obj_t *channel, isc_logconfig_t *lctx) {
|
||||
channel_fromconf(cfg_obj_t *channel, isc_logconfig_t *lctx) {
|
||||
isc_result_t result;
|
||||
isc_logdestination_t dest;
|
||||
unsigned int type;
|
||||
unsigned int flags = 0;
|
||||
int level;
|
||||
const char *channelname;
|
||||
const cfg_obj_t *fileobj = NULL;
|
||||
const cfg_obj_t *syslogobj = NULL;
|
||||
const cfg_obj_t *nullobj = NULL;
|
||||
const cfg_obj_t *stderrobj = NULL;
|
||||
const cfg_obj_t *severity = NULL;
|
||||
cfg_obj_t *fileobj = NULL;
|
||||
cfg_obj_t *syslogobj = NULL;
|
||||
cfg_obj_t *nullobj = NULL;
|
||||
cfg_obj_t *stderrobj = NULL;
|
||||
cfg_obj_t *severity = NULL;
|
||||
int i;
|
||||
|
||||
channelname = cfg_obj_asstring(cfg_map_getname(channel));
|
||||
@@ -130,10 +130,9 @@ channel_fromconf(const cfg_obj_t *channel, isc_logconfig_t *lctx) {
|
||||
type = ISC_LOG_TONULL;
|
||||
|
||||
if (fileobj != NULL) {
|
||||
const cfg_obj_t *pathobj = cfg_tuple_get(fileobj, "file");
|
||||
const cfg_obj_t *sizeobj = cfg_tuple_get(fileobj, "size");
|
||||
const cfg_obj_t *versionsobj =
|
||||
cfg_tuple_get(fileobj, "versions");
|
||||
cfg_obj_t *pathobj = cfg_tuple_get(fileobj, "file");
|
||||
cfg_obj_t *sizeobj = cfg_tuple_get(fileobj, "size");
|
||||
cfg_obj_t *versionsobj = cfg_tuple_get(fileobj, "versions");
|
||||
isc_int32_t versions = ISC_LOG_ROLLNEVER;
|
||||
isc_offset_t size = 0;
|
||||
|
||||
@@ -158,7 +157,7 @@ channel_fromconf(const cfg_obj_t *channel, isc_logconfig_t *lctx) {
|
||||
type = ISC_LOG_TOSYSLOG;
|
||||
|
||||
if (cfg_obj_isstring(syslogobj)) {
|
||||
const char *facilitystr = cfg_obj_asstring(syslogobj);
|
||||
char *facilitystr = cfg_obj_asstring(syslogobj);
|
||||
(void)isc_syslog_facilityfromstring(facilitystr,
|
||||
&facility);
|
||||
}
|
||||
@@ -175,9 +174,9 @@ channel_fromconf(const cfg_obj_t *channel, isc_logconfig_t *lctx) {
|
||||
* Munge flags.
|
||||
*/
|
||||
{
|
||||
const cfg_obj_t *printcat = NULL;
|
||||
const cfg_obj_t *printsev = NULL;
|
||||
const cfg_obj_t *printtime = NULL;
|
||||
cfg_obj_t *printcat = NULL;
|
||||
cfg_obj_t *printsev = NULL;
|
||||
cfg_obj_t *printtime = NULL;
|
||||
|
||||
(void)cfg_map_get(channel, "print-category", &printcat);
|
||||
(void)cfg_map_get(channel, "print-severity", &printsev);
|
||||
@@ -194,7 +193,7 @@ channel_fromconf(const cfg_obj_t *channel, isc_logconfig_t *lctx) {
|
||||
level = ISC_LOG_INFO;
|
||||
if (cfg_map_get(channel, "severity", &severity) == ISC_R_SUCCESS) {
|
||||
if (cfg_obj_isstring(severity)) {
|
||||
const char *str = cfg_obj_asstring(severity);
|
||||
char *str = cfg_obj_asstring(severity);
|
||||
if (strcasecmp(str, "critical") == 0)
|
||||
level = ISC_LOG_CRITICAL;
|
||||
else if (strcasecmp(str, "error") == 0)
|
||||
@@ -243,14 +242,13 @@ channel_fromconf(const cfg_obj_t *channel, isc_logconfig_t *lctx) {
|
||||
}
|
||||
|
||||
isc_result_t
|
||||
ns_log_configure(isc_logconfig_t *logconf, const cfg_obj_t *logstmt) {
|
||||
ns_log_configure(isc_logconfig_t *logconf, cfg_obj_t *logstmt) {
|
||||
isc_result_t result;
|
||||
const cfg_obj_t *channels = NULL;
|
||||
const cfg_obj_t *categories = NULL;
|
||||
const cfg_listelt_t *element;
|
||||
cfg_obj_t *channels = NULL;
|
||||
cfg_obj_t *categories = NULL;
|
||||
cfg_listelt_t *element;
|
||||
isc_boolean_t default_set = ISC_FALSE;
|
||||
isc_boolean_t unmatched_set = ISC_FALSE;
|
||||
const cfg_obj_t *catname;
|
||||
|
||||
CHECK(ns_log_setdefaultchannels(logconf));
|
||||
|
||||
@@ -259,7 +257,7 @@ ns_log_configure(isc_logconfig_t *logconf, const cfg_obj_t *logstmt) {
|
||||
element != NULL;
|
||||
element = cfg_list_next(element))
|
||||
{
|
||||
const cfg_obj_t *channel = cfg_listelt_value(element);
|
||||
cfg_obj_t *channel = cfg_listelt_value(element);
|
||||
CHECK(channel_fromconf(channel, logconf));
|
||||
}
|
||||
|
||||
@@ -268,15 +266,15 @@ ns_log_configure(isc_logconfig_t *logconf, const cfg_obj_t *logstmt) {
|
||||
element != NULL;
|
||||
element = cfg_list_next(element))
|
||||
{
|
||||
const cfg_obj_t *category = cfg_listelt_value(element);
|
||||
cfg_obj_t *category = cfg_listelt_value(element);
|
||||
CHECK(category_fromconf(category, logconf));
|
||||
if (!default_set) {
|
||||
catname = cfg_tuple_get(category, "name");
|
||||
cfg_obj_t *catname = cfg_tuple_get(category, "name");
|
||||
if (strcmp(cfg_obj_asstring(catname), "default") == 0)
|
||||
default_set = ISC_TRUE;
|
||||
}
|
||||
if (!unmatched_set) {
|
||||
catname = cfg_tuple_get(category, "name");
|
||||
cfg_obj_t *catname = cfg_tuple_get(category, "name");
|
||||
if (strcmp(cfg_obj_asstring(catname), "unmatched") == 0)
|
||||
unmatched_set = ISC_TRUE;
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000, 2001, 2003 Internet Software Consortium.
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000, 2001 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: lwdclient.c,v 1.13.12.7 2007/01/18 00:06:04 marka Exp $ */
|
||||
/* $Id: lwdclient.c,v 1.13.12.5 2004/03/08 09:04:15 marka Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
|
||||
+4
-4
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2006, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000, 2001, 2003 Internet Software Consortium.
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000, 2001 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: lwdgabn.c,v 1.13.12.7 2007/01/18 00:06:04 marka Exp $ */
|
||||
/* $Id: lwdgabn.c,v 1.13.12.3 2004/03/08 04:04:19 marka Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -120,7 +120,7 @@ sort_addresses(ns_lwdclient_t *client) {
|
||||
rankedaddress *addrs;
|
||||
isc_netaddr_t remote;
|
||||
dns_addressorderfunc_t order;
|
||||
const void *arg;
|
||||
void *arg;
|
||||
ns_lwresd_t *lwresd = client->clientmgr->listener->manager;
|
||||
unsigned int i;
|
||||
isc_result_t result;
|
||||
|
||||
+3
-3
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000-2002 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: lwdgnba.c,v 1.13.2.1.2.7 2007/01/18 00:06:04 marka Exp $ */
|
||||
/* $Id: lwdgnba.c,v 1.13.2.1.2.5 2004/03/08 04:04:19 marka Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
|
||||
+6
-4
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2006 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000, 2001, 2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: lwdgrbn.c,v 1.11.208.6 2006/12/07 04:52:50 marka Exp $ */
|
||||
/* $Id: lwdgrbn.c,v 1.11.208.3 2004/03/08 04:04:19 marka Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -183,6 +183,8 @@ iterate_node(lwres_grbnresponse_t *grbn, dns_db_t *db, dns_dbnode_t *node,
|
||||
isc_mem_put(mctx, oldlens, oldsize * sizeof(*oldlens));
|
||||
if (newrdatas != NULL)
|
||||
isc_mem_put(mctx, newrdatas, used * sizeof(*oldrdatas));
|
||||
if (newlens != NULL)
|
||||
isc_mem_put(mctx, newlens, used * sizeof(*oldlens));
|
||||
return (result);
|
||||
}
|
||||
|
||||
@@ -356,7 +358,7 @@ lookup_done(isc_task_t *task, isc_event_t *event) {
|
||||
client->sendlength = r.length;
|
||||
result = ns_lwdclient_sendreply(client, &r);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
goto out2;
|
||||
goto out;
|
||||
|
||||
NS_LWDCLIENT_SETSEND(client);
|
||||
|
||||
@@ -376,7 +378,7 @@ lookup_done(isc_task_t *task, isc_event_t *event) {
|
||||
if (grbn->siglen != NULL)
|
||||
isc_mem_put(cm->mctx, grbn->siglen,
|
||||
grbn->nsigs * sizeof(lwres_uint16_t));
|
||||
out2:
|
||||
|
||||
if (client->lookup != NULL)
|
||||
dns_lookup_destroy(&client->lookup);
|
||||
if (lwb.base != NULL)
|
||||
|
||||
+19
-53
@@ -1,4 +1,4 @@
|
||||
.\" Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -13,17 +13,14 @@
|
||||
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
.\" PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.\" $Id: lwresd.8,v 1.13.208.8 2007/01/30 00:11:47 marka Exp $
|
||||
.\" $Id: lwresd.8,v 1.13.208.5 2005/10/13 02:33:47 marka Exp $
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
.\" Title: lwresd
|
||||
.\" Author:
|
||||
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
|
||||
.\" Date: June 30, 2000
|
||||
.\" Manual: BIND9
|
||||
.\" Source: BIND9
|
||||
.\"
|
||||
.\" ** You probably do not want to edit this file directly **
|
||||
.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
|
||||
.\" Instead of manually editing it, you probably should edit the DocBook XML
|
||||
.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
|
||||
.TH "LWRESD" "8" "June 30, 2000" "BIND9" "BIND9"
|
||||
.\" disable hyphenation
|
||||
.nh
|
||||
@@ -60,57 +57,42 @@ entries are present, or if forwarding fails,
|
||||
\fBlwresd\fR
|
||||
resolves the queries autonomously starting at the root name servers, using a built\-in list of root server hints.
|
||||
.SH "OPTIONS"
|
||||
.PP
|
||||
.TP
|
||||
\-C \fIconfig\-file\fR
|
||||
.RS 4
|
||||
Use
|
||||
\fIconfig\-file\fR
|
||||
as the configuration file instead of the default,
|
||||
\fI/etc/resolv.conf\fR.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-d \fIdebug\-level\fR
|
||||
.RS 4
|
||||
Set the daemon's debug level to
|
||||
\fIdebug\-level\fR. Debugging traces from
|
||||
\fBlwresd\fR
|
||||
become more verbose as the debug level increases.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-f
|
||||
.RS 4
|
||||
Run the server in the foreground (i.e. do not daemonize).
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-g
|
||||
.RS 4
|
||||
Run the server in the foreground and force all logging to
|
||||
\fIstderr\fR.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-n \fI#cpus\fR
|
||||
.RS 4
|
||||
Create
|
||||
\fI#cpus\fR
|
||||
worker threads to take advantage of multiple CPUs. If not specified,
|
||||
\fBlwresd\fR
|
||||
will try to determine the number of CPUs present and create one thread per CPU. If it is unable to determine the number of CPUs, a single worker thread will be created.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-P \fIport\fR
|
||||
.RS 4
|
||||
Listen for lightweight resolver queries on port
|
||||
\fIport\fR. If not specified, the default is port 921.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-p \fIport\fR
|
||||
.RS 4
|
||||
Send DNS lookups to port
|
||||
\fIport\fR. If not specified, the default is port 53. This provides a way of testing the lightweight resolver daemon with a name server that listens for queries on a non\-standard port number.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-s
|
||||
.RS 4
|
||||
Write memory usage statistics to
|
||||
\fIstdout\fR
|
||||
on exit.
|
||||
@@ -118,10 +100,8 @@ on exit.
|
||||
.B "Note:"
|
||||
This option is mainly of interest to BIND 9 developers and may be removed or changed in a future release.
|
||||
.RE
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-t \fIdirectory\fR
|
||||
.RS 4
|
||||
\fBchroot()\fR
|
||||
to
|
||||
\fIdirectory\fR
|
||||
@@ -134,31 +114,22 @@ option, as chrooting a process running as root doesn't enhance security on most
|
||||
\fBchroot()\fR
|
||||
is defined allows a process with root privileges to escape a chroot jail.
|
||||
.RE
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-u \fIuser\fR
|
||||
.RS 4
|
||||
\fBsetuid()\fR
|
||||
to
|
||||
\fIuser\fR
|
||||
after completing privileged operations, such as creating sockets that listen on privileged ports.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-v
|
||||
.RS 4
|
||||
Report the version number and exit.
|
||||
.RE
|
||||
.SH "FILES"
|
||||
.PP
|
||||
.TP
|
||||
\fI/etc/resolv.conf\fR
|
||||
.RS 4
|
||||
The default configuration file.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fI/var/run/lwresd.pid\fR
|
||||
.RS 4
|
||||
The default process\-id file.
|
||||
.RE
|
||||
.SH "SEE ALSO"
|
||||
.PP
|
||||
\fBnamed\fR(8),
|
||||
@@ -167,8 +138,3 @@ The default process\-id file.
|
||||
.SH "AUTHOR"
|
||||
.PP
|
||||
Internet Systems Consortium
|
||||
.SH "COPYRIGHT"
|
||||
Copyright \(co 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
.br
|
||||
Copyright \(co 2000, 2001 Internet Software Consortium.
|
||||
.br
|
||||
|
||||
+12
-13
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004, 2006 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2000-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: lwresd.c,v 1.37.2.2.2.8 2006/02/28 06:32:53 marka Exp $ */
|
||||
/* $Id: lwresd.c,v 1.37.2.2.2.5 2004/03/08 04:04:19 marka Exp $ */
|
||||
|
||||
/*
|
||||
* Main program for the Lightweight Resolver Daemon.
|
||||
@@ -285,14 +285,14 @@ ns_lwresd_parseeresolvconf(isc_mem_t *mctx, cfg_parser_t *pctx,
|
||||
* Handle lwresd manager objects
|
||||
*/
|
||||
isc_result_t
|
||||
ns_lwdmanager_create(isc_mem_t *mctx, const cfg_obj_t *lwres,
|
||||
ns_lwdmanager_create(isc_mem_t *mctx, cfg_obj_t *lwres,
|
||||
ns_lwresd_t **lwresdp)
|
||||
{
|
||||
ns_lwresd_t *lwresd;
|
||||
const char *vname;
|
||||
dns_rdataclass_t vclass;
|
||||
const cfg_obj_t *obj, *viewobj, *searchobj;
|
||||
const cfg_listelt_t *element;
|
||||
cfg_obj_t *obj, *viewobj, *searchobj;
|
||||
cfg_listelt_t *element;
|
||||
isc_result_t result;
|
||||
|
||||
INSIST(lwresdp != NULL && *lwresdp == NULL);
|
||||
@@ -356,8 +356,8 @@ ns_lwdmanager_create(isc_mem_t *mctx, const cfg_obj_t *lwres,
|
||||
element != NULL;
|
||||
element = cfg_list_next(element))
|
||||
{
|
||||
const cfg_obj_t *search;
|
||||
const char *searchstr;
|
||||
cfg_obj_t *search;
|
||||
char *searchstr;
|
||||
isc_buffer_t namebuf;
|
||||
dns_fixedname_t fname;
|
||||
dns_name_t *name;
|
||||
@@ -407,7 +407,6 @@ ns_lwdmanager_create(isc_mem_t *mctx, const cfg_obj_t *lwres,
|
||||
ns_lwsearchlist_detach(&lwresd->search);
|
||||
if (lwresd->mctx != NULL)
|
||||
isc_mem_detach(&lwresd->mctx);
|
||||
isc_mem_put(mctx, lwresd, sizeof(ns_lwresd_t));
|
||||
return (result);
|
||||
}
|
||||
|
||||
@@ -745,11 +744,11 @@ configure_listener(isc_sockaddr_t *address, ns_lwresd_t *lwresd,
|
||||
}
|
||||
|
||||
isc_result_t
|
||||
ns_lwresd_configure(isc_mem_t *mctx, const cfg_obj_t *config) {
|
||||
const cfg_obj_t *lwreslist = NULL;
|
||||
const cfg_obj_t *lwres = NULL;
|
||||
const cfg_obj_t *listenerslist = NULL;
|
||||
const cfg_listelt_t *element = NULL;
|
||||
ns_lwresd_configure(isc_mem_t *mctx, cfg_obj_t *config) {
|
||||
cfg_obj_t *lwreslist = NULL;
|
||||
cfg_obj_t *lwres = NULL;
|
||||
cfg_obj_t *listenerslist = NULL;
|
||||
cfg_listelt_t *element = NULL;
|
||||
ns_lwreslistener_t *listener;
|
||||
ns_lwreslistenerlist_t newlisteners;
|
||||
isc_result_t result;
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
|
||||
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.0//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.0/docbookx.dtd"
|
||||
[<!ENTITY mdash "—">]>
|
||||
<!--
|
||||
- Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000, 2001 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -18,7 +18,7 @@
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
|
||||
<!-- $Id: lwresd.docbook,v 1.6.208.6 2007/01/29 23:57:18 marka Exp $ -->
|
||||
<!-- $Id: lwresd.docbook,v 1.6.208.4 2005/05/13 01:22:33 marka Exp $ -->
|
||||
|
||||
<refentry>
|
||||
<refentryinfo>
|
||||
@@ -35,7 +35,6 @@
|
||||
<copyright>
|
||||
<year>2004</year>
|
||||
<year>2005</year>
|
||||
<year>2007</year>
|
||||
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
|
||||
</copyright>
|
||||
<copyright>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!--
|
||||
- Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000, 2001 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -14,15 +14,15 @@
|
||||
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
<!-- $Id: lwresd.html,v 1.4.2.1.4.13 2007/01/30 00:11:47 marka Exp $ -->
|
||||
<!-- $Id: lwresd.html,v 1.4.2.1.4.8 2005/10/13 02:33:47 marka Exp $ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>lwresd</title>
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.69.1">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en">
|
||||
<a name="id2476275"></a><div class="titlepage"></div>
|
||||
<a name="id2463721"></a><div class="titlepage"></div>
|
||||
<div class="refnamediv">
|
||||
<h2>Name</h2>
|
||||
<p><span class="application">lwresd</span> — lightweight resolver daemon</p>
|
||||
@@ -32,7 +32,7 @@
|
||||
<div class="cmdsynopsis"><p><code class="command">lwresd</code> [<code class="option">-C <em class="replaceable"><code>config-file</code></em></code>] [<code class="option">-d <em class="replaceable"><code>debug-level</code></em></code>] [<code class="option">-f</code>] [<code class="option">-g</code>] [<code class="option">-i <em class="replaceable"><code>pid-file</code></em></code>] [<code class="option">-n <em class="replaceable"><code>#cpus</code></em></code>] [<code class="option">-P <em class="replaceable"><code>port</code></em></code>] [<code class="option">-p <em class="replaceable"><code>port</code></em></code>] [<code class="option">-s</code>] [<code class="option">-t <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-u <em class="replaceable"><code>user</code></em></code>] [<code class="option">-v</code>]</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543426"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2525920"></a><h2>DESCRIPTION</h2>
|
||||
<p>
|
||||
<span><strong class="command">lwresd</strong></span> is the daemon providing name lookup
|
||||
services to clients that use the BIND 9 lightweight resolver
|
||||
@@ -67,7 +67,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543475"></a><h2>OPTIONS</h2>
|
||||
<a name="id2525969"></a><h2>OPTIONS</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term">-C <em class="replaceable"><code>config-file</code></em></span></dt>
|
||||
<dd><p>
|
||||
@@ -159,7 +159,7 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543744"></a><h2>FILES</h2>
|
||||
<a name="id2526237"></a><h2>FILES</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term"><code class="filename">/etc/resolv.conf</code></span></dt>
|
||||
<dd><p>
|
||||
@@ -172,7 +172,7 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543783"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2526277"></a><h2>SEE ALSO</h2>
|
||||
<p>
|
||||
<span class="citerefentry"><span class="refentrytitle">named</span>(8)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">lwres</span>(3)</span>,
|
||||
@@ -180,7 +180,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543821"></a><h2>AUTHOR</h2>
|
||||
<a name="id2526315"></a><h2>AUTHOR</h2>
|
||||
<p>
|
||||
<span class="corpauthor">Internet Systems Consortium</span>
|
||||
</p>
|
||||
|
||||
+5
-5
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2006 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: main.c,v 1.119.2.3.2.25 2006/11/10 18:51:06 marka Exp $ */
|
||||
/* $Id: main.c,v 1.119.2.3.2.22 2005/04/29 01:04:47 marka Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -473,7 +473,7 @@ create_managers(void) {
|
||||
result = isc_taskmgr_create(ns_g_mctx, ns_g_cpus, 0, &ns_g_taskmgr);
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
UNEXPECTED_ERROR(__FILE__, __LINE__,
|
||||
"isc_taskmgr_create() failed: %s",
|
||||
"ns_taskmgr_create() failed: %s",
|
||||
isc_result_totext(result));
|
||||
return (ISC_R_UNEXPECTED);
|
||||
}
|
||||
@@ -481,7 +481,7 @@ create_managers(void) {
|
||||
result = isc_timermgr_create(ns_g_mctx, &ns_g_timermgr);
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
UNEXPECTED_ERROR(__FILE__, __LINE__,
|
||||
"isc_timermgr_create() failed: %s",
|
||||
"ns_timermgr_create() failed: %s",
|
||||
isc_result_totext(result));
|
||||
return (ISC_R_UNEXPECTED);
|
||||
}
|
||||
@@ -856,7 +856,7 @@ main(int argc, char *argv[]) {
|
||||
if (result == ISC_R_SUCCESS && instance != NULL) {
|
||||
if (smf_disable_instance(instance, 0) != 0)
|
||||
UNEXPECTED_ERROR(__FILE__, __LINE__,
|
||||
"smf_disable_instance() "
|
||||
"smf_disable_instance() ",
|
||||
"failed for %s : %s",
|
||||
instance,
|
||||
scf_strerror(scf_error()));
|
||||
|
||||
+23
-66
@@ -1,4 +1,4 @@
|
||||
.\" Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2000, 2001, 2003 Internet Software Consortium.
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -13,17 +13,14 @@
|
||||
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
.\" PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.\" $Id: named.8,v 1.17.208.11 2007/01/30 00:11:47 marka Exp $
|
||||
.\" $Id: named.8,v 1.17.208.6 2005/10/13 02:33:46 marka Exp $
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
.\" Title: named
|
||||
.\" Author:
|
||||
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
|
||||
.\" Date: June 30, 2000
|
||||
.\" Manual: BIND9
|
||||
.\" Source: BIND9
|
||||
.\"
|
||||
.\" ** You probably do not want to edit this file directly **
|
||||
.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
|
||||
.\" Instead of manually editing it, you probably should edit the DocBook XML
|
||||
.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
|
||||
.TH "NAMED" "8" "June 30, 2000" "BIND9" "BIND9"
|
||||
.\" disable hyphenation
|
||||
.nh
|
||||
@@ -44,27 +41,22 @@ When invoked without arguments,
|
||||
will read the default configuration file
|
||||
\fI/etc/named.conf\fR, read any initial data, and listen for queries.
|
||||
.SH "OPTIONS"
|
||||
.PP
|
||||
.TP
|
||||
\-4
|
||||
.RS 4
|
||||
Use IPv4 only even if the host machine is capable of IPv6.
|
||||
\fB\-4\fR
|
||||
and
|
||||
\fB\-6\fR
|
||||
are mutually exclusive.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-6
|
||||
.RS 4
|
||||
Use IPv6 only even if the host machine is capable of IPv4.
|
||||
\fB\-4\fR
|
||||
and
|
||||
\fB\-6\fR
|
||||
are mutually exclusive.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-c \fIconfig\-file\fR
|
||||
.RS 4
|
||||
Use
|
||||
\fIconfig\-file\fR
|
||||
as the configuration file instead of the default,
|
||||
@@ -73,44 +65,32 @@ as the configuration file instead of the default,
|
||||
option in the configuration file,
|
||||
\fIconfig\-file\fR
|
||||
should be an absolute pathname.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-d \fIdebug\-level\fR
|
||||
.RS 4
|
||||
Set the daemon's debug level to
|
||||
\fIdebug\-level\fR. Debugging traces from
|
||||
\fBnamed\fR
|
||||
become more verbose as the debug level increases.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-f
|
||||
.RS 4
|
||||
Run the server in the foreground (i.e. do not daemonize).
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-g
|
||||
.RS 4
|
||||
Run the server in the foreground and force all logging to
|
||||
\fIstderr\fR.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-n \fI#cpus\fR
|
||||
.RS 4
|
||||
Create
|
||||
\fI#cpus\fR
|
||||
worker threads to take advantage of multiple CPUs. If not specified,
|
||||
\fBnamed\fR
|
||||
will try to determine the number of CPUs present and create one thread per CPU. If it is unable to determine the number of CPUs, a single worker thread will be created.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-p \fIport\fR
|
||||
.RS 4
|
||||
Listen for queries on port
|
||||
\fIport\fR. If not specified, the default is port 53.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-s
|
||||
.RS 4
|
||||
Write memory usage statistics to
|
||||
\fIstdout\fR
|
||||
on exit.
|
||||
@@ -118,10 +98,8 @@ on exit.
|
||||
.B "Note:"
|
||||
This option is mainly of interest to BIND 9 developers and may be removed or changed in a future release.
|
||||
.RE
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-t \fIdirectory\fR
|
||||
.RS 4
|
||||
\fBchroot()\fR
|
||||
to
|
||||
\fIdirectory\fR
|
||||
@@ -134,10 +112,8 @@ option, as chrooting a process running as root doesn't enhance security on most
|
||||
\fBchroot()\fR
|
||||
is defined allows a process with root privileges to escape a chroot jail.
|
||||
.RE
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-u \fIuser\fR
|
||||
.RS 4
|
||||
\fBsetuid()\fR
|
||||
to
|
||||
\fIuser\fR
|
||||
@@ -155,15 +131,11 @@ option only works when
|
||||
is run on kernel 2.2.18 or later, or kernel 2.3.99\-pre3 or later, since previous kernels did not allow privileges to be retained after
|
||||
\fBsetuid()\fR.
|
||||
.RE
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-v
|
||||
.RS 4
|
||||
Report the version number and exit.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\-x \fIcache\-file\fR
|
||||
.RS 4
|
||||
Load data from
|
||||
\fIcache\-file\fR
|
||||
into the cache of the default view.
|
||||
@@ -171,22 +143,17 @@ into the cache of the default view.
|
||||
.B "Warning:"
|
||||
This option must not be used. It is only of interest to BIND 9 developers and may be removed or changed in a future release.
|
||||
.RE
|
||||
.RE
|
||||
.SH "SIGNALS"
|
||||
.PP
|
||||
In routine operation, signals should not be used to control the nameserver;
|
||||
\fBrndc\fR
|
||||
should be used instead.
|
||||
.PP
|
||||
.TP
|
||||
SIGHUP
|
||||
.RS 4
|
||||
Force a reload of the server.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
SIGINT, SIGTERM
|
||||
.RS 4
|
||||
Shut down the server.
|
||||
.RE
|
||||
.PP
|
||||
The result of sending any other signals to the server is undefined.
|
||||
.SH "CONFIGURATION"
|
||||
@@ -196,16 +163,12 @@ The
|
||||
configuration file is too complex to describe in detail here. A complete description is provided in the
|
||||
BIND 9 Administrator Reference Manual.
|
||||
.SH "FILES"
|
||||
.PP
|
||||
.TP
|
||||
\fI/etc/named.conf\fR
|
||||
.RS 4
|
||||
The default configuration file.
|
||||
.RE
|
||||
.PP
|
||||
.TP
|
||||
\fI/var/run/named.pid\fR
|
||||
.RS 4
|
||||
The default process\-id file.
|
||||
.RE
|
||||
.SH "SEE ALSO"
|
||||
.PP
|
||||
RFC 1033,
|
||||
@@ -213,13 +176,7 @@ RFC 1034,
|
||||
RFC 1035,
|
||||
\fBrndc\fR(8),
|
||||
\fBlwresd\fR(8),
|
||||
\fBnamed.conf\fR(5),
|
||||
BIND 9 Administrator Reference Manual.
|
||||
.SH "AUTHOR"
|
||||
.PP
|
||||
Internet Systems Consortium
|
||||
.SH "COPYRIGHT"
|
||||
Copyright \(co 2004\-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
.br
|
||||
Copyright \(co 2000, 2001, 2003 Internet Software Consortium.
|
||||
.br
|
||||
|
||||
+12
-41
@@ -1,4 +1,4 @@
|
||||
.\" Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\" Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and distribute this software for any
|
||||
.\" purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -12,18 +12,15 @@
|
||||
.\" OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
.\" PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.\" $Id: named.conf.5,v 1.1.4.12 2007/01/30 00:11:47 marka Exp $
|
||||
.\" $Id: named.conf.5,v 1.1.4.6 2005/10/13 02:33:47 marka Exp $
|
||||
.\"
|
||||
.hy 0
|
||||
.ad l
|
||||
.\" Title: \fInamed.conf\fR
|
||||
.\" Author:
|
||||
.\" Generator: DocBook XSL Stylesheets v1.71.1 <http://docbook.sf.net/>
|
||||
.\" Date: Aug 13, 2004
|
||||
.\" Manual: BIND9
|
||||
.\" Source: BIND9
|
||||
.\"
|
||||
.TH "\fINAMED.CONF\fR" "5" "Aug 13, 2004" "BIND9" "BIND9"
|
||||
.\" ** You probably do not want to edit this file directly **
|
||||
.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
|
||||
.\" Instead of manually editing it, you probably should edit the DocBook XML
|
||||
.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
|
||||
.TH "\\FINAMED.CONF\\FR" "5" "Aug 13, 2004" "BIND9" "BIND9"
|
||||
.\" disable hyphenation
|
||||
.nh
|
||||
.\" disable justification (adjust text to left margin only)
|
||||
@@ -46,34 +43,27 @@ C++ style: // to end of line
|
||||
Unix style: # to end of line
|
||||
.SH "ACL"
|
||||
.sp
|
||||
.RS 4
|
||||
.nf
|
||||
acl \fIstring\fR { \fIaddress_match_element\fR; ... };
|
||||
.fi
|
||||
.RE
|
||||
.SH "KEY"
|
||||
.sp
|
||||
.RS 4
|
||||
.nf
|
||||
key \fIdomain_name\fR {
|
||||
algorithm \fIstring\fR;
|
||||
secret \fIstring\fR;
|
||||
};
|
||||
.fi
|
||||
.RE
|
||||
.SH "MASTERS"
|
||||
.sp
|
||||
.RS 4
|
||||
.nf
|
||||
masters \fIstring\fR [ port \fIinteger\fR ] {
|
||||
( \fImasters\fR | \fIipv4_address\fR [port \fIinteger\fR] |
|
||||
\fIipv6_address\fR [port \fIinteger\fR] ) [ key \fIstring\fR ]; ...
|
||||
};
|
||||
.fi
|
||||
.RE
|
||||
.SH "SERVER"
|
||||
.sp
|
||||
.RS 4
|
||||
.nf
|
||||
server ( \fIipv4_address\fR | \fIipv6_address\fR ) {
|
||||
bogus \fIboolean\fR;
|
||||
@@ -90,19 +80,15 @@ server ( \fIipv4_address\fR | \fIipv6_address\fR ) {
|
||||
support\-ixfr \fIboolean\fR; // obsolete
|
||||
};
|
||||
.fi
|
||||
.RE
|
||||
.SH "TRUSTED\-KEYS"
|
||||
.sp
|
||||
.RS 4
|
||||
.nf
|
||||
trusted\-keys {
|
||||
\fIdomain_name\fR \fIflags\fR \fIprotocol\fR \fIalgorithm\fR \fIkey\fR; ...
|
||||
};
|
||||
.fi
|
||||
.RE
|
||||
.SH "CONTROLS"
|
||||
.sp
|
||||
.RS 4
|
||||
.nf
|
||||
controls {
|
||||
inet ( \fIipv4_address\fR | \fIipv6_address\fR | * )
|
||||
@@ -112,10 +98,8 @@ controls {
|
||||
unix \fIunsupported\fR; // not implemented
|
||||
};
|
||||
.fi
|
||||
.RE
|
||||
.SH "LOGGING"
|
||||
.sp
|
||||
.RS 4
|
||||
.nf
|
||||
logging {
|
||||
channel \fIstring\fR {
|
||||
@@ -131,10 +115,8 @@ logging {
|
||||
category \fIstring\fR { \fIstring\fR; ... };
|
||||
};
|
||||
.fi
|
||||
.RE
|
||||
.SH "LWRES"
|
||||
.sp
|
||||
.RS 4
|
||||
.nf
|
||||
lwres {
|
||||
listen\-on [ port \fIinteger\fR ] {
|
||||
@@ -145,10 +127,8 @@ lwres {
|
||||
ndots \fIinteger\fR;
|
||||
};
|
||||
.fi
|
||||
.RE
|
||||
.SH "OPTIONS"
|
||||
.sp
|
||||
.RS 4
|
||||
.nf
|
||||
options {
|
||||
avoid\-v4\-udp\-ports { \fIport\fR; ... };
|
||||
@@ -157,7 +137,6 @@ options {
|
||||
coresize \fIsize\fR;
|
||||
datasize \fIsize\fR;
|
||||
directory \fIquoted_string\fR;
|
||||
cache\-file \fIquoted_string\fR; // test option
|
||||
dump\-file \fIquoted_string\fR;
|
||||
files \fIsize\fR;
|
||||
heartbeat\-interval \fIinteger\fR;
|
||||
@@ -205,8 +184,8 @@ options {
|
||||
rfc2308\-type1 \fIboolean\fR; // not yet implemented
|
||||
additional\-from\-auth \fIboolean\fR;
|
||||
additional\-from\-cache \fIboolean\fR;
|
||||
query\-source [ address ( \fIipv4_address\fR | * ) ] [ port ( \fIinteger\fR | * ) ];
|
||||
query\-source\-v6 [ address ( \fIipv6_address\fR | * ) ] [ port ( \fIinteger\fR | * ) ];
|
||||
query\-source \fIquerysource4\fR;
|
||||
query\-source\-v6 \fIquerysource6\fR;
|
||||
cleaning\-interval \fIinteger\fR;
|
||||
min\-roots \fIinteger\fR; // not implemented
|
||||
lame\-ttl \fIinteger\fR;
|
||||
@@ -281,10 +260,8 @@ options {
|
||||
use\-id\-pool \fIboolean\fR; // obsolete
|
||||
};
|
||||
.fi
|
||||
.RE
|
||||
.SH "VIEW"
|
||||
.sp
|
||||
.RS 4
|
||||
.nf
|
||||
view \fIstring\fR \fIoptional_class\fR {
|
||||
match\-clients { \fIaddress_match_element\fR; ... };
|
||||
@@ -318,8 +295,8 @@ view \fIstring\fR \fIoptional_class\fR {
|
||||
rfc2308\-type1 \fIboolean\fR; // not yet implemented
|
||||
additional\-from\-auth \fIboolean\fR;
|
||||
additional\-from\-cache \fIboolean\fR;
|
||||
query\-source [ address ( \fIipv4_address\fR | * ) ] [ port ( \fIinteger\fR | * ) ];
|
||||
query\-source\-v6 [ address ( \fIipv6_address\fR | * ) ] [ port ( \fIinteger\fR | * ) ];
|
||||
query\-source \fIquerysource4\fR;
|
||||
query\-source\-v6 \fIquerysource6\fR;
|
||||
cleaning\-interval \fIinteger\fR;
|
||||
min\-roots \fIinteger\fR; // not implemented
|
||||
lame\-ttl \fIinteger\fR;
|
||||
@@ -386,10 +363,8 @@ view \fIstring\fR \fIoptional_class\fR {
|
||||
max\-ixfr\-log\-size \fIsize\fR; // obsolete
|
||||
};
|
||||
.fi
|
||||
.RE
|
||||
.SH "ZONE"
|
||||
.sp
|
||||
.RS 4
|
||||
.nf
|
||||
zone \fIstring\fR \fIoptional_class\fR {
|
||||
type ( master | slave | stub | hint |
|
||||
@@ -453,7 +428,6 @@ zone \fIstring\fR \fIoptional_class\fR {
|
||||
pubkey \fIinteger\fR \fIinteger\fR \fIinteger\fR \fIquoted_string\fR; // obsolete
|
||||
};
|
||||
.fi
|
||||
.RE
|
||||
.SH "FILES"
|
||||
.PP
|
||||
\fI/etc/named.conf\fR
|
||||
@@ -461,7 +435,4 @@ zone \fIstring\fR \fIoptional_class\fR {
|
||||
.PP
|
||||
\fBnamed\fR(8),
|
||||
\fBrndc\fR(8),
|
||||
\fBBIND 9 Administrator Reference Manual\fR().
|
||||
.SH "COPYRIGHT"
|
||||
Copyright \(co 2004\-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
.br
|
||||
\fBBIND 9 Adminstrators Reference Manual\fR().
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
|
||||
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.0//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.0/docbookx.dtd"
|
||||
[<!ENTITY mdash "—">]>
|
||||
<!--
|
||||
- Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
- purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -17,7 +17,7 @@
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
|
||||
<!-- $Id: named.conf.docbook,v 1.1.4.10 2007/01/29 23:57:18 marka Exp $ -->
|
||||
<!-- $Id: named.conf.docbook,v 1.1.4.4 2005/05/13 01:22:33 marka Exp $ -->
|
||||
|
||||
<refentry>
|
||||
<refentryinfo>
|
||||
@@ -34,8 +34,6 @@
|
||||
<copyright>
|
||||
<year>2004</year>
|
||||
<year>2005</year>
|
||||
<year>2006</year>
|
||||
<year>2007</year>
|
||||
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
|
||||
</copyright>
|
||||
</docinfo>
|
||||
@@ -185,7 +183,6 @@ options {
|
||||
coresize <replaceable>size</replaceable>;
|
||||
datasize <replaceable>size</replaceable>;
|
||||
directory <replaceable>quoted_string</replaceable>;
|
||||
cache-file <replaceable>quoted_string</replaceable>; // test option
|
||||
dump-file <replaceable>quoted_string</replaceable>;
|
||||
files <replaceable>size</replaceable>;
|
||||
heartbeat-interval <replaceable>integer</replaceable>;
|
||||
@@ -233,8 +230,8 @@ options {
|
||||
rfc2308-type1 <replaceable>boolean</replaceable>; // not yet implemented
|
||||
additional-from-auth <replaceable>boolean</replaceable>;
|
||||
additional-from-cache <replaceable>boolean</replaceable>;
|
||||
query-source <optional> address ( <replaceable>ipv4_address</replaceable> | * ) </optional> <optional> port ( <replaceable>integer</replaceable> | * ) </optional>;
|
||||
query-source-v6 <optional> address ( <replaceable>ipv6_address</replaceable> | * ) </optional> <optional> port ( <replaceable>integer</replaceable> | * ) </optional>;
|
||||
query-source <replaceable>querysource4</replaceable>;
|
||||
query-source-v6 <replaceable>querysource6</replaceable>;
|
||||
cleaning-interval <replaceable>integer</replaceable>;
|
||||
min-roots <replaceable>integer</replaceable>; // not implemented
|
||||
lame-ttl <replaceable>integer</replaceable>;
|
||||
@@ -360,8 +357,8 @@ view <replaceable>string</replaceable> <replaceable>optional_class</replaceable>
|
||||
rfc2308-type1 <replaceable>boolean</replaceable>; // not yet implemented
|
||||
additional-from-auth <replaceable>boolean</replaceable>;
|
||||
additional-from-cache <replaceable>boolean</replaceable>;
|
||||
query-source <optional> address ( <replaceable>ipv4_address</replaceable> | * ) </optional> <optional> port ( <replaceable>integer</replaceable> | * ) </optional>;
|
||||
query-source-v6 <optional> address ( <replaceable>ipv6_address</replaceable> | * ) </optional> <optional> port ( <replaceable>integer</replaceable> | * ) </optional>;
|
||||
query-source <replaceable>querysource4</replaceable>;
|
||||
query-source-v6 <replaceable>querysource6</replaceable>;
|
||||
cleaning-interval <replaceable>integer</replaceable>;
|
||||
min-roots <replaceable>integer</replaceable>; // not implemented
|
||||
lame-ttl <replaceable>integer</replaceable>;
|
||||
@@ -533,7 +530,7 @@ zone <replaceable>string</replaceable> <replaceable>optional_class</replaceable>
|
||||
<refentrytitle>rndc</refentrytitle><manvolnum>8</manvolnum>
|
||||
</citerefentry>,
|
||||
<citerefentry>
|
||||
<refentrytitle>BIND 9 Administrator Reference Manual</refentrytitle>
|
||||
<refentrytitle>BIND 9 Adminstrators Reference Manual</refentrytitle>
|
||||
</citerefentry>.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
+23
-24
@@ -1,5 +1,5 @@
|
||||
<!--
|
||||
- Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
- purpose with or without fee is hereby granted, provided that the above
|
||||
@@ -13,15 +13,15 @@
|
||||
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
<!-- $Id: named.conf.html,v 1.1.4.18 2007/01/30 00:11:48 marka Exp $ -->
|
||||
<!-- $Id: named.conf.html,v 1.1.4.10 2005/10/13 02:33:48 marka Exp $ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>named.conf</title>
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.69.1">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en">
|
||||
<a name="id2476275"></a><div class="titlepage"></div>
|
||||
<a name="id2463721"></a><div class="titlepage"></div>
|
||||
<div class="refnamediv">
|
||||
<h2>Name</h2>
|
||||
<p><code class="filename">named.conf</code> — configuration file for named</p>
|
||||
@@ -31,7 +31,7 @@
|
||||
<div class="cmdsynopsis"><p><code class="command">named.conf</code> </p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543330"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2525889"></a><h2>DESCRIPTION</h2>
|
||||
<p>
|
||||
<code class="filename">named.conf</code> is the configuration file for
|
||||
<span><strong class="command">named</strong></span>. Statements are enclosed
|
||||
@@ -50,14 +50,14 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543358"></a><h2>ACL</h2>
|
||||
<a name="id2525917"></a><h2>ACL</h2>
|
||||
<div class="literallayout"><p><br>
|
||||
acl <em class="replaceable"><code>string</code></em> { <em class="replaceable"><code>address_match_element</code></em>; ... };<br>
|
||||
<br>
|
||||
</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543374"></a><h2>KEY</h2>
|
||||
<a name="id2525933"></a><h2>KEY</h2>
|
||||
<div class="literallayout"><p><br>
|
||||
key <em class="replaceable"><code>domain_name</code></em> {<br>
|
||||
algorithm <em class="replaceable"><code>string</code></em>;<br>
|
||||
@@ -66,7 +66,7 @@ key
|
||||
</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543394"></a><h2>MASTERS</h2>
|
||||
<a name="id2525953"></a><h2>MASTERS</h2>
|
||||
<div class="literallayout"><p><br>
|
||||
masters <em class="replaceable"><code>string</code></em> [<span class="optional"> port <em class="replaceable"><code>integer</code></em> </span>] {<br>
|
||||
( <em class="replaceable"><code>masters</code></em> | <em class="replaceable"><code>ipv4_address</code></em> [<span class="optional">port <em class="replaceable"><code>integer</code></em></span>] |<br>
|
||||
@@ -75,7 +75,7 @@ masters
|
||||
</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543440"></a><h2>SERVER</h2>
|
||||
<a name="id2525998"></a><h2>SERVER</h2>
|
||||
<div class="literallayout"><p><br>
|
||||
server ( <em class="replaceable"><code>ipv4_address</code></em> | <em class="replaceable"><code>ipv6_address</code></em> ) {<br>
|
||||
bogus <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
@@ -95,7 +95,7 @@ server
|
||||
</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543497"></a><h2>TRUSTED-KEYS</h2>
|
||||
<a name="id2526056"></a><h2>TRUSTED-KEYS</h2>
|
||||
<div class="literallayout"><p><br>
|
||||
trusted-keys {<br>
|
||||
<em class="replaceable"><code>domain_name</code></em> <em class="replaceable"><code>flags</code></em> <em class="replaceable"><code>protocol</code></em> <em class="replaceable"><code>algorithm</code></em> <em class="replaceable"><code>key</code></em>; ... <br>
|
||||
@@ -103,7 +103,7 @@ trusted-keys
|
||||
</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543523"></a><h2>CONTROLS</h2>
|
||||
<a name="id2526082"></a><h2>CONTROLS</h2>
|
||||
<div class="literallayout"><p><br>
|
||||
controls {<br>
|
||||
inet ( <em class="replaceable"><code>ipv4_address</code></em> | <em class="replaceable"><code>ipv6_address</code></em> | * )<br>
|
||||
@@ -115,7 +115,7 @@ controls
|
||||
</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543558"></a><h2>LOGGING</h2>
|
||||
<a name="id2526117"></a><h2>LOGGING</h2>
|
||||
<div class="literallayout"><p><br>
|
||||
logging {<br>
|
||||
channel <em class="replaceable"><code>string</code></em> {<br>
|
||||
@@ -133,7 +133,7 @@ logging
|
||||
</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543596"></a><h2>LWRES</h2>
|
||||
<a name="id2526155"></a><h2>LWRES</h2>
|
||||
<div class="literallayout"><p><br>
|
||||
lwres {<br>
|
||||
listen-on [<span class="optional"> port <em class="replaceable"><code>integer</code></em> </span>] {<br>
|
||||
@@ -146,7 +146,7 @@ lwres
|
||||
</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543638"></a><h2>OPTIONS</h2>
|
||||
<a name="id2526197"></a><h2>OPTIONS</h2>
|
||||
<div class="literallayout"><p><br>
|
||||
options {<br>
|
||||
avoid-v4-udp-ports { <em class="replaceable"><code>port</code></em>; ... };<br>
|
||||
@@ -155,7 +155,6 @@ options
|
||||
coresize <em class="replaceable"><code>size</code></em>;<br>
|
||||
datasize <em class="replaceable"><code>size</code></em>;<br>
|
||||
directory <em class="replaceable"><code>quoted_string</code></em>;<br>
|
||||
cache-file <em class="replaceable"><code>quoted_string</code></em>; // test option<br>
|
||||
dump-file <em class="replaceable"><code>quoted_string</code></em>;<br>
|
||||
files <em class="replaceable"><code>size</code></em>;<br>
|
||||
heartbeat-interval <em class="replaceable"><code>integer</code></em>;<br>
|
||||
@@ -203,8 +202,8 @@ options
|
||||
rfc2308-type1 <em class="replaceable"><code>boolean</code></em>; // not yet implemented<br>
|
||||
additional-from-auth <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
additional-from-cache <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
query-source [<span class="optional"> address ( <em class="replaceable"><code>ipv4_address</code></em> | * ) </span>] [<span class="optional"> port ( <em class="replaceable"><code>integer</code></em> | * ) </span>];<br>
|
||||
query-source-v6 [<span class="optional"> address ( <em class="replaceable"><code>ipv6_address</code></em> | * ) </span>] [<span class="optional"> port ( <em class="replaceable"><code>integer</code></em> | * ) </span>];<br>
|
||||
query-source <em class="replaceable"><code>querysource4</code></em>;<br>
|
||||
query-source-v6 <em class="replaceable"><code>querysource6</code></em>;<br>
|
||||
cleaning-interval <em class="replaceable"><code>integer</code></em>;<br>
|
||||
min-roots <em class="replaceable"><code>integer</code></em>; // not implemented<br>
|
||||
lame-ttl <em class="replaceable"><code>integer</code></em>;<br>
|
||||
@@ -290,7 +289,7 @@ options
|
||||
</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2544322"></a><h2>VIEW</h2>
|
||||
<a name="id2526858"></a><h2>VIEW</h2>
|
||||
<div class="literallayout"><p><br>
|
||||
view <em class="replaceable"><code>string</code></em> <em class="replaceable"><code>optional_class</code></em> {<br>
|
||||
match-clients { <em class="replaceable"><code>address_match_element</code></em>; ... };<br>
|
||||
@@ -329,8 +328,8 @@ view
|
||||
rfc2308-type1 <em class="replaceable"><code>boolean</code></em>; // not yet implemented<br>
|
||||
additional-from-auth <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
additional-from-cache <em class="replaceable"><code>boolean</code></em>;<br>
|
||||
query-source [<span class="optional"> address ( <em class="replaceable"><code>ipv4_address</code></em> | * ) </span>] [<span class="optional"> port ( <em class="replaceable"><code>integer</code></em> | * ) </span>];<br>
|
||||
query-source-v6 [<span class="optional"> address ( <em class="replaceable"><code>ipv6_address</code></em> | * ) </span>] [<span class="optional"> port ( <em class="replaceable"><code>integer</code></em> | * ) </span>];<br>
|
||||
query-source <em class="replaceable"><code>querysource4</code></em>;<br>
|
||||
query-source-v6 <em class="replaceable"><code>querysource6</code></em>;<br>
|
||||
cleaning-interval <em class="replaceable"><code>integer</code></em>;<br>
|
||||
min-roots <em class="replaceable"><code>integer</code></em>; // not implemented<br>
|
||||
lame-ttl <em class="replaceable"><code>integer</code></em>;<br>
|
||||
@@ -408,7 +407,7 @@ view
|
||||
</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2544820"></a><h2>ZONE</h2>
|
||||
<a name="id2527269"></a><h2>ZONE</h2>
|
||||
<div class="literallayout"><p><br>
|
||||
zone <em class="replaceable"><code>string</code></em> <em class="replaceable"><code>optional_class</code></em> {<br>
|
||||
type ( master | slave | stub | hint |<br>
|
||||
@@ -484,17 +483,17 @@ zone
|
||||
</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2545089"></a><h2>FILES</h2>
|
||||
<a name="id2527606"></a><h2>FILES</h2>
|
||||
<p>
|
||||
<code class="filename">/etc/named.conf</code>
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2545101"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2527619"></a><h2>SEE ALSO</h2>
|
||||
<p>
|
||||
<span class="citerefentry"><span class="refentrytitle">named</span>(8)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">rndc</span>(8)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">BIND 9 Administrator Reference Manual</span></span>.
|
||||
<span class="citerefentry"><span class="refentrytitle">BIND 9 Adminstrators Reference Manual</span></span>.
|
||||
</p>
|
||||
</div>
|
||||
</div></body>
|
||||
|
||||
+4
-10
@@ -1,8 +1,8 @@
|
||||
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
|
||||
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.0//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.0/docbookx.dtd"
|
||||
[<!ENTITY mdash "—">]>
|
||||
<!--
|
||||
- Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000, 2001, 2003 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -18,7 +18,7 @@
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
|
||||
<!-- $Id: named.docbook,v 1.5.98.9 2007/01/29 23:57:18 marka Exp $ -->
|
||||
<!-- $Id: named.docbook,v 1.5.98.5 2005/05/13 01:22:33 marka Exp $ -->
|
||||
|
||||
<refentry>
|
||||
<refentryinfo>
|
||||
@@ -35,8 +35,6 @@
|
||||
<copyright>
|
||||
<year>2004</year>
|
||||
<year>2005</year>
|
||||
<year>2006</year>
|
||||
<year>2007</year>
|
||||
<holder>Internet Systems Consortium, Inc. ("ISC")</holder>
|
||||
</copyright>
|
||||
<copyright>
|
||||
@@ -367,10 +365,6 @@
|
||||
<refentrytitle>lwresd</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</citerefentry>,
|
||||
<citerefentry>
|
||||
<refentrytitle>named.conf</refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
</citerefentry>,
|
||||
<citetitle>BIND 9 Administrator Reference Manual</citetitle>.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
+11
-12
@@ -1,5 +1,5 @@
|
||||
<!--
|
||||
- Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
- Copyright (C) 2000, 2001, 2003 Internet Software Consortium.
|
||||
-
|
||||
- Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -14,15 +14,15 @@
|
||||
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- PERFORMANCE OF THIS SOFTWARE.
|
||||
-->
|
||||
<!-- $Id: named.html,v 1.4.2.1.4.16 2007/01/30 00:11:47 marka Exp $ -->
|
||||
<!-- $Id: named.html,v 1.4.2.1.4.9 2005/10/13 02:33:47 marka Exp $ -->
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>named</title>
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.69.1">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en">
|
||||
<a name="id2476275"></a><div class="titlepage"></div>
|
||||
<a name="id2463721"></a><div class="titlepage"></div>
|
||||
<div class="refnamediv">
|
||||
<h2>Name</h2>
|
||||
<p><span class="application">named</span> — Internet domain name server</p>
|
||||
@@ -32,7 +32,7 @@
|
||||
<div class="cmdsynopsis"><p><code class="command">named</code> [<code class="option">-4</code>] [<code class="option">-6</code>] [<code class="option">-c <em class="replaceable"><code>config-file</code></em></code>] [<code class="option">-d <em class="replaceable"><code>debug-level</code></em></code>] [<code class="option">-f</code>] [<code class="option">-g</code>] [<code class="option">-n <em class="replaceable"><code>#cpus</code></em></code>] [<code class="option">-p <em class="replaceable"><code>port</code></em></code>] [<code class="option">-s</code>] [<code class="option">-t <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-u <em class="replaceable"><code>user</code></em></code>] [<code class="option">-v</code>] [<code class="option">-x <em class="replaceable"><code>cache-file</code></em></code>]</p></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543432"></a><h2>DESCRIPTION</h2>
|
||||
<a name="id2525923"></a><h2>DESCRIPTION</h2>
|
||||
<p>
|
||||
<span><strong class="command">named</strong></span> is a Domain Name System (DNS) server,
|
||||
part of the BIND 9 distribution from ISC. For more
|
||||
@@ -46,7 +46,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543458"></a><h2>OPTIONS</h2>
|
||||
<a name="id2525948"></a><h2>OPTIONS</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term">-4</span></dt>
|
||||
<dd><p>
|
||||
@@ -177,7 +177,7 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543806"></a><h2>SIGNALS</h2>
|
||||
<a name="id2526297"></a><h2>SIGNALS</h2>
|
||||
<p>
|
||||
In routine operation, signals should not be used to control
|
||||
the nameserver; <span><strong class="command">rndc</strong></span> should be used
|
||||
@@ -198,7 +198,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543853"></a><h2>CONFIGURATION</h2>
|
||||
<a name="id2526412"></a><h2>CONFIGURATION</h2>
|
||||
<p>
|
||||
The <span><strong class="command">named</strong></span> configuration file is too complex
|
||||
to describe in detail here. A complete description is
|
||||
@@ -207,7 +207,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543870"></a><h2>FILES</h2>
|
||||
<a name="id2526429"></a><h2>FILES</h2>
|
||||
<div class="variablelist"><dl>
|
||||
<dt><span class="term"><code class="filename">/etc/named.conf</code></span></dt>
|
||||
<dd><p>
|
||||
@@ -220,19 +220,18 @@
|
||||
</dl></div>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543910"></a><h2>SEE ALSO</h2>
|
||||
<a name="id2526469"></a><h2>SEE ALSO</h2>
|
||||
<p>
|
||||
<em class="citetitle">RFC 1033</em>,
|
||||
<em class="citetitle">RFC 1034</em>,
|
||||
<em class="citetitle">RFC 1035</em>,
|
||||
<span class="citerefentry"><span class="refentrytitle">rndc</span>(8)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">lwresd</span>(8)</span>,
|
||||
<span class="citerefentry"><span class="refentrytitle">named.conf</span>(5)</span>,
|
||||
<em class="citetitle">BIND 9 Administrator Reference Manual</em>.
|
||||
</p>
|
||||
</div>
|
||||
<div class="refsect1" lang="en">
|
||||
<a name="id2543962"></a><h2>AUTHOR</h2>
|
||||
<a name="id2526512"></a><h2>AUTHOR</h2>
|
||||
<p>
|
||||
<span class="corpauthor">Internet Systems Consortium</span>
|
||||
</p>
|
||||
|
||||
+43
-61
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2006 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: query.c,v 1.198.2.13.4.44 2006/12/07 04:38:19 marka Exp $ */
|
||||
/* $Id: query.c,v 1.198.2.13.4.36.6.1 2006/08/17 07:12:31 marka Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -148,6 +148,18 @@ query_next(ns_client_t *client, isc_result_t result) {
|
||||
ns_client_next(client, result);
|
||||
}
|
||||
|
||||
static inline void
|
||||
query_maybeputqname(ns_client_t *client) {
|
||||
if (client->query.restarts > 0) {
|
||||
/*
|
||||
* client->query.qname was dynamically allocated.
|
||||
*/
|
||||
dns_message_puttempname(client->message,
|
||||
&client->query.qname);
|
||||
client->query.qname = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
static inline void
|
||||
query_freefreeversions(ns_client_t *client, isc_boolean_t everything) {
|
||||
ns_dbversion_t *dbversion, *dbversion_next;
|
||||
@@ -228,14 +240,8 @@ query_reset(ns_client_t *client, isc_boolean_t everything) {
|
||||
}
|
||||
}
|
||||
|
||||
if (client->query.restarts > 0) {
|
||||
/*
|
||||
* client->query.qname was dynamically allocated.
|
||||
*/
|
||||
dns_message_puttempname(client->message,
|
||||
&client->query.qname);
|
||||
}
|
||||
client->query.qname = NULL;
|
||||
query_maybeputqname(client);
|
||||
|
||||
client->query.attributes = (NS_QUERYATTR_RECURSIONOK |
|
||||
NS_QUERYATTR_CACHEOK |
|
||||
NS_QUERYATTR_SECURE);
|
||||
@@ -644,7 +650,7 @@ query_getzonedb(ns_client_t *client, dns_name_t *name, dns_rdatatype_t qtype,
|
||||
ISC_LOG_DEBUG(3),
|
||||
"%s approved", msg);
|
||||
}
|
||||
} else {
|
||||
} else {
|
||||
ns_client_aclmsg("query", name, qtype,
|
||||
client->view->rdclass,
|
||||
msg, sizeof(msg));
|
||||
@@ -1192,7 +1198,7 @@ query_addadditional(void *arg, dns_name_t *name, dns_rdatatype_t qtype) {
|
||||
* recursing to add address records, which in turn can cause
|
||||
* recursion to add KEYs.
|
||||
*/
|
||||
if (type == dns_rdatatype_srv && trdataset != NULL) {
|
||||
if (type == dns_rdatatype_srv && trdataset != NULL) {
|
||||
/*
|
||||
* If we're adding SRV records to the additional data
|
||||
* section, it's helpful if we add the SRV additional data
|
||||
@@ -2085,31 +2091,17 @@ query_recurse(ns_client_t *client, dns_rdatatype_t qtype, dns_name_t *qdomain,
|
||||
result = isc_quota_attach(&ns_g_server->recursionquota,
|
||||
&client->recursionquota);
|
||||
if (result == ISC_R_SOFTQUOTA) {
|
||||
static isc_stdtime_t last = 0;
|
||||
isc_stdtime_t now;
|
||||
isc_stdtime_get(&now);
|
||||
if (now != last) {
|
||||
last = now;
|
||||
ns_client_log(client, NS_LOGCATEGORY_CLIENT,
|
||||
NS_LOGMODULE_QUERY,
|
||||
ISC_LOG_WARNING,
|
||||
"recursive-clients soft limit "
|
||||
"exceeded, aborting oldest query");
|
||||
}
|
||||
ns_client_log(client, NS_LOGCATEGORY_CLIENT,
|
||||
NS_LOGMODULE_QUERY, ISC_LOG_WARNING,
|
||||
"recursive-clients soft limit exceeded, "
|
||||
"aborting oldest query");
|
||||
ns_client_killoldestquery(client);
|
||||
result = ISC_R_SUCCESS;
|
||||
} else if (result == ISC_R_QUOTA) {
|
||||
static isc_stdtime_t last = 0;
|
||||
isc_stdtime_t now;
|
||||
isc_stdtime_get(&now);
|
||||
if (now != last) {
|
||||
last = now;
|
||||
ns_client_log(client, NS_LOGCATEGORY_CLIENT,
|
||||
NS_LOGMODULE_QUERY,
|
||||
ISC_LOG_WARNING,
|
||||
"no more recursive clients: %s",
|
||||
isc_result_totext(result));
|
||||
}
|
||||
ns_client_log(client, NS_LOGCATEGORY_CLIENT,
|
||||
NS_LOGMODULE_QUERY, ISC_LOG_WARNING,
|
||||
"no more recursive clients: %s",
|
||||
isc_result_totext(result));
|
||||
ns_client_killoldestquery(client);
|
||||
}
|
||||
if (result == ISC_R_SUCCESS && !client->mortal &&
|
||||
@@ -2190,7 +2182,7 @@ do { \
|
||||
* ISC_R_NOTIMPLEMENTED The rdata is not a known address type.
|
||||
*/
|
||||
static isc_result_t
|
||||
rdata_tonetaddr(const dns_rdata_t *rdata, isc_netaddr_t *netaddr) {
|
||||
rdata_tonetaddr(dns_rdata_t *rdata, isc_netaddr_t *netaddr) {
|
||||
struct in_addr ina;
|
||||
struct in6_addr in6a;
|
||||
|
||||
@@ -2216,7 +2208,7 @@ rdata_tonetaddr(const dns_rdata_t *rdata, isc_netaddr_t *netaddr) {
|
||||
* sortlist statement.
|
||||
*/
|
||||
static int
|
||||
query_sortlist_order_2element(const dns_rdata_t *rdata, const void *arg) {
|
||||
query_sortlist_order_2element(dns_rdata_t *rdata, void *arg) {
|
||||
isc_netaddr_t netaddr;
|
||||
|
||||
if (rdata_tonetaddr(rdata, &netaddr) != ISC_R_SUCCESS)
|
||||
@@ -2229,7 +2221,7 @@ query_sortlist_order_2element(const dns_rdata_t *rdata, const void *arg) {
|
||||
* of a 1-element top-level sortlist statement.
|
||||
*/
|
||||
static int
|
||||
query_sortlist_order_1element(const dns_rdata_t *rdata, const void *arg) {
|
||||
query_sortlist_order_1element(dns_rdata_t *rdata, void *arg) {
|
||||
isc_netaddr_t netaddr;
|
||||
|
||||
if (rdata_tonetaddr(rdata, &netaddr) != ISC_R_SUCCESS)
|
||||
@@ -2245,7 +2237,7 @@ static void
|
||||
setup_query_sortlist(ns_client_t *client) {
|
||||
isc_netaddr_t netaddr;
|
||||
dns_rdatasetorderfunc_t order = NULL;
|
||||
const void *order_arg = NULL;
|
||||
void *order_arg = NULL;
|
||||
|
||||
isc_netaddr_fromsockaddr(&netaddr, &client->peeraddr);
|
||||
switch (ns_sortlist_setup(client->view->sortlist,
|
||||
@@ -2296,11 +2288,11 @@ query_addnoqnameproof(ns_client_t *client, dns_rdataset_t *rdataset) {
|
||||
|
||||
cleanup:
|
||||
if (nsec != NULL)
|
||||
query_putrdataset(client, &nsec);
|
||||
if (nsecsig != NULL)
|
||||
query_putrdataset(client, &nsecsig);
|
||||
if (fname != NULL)
|
||||
query_releasename(client, &fname);
|
||||
query_putrdataset(client, &nsec);
|
||||
if (nsecsig != NULL)
|
||||
query_putrdataset(client, &nsecsig);
|
||||
if (fname != NULL)
|
||||
query_releasename(client, &fname);
|
||||
}
|
||||
|
||||
static inline void
|
||||
@@ -2477,7 +2469,7 @@ query_find(ns_client_t *client, dns_fetchevent_t *event, dns_rdatatype_t qtype)
|
||||
/*
|
||||
* First we must find the right database.
|
||||
*/
|
||||
options &= DNS_GETDB_NOLOG; /* Preserve DNS_GETDB_NOLOG. */
|
||||
options = 0;
|
||||
if (dns_rdatatype_atparent(qtype) &&
|
||||
!dns_name_equal(client->query.qname, dns_rootname))
|
||||
options |= DNS_GETDB_NOEXACT;
|
||||
@@ -2517,10 +2509,9 @@ query_find(ns_client_t *client, dns_fetchevent_t *event, dns_rdatatype_t qtype)
|
||||
}
|
||||
}
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
if (result == DNS_R_REFUSED) {
|
||||
if (!PARTIALANSWER(client))
|
||||
QUERY_ERROR(DNS_R_REFUSED);
|
||||
} else
|
||||
if (result == DNS_R_REFUSED)
|
||||
QUERY_ERROR(DNS_R_REFUSED);
|
||||
else
|
||||
QUERY_ERROR(DNS_R_SERVFAIL);
|
||||
goto cleanup;
|
||||
}
|
||||
@@ -3004,10 +2995,9 @@ query_find(ns_client_t *client, dns_fetchevent_t *event, dns_rdatatype_t qtype)
|
||||
goto cleanup;
|
||||
}
|
||||
dns_rdata_freestruct(&cname);
|
||||
ns_client_qnamereplace(client, tname);
|
||||
query_maybeputqname(client);
|
||||
client->query.qname = tname;
|
||||
want_restart = ISC_TRUE;
|
||||
if (!WANTRECURSION(client))
|
||||
options |= DNS_GETDB_NOLOG;
|
||||
goto addauth;
|
||||
case DNS_R_DNAME:
|
||||
/*
|
||||
@@ -3121,11 +3111,10 @@ query_find(ns_client_t *client, dns_fetchevent_t *event, dns_rdatatype_t qtype)
|
||||
/*
|
||||
* Switch to the new qname and restart.
|
||||
*/
|
||||
ns_client_qnamereplace(client, fname);
|
||||
query_maybeputqname(client);
|
||||
client->query.qname = fname;
|
||||
fname = NULL;
|
||||
want_restart = ISC_TRUE;
|
||||
if (!WANTRECURSION(client))
|
||||
options |= DNS_GETDB_NOLOG;
|
||||
goto addauth;
|
||||
default:
|
||||
/*
|
||||
@@ -3249,13 +3238,6 @@ query_find(ns_client_t *client, dns_fetchevent_t *event, dns_rdatatype_t qtype)
|
||||
noqname = rdataset;
|
||||
else
|
||||
noqname = NULL;
|
||||
/*
|
||||
* BIND 8 priming queries need the additional section.
|
||||
*/
|
||||
if (is_zone && qtype == dns_rdatatype_ns &&
|
||||
dns_name_equal(client->query.qname, dns_rootname))
|
||||
client->query.attributes &= ~NS_QUERYATTR_NOADDITIONAL;
|
||||
|
||||
query_addrrset(client, &fname, &rdataset, sigrdatasetp, dbuf,
|
||||
DNS_SECTION_ANSWER);
|
||||
if (noqname != NULL)
|
||||
|
||||
+141
-159
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2006 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
|
||||
* Copyright (C) 1999-2003 Internet Software Consortium.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software for any
|
||||
@@ -15,7 +15,7 @@
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: server.c,v 1.339.2.15.2.71 2006/12/07 05:24:05 marka Exp $ */
|
||||
/* $Id: server.c,v 1.339.2.15.2.65 2005/07/27 02:53:15 marka Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -167,25 +167,25 @@ static void
|
||||
ns_server_reload(isc_task_t *task, isc_event_t *event);
|
||||
|
||||
static isc_result_t
|
||||
ns_listenelt_fromconfig(const cfg_obj_t *listener, const cfg_obj_t *config,
|
||||
ns_listenelt_fromconfig(cfg_obj_t *listener, cfg_obj_t *config,
|
||||
ns_aclconfctx_t *actx,
|
||||
isc_mem_t *mctx, ns_listenelt_t **target);
|
||||
static isc_result_t
|
||||
ns_listenlist_fromconfig(const cfg_obj_t *listenlist, const cfg_obj_t *config,
|
||||
ns_listenlist_fromconfig(cfg_obj_t *listenlist, cfg_obj_t *config,
|
||||
ns_aclconfctx_t *actx,
|
||||
isc_mem_t *mctx, ns_listenlist_t **target);
|
||||
|
||||
static isc_result_t
|
||||
configure_forward(const cfg_obj_t *config, dns_view_t *view, dns_name_t *origin,
|
||||
const cfg_obj_t *forwarders, const cfg_obj_t *forwardtype);
|
||||
configure_forward(cfg_obj_t *config, dns_view_t *view, dns_name_t *origin,
|
||||
cfg_obj_t *forwarders, cfg_obj_t *forwardtype);
|
||||
|
||||
static isc_result_t
|
||||
configure_alternates(const cfg_obj_t *config, dns_view_t *view,
|
||||
const cfg_obj_t *alternates);
|
||||
configure_alternates(cfg_obj_t *config, dns_view_t *view,
|
||||
cfg_obj_t *alternates);
|
||||
|
||||
static isc_result_t
|
||||
configure_zone(const cfg_obj_t *config, const cfg_obj_t *zconfig,
|
||||
const cfg_obj_t *vconfig, isc_mem_t *mctx, dns_view_t *view,
|
||||
configure_zone(cfg_obj_t *config, cfg_obj_t *zconfig, cfg_obj_t *vconfig,
|
||||
isc_mem_t *mctx, dns_view_t *view,
|
||||
ns_aclconfctx_t *aclconf);
|
||||
|
||||
static void
|
||||
@@ -197,13 +197,13 @@ end_reserved_dispatches(ns_server_t *server, isc_boolean_t all);
|
||||
* (for a global default).
|
||||
*/
|
||||
static isc_result_t
|
||||
configure_view_acl(const cfg_obj_t *vconfig, const cfg_obj_t *config,
|
||||
configure_view_acl(cfg_obj_t *vconfig, cfg_obj_t *config,
|
||||
const char *aclname, ns_aclconfctx_t *actx,
|
||||
isc_mem_t *mctx, dns_acl_t **aclp)
|
||||
{
|
||||
isc_result_t result;
|
||||
const cfg_obj_t *maps[3];
|
||||
const cfg_obj_t *aclobj = NULL;
|
||||
cfg_obj_t *maps[3];
|
||||
cfg_obj_t *aclobj = NULL;
|
||||
int i = 0;
|
||||
|
||||
if (*aclp != NULL)
|
||||
@@ -211,14 +211,14 @@ configure_view_acl(const cfg_obj_t *vconfig, const cfg_obj_t *config,
|
||||
if (vconfig != NULL)
|
||||
maps[i++] = cfg_tuple_get(vconfig, "options");
|
||||
if (config != NULL) {
|
||||
const cfg_obj_t *options = NULL;
|
||||
cfg_obj_t *options = NULL;
|
||||
(void)cfg_map_get(config, "options", &options);
|
||||
if (options != NULL)
|
||||
maps[i++] = options;
|
||||
}
|
||||
maps[i] = NULL;
|
||||
|
||||
(void)ns_config_get(maps, aclname, &aclobj);
|
||||
result = ns_config_get(maps, aclname, &aclobj);
|
||||
if (aclobj == NULL)
|
||||
/*
|
||||
* No value available. *aclp == NULL.
|
||||
@@ -231,13 +231,13 @@ configure_view_acl(const cfg_obj_t *vconfig, const cfg_obj_t *config,
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
configure_view_dnsseckey(const cfg_obj_t *vconfig, const cfg_obj_t *key,
|
||||
configure_view_dnsseckey(cfg_obj_t *vconfig, cfg_obj_t *key,
|
||||
dns_keytable_t *keytable, isc_mem_t *mctx)
|
||||
{
|
||||
dns_rdataclass_t viewclass;
|
||||
dns_rdata_dnskey_t keystruct;
|
||||
isc_uint32_t flags, proto, alg;
|
||||
const char *keystr, *keynamestr;
|
||||
char *keystr, *keynamestr;
|
||||
unsigned char keydata[4096];
|
||||
isc_buffer_t keydatabuf;
|
||||
unsigned char rrdata[4096];
|
||||
@@ -258,7 +258,7 @@ configure_view_dnsseckey(const cfg_obj_t *vconfig, const cfg_obj_t *key,
|
||||
if (vconfig == NULL)
|
||||
viewclass = dns_rdataclass_in;
|
||||
else {
|
||||
const cfg_obj_t *classobj = cfg_tuple_get(vconfig, "class");
|
||||
cfg_obj_t *classobj = cfg_tuple_get(vconfig, "class");
|
||||
CHECK(ns_config_getclass(classobj, dns_rdataclass_in,
|
||||
&viewclass));
|
||||
}
|
||||
@@ -290,13 +290,6 @@ configure_view_dnsseckey(const cfg_obj_t *vconfig, const cfg_obj_t *key,
|
||||
keystruct.datalen = r.length;
|
||||
keystruct.data = r.base;
|
||||
|
||||
if ((keystruct.algorithm == DST_ALG_RSASHA1 ||
|
||||
keystruct.algorithm == DST_ALG_RSAMD5) &&
|
||||
r.length > 1 && r.base[0] == 1 && r.base[1] == 3)
|
||||
cfg_obj_log(key, ns_g_lctx, ISC_LOG_WARNING,
|
||||
"trusted key '%s' has a weak exponent",
|
||||
keynamestr);
|
||||
|
||||
CHECK(dns_rdata_fromstruct(NULL,
|
||||
keystruct.common.rdclass,
|
||||
keystruct.common.rdtype,
|
||||
@@ -341,15 +334,15 @@ configure_view_dnsseckey(const cfg_obj_t *vconfig, const cfg_obj_t *key,
|
||||
* from 'vconfig' and 'config'. The variable to be configured is '*target'.
|
||||
*/
|
||||
static isc_result_t
|
||||
configure_view_dnsseckeys(const cfg_obj_t *vconfig, const cfg_obj_t *config,
|
||||
configure_view_dnsseckeys(cfg_obj_t *vconfig, cfg_obj_t *config,
|
||||
isc_mem_t *mctx, dns_keytable_t **target)
|
||||
{
|
||||
isc_result_t result;
|
||||
const cfg_obj_t *keys = NULL;
|
||||
const cfg_obj_t *voptions = NULL;
|
||||
const cfg_listelt_t *element, *element2;
|
||||
const cfg_obj_t *keylist;
|
||||
const cfg_obj_t *key;
|
||||
cfg_obj_t *keys = NULL;
|
||||
cfg_obj_t *voptions = NULL;
|
||||
cfg_listelt_t *element, *element2;
|
||||
cfg_obj_t *keylist;
|
||||
cfg_obj_t *key;
|
||||
dns_keytable_t *keytable = NULL;
|
||||
|
||||
CHECK(dns_keytable_create(mctx, &keytable));
|
||||
@@ -388,10 +381,10 @@ configure_view_dnsseckeys(const cfg_obj_t *vconfig, const cfg_obj_t *config,
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
mustbesecure(const cfg_obj_t *mbs, dns_resolver_t *resolver)
|
||||
mustbesecure(cfg_obj_t *mbs, dns_resolver_t *resolver)
|
||||
{
|
||||
const cfg_listelt_t *element;
|
||||
const cfg_obj_t *obj;
|
||||
cfg_listelt_t *element;
|
||||
cfg_obj_t *obj;
|
||||
const char *str;
|
||||
dns_fixedname_t fixed;
|
||||
dns_name_t *name;
|
||||
@@ -425,14 +418,14 @@ mustbesecure(const cfg_obj_t *mbs, dns_resolver_t *resolver)
|
||||
* Get a dispatch appropriate for the resolver of a given view.
|
||||
*/
|
||||
static isc_result_t
|
||||
get_view_querysource_dispatch(const cfg_obj_t **maps,
|
||||
get_view_querysource_dispatch(cfg_obj_t **maps,
|
||||
int af, dns_dispatch_t **dispatchp)
|
||||
{
|
||||
isc_result_t result;
|
||||
dns_dispatch_t *disp;
|
||||
isc_sockaddr_t sa;
|
||||
unsigned int attrs, attrmask;
|
||||
const cfg_obj_t *obj = NULL;
|
||||
cfg_obj_t *obj = NULL;
|
||||
|
||||
/*
|
||||
* Make compiler happy.
|
||||
@@ -443,6 +436,7 @@ get_view_querysource_dispatch(const cfg_obj_t **maps,
|
||||
case AF_INET:
|
||||
result = ns_config_get(maps, "query-source", &obj);
|
||||
INSIST(result == ISC_R_SUCCESS);
|
||||
|
||||
break;
|
||||
case AF_INET6:
|
||||
result = ns_config_get(maps, "query-source-v6", &obj);
|
||||
@@ -523,10 +517,10 @@ get_view_querysource_dispatch(const cfg_obj_t **maps,
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
configure_order(dns_order_t *order, const cfg_obj_t *ent) {
|
||||
configure_order(dns_order_t *order, cfg_obj_t *ent) {
|
||||
dns_rdataclass_t rdclass;
|
||||
dns_rdatatype_t rdtype;
|
||||
const cfg_obj_t *obj;
|
||||
cfg_obj_t *obj;
|
||||
dns_fixedname_t fixed;
|
||||
unsigned int mode = 0;
|
||||
const char *str;
|
||||
@@ -573,7 +567,7 @@ configure_order(dns_order_t *order, const cfg_obj_t *ent) {
|
||||
/*
|
||||
* "*" should match everything including the root (BIND 8 compat).
|
||||
* As dns_name_matcheswildcard(".", "*.") returns FALSE add a
|
||||
* explicit entry for "." when the name is "*".
|
||||
* explict entry for "." when the name is "*".
|
||||
*/
|
||||
if (addroot) {
|
||||
result = dns_order_add(order, dns_rootname,
|
||||
@@ -587,12 +581,12 @@ configure_order(dns_order_t *order, const cfg_obj_t *ent) {
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
configure_peer(const cfg_obj_t *cpeer, isc_mem_t *mctx, dns_peer_t **peerp) {
|
||||
const isc_sockaddr_t *sa;
|
||||
configure_peer(cfg_obj_t *cpeer, isc_mem_t *mctx, dns_peer_t **peerp) {
|
||||
isc_sockaddr_t *sa;
|
||||
isc_netaddr_t na;
|
||||
dns_peer_t *peer;
|
||||
const cfg_obj_t *obj;
|
||||
const char *str;
|
||||
cfg_obj_t *obj;
|
||||
char *str;
|
||||
isc_result_t result;
|
||||
|
||||
sa = cfg_obj_assockaddr(cfg_map_getname(cpeer));
|
||||
@@ -670,10 +664,10 @@ configure_peer(const cfg_obj_t *cpeer, isc_mem_t *mctx, dns_peer_t **peerp) {
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
disable_algorithms(const cfg_obj_t *disabled, dns_resolver_t *resolver) {
|
||||
disable_algorithms(cfg_obj_t *disabled, dns_resolver_t *resolver) {
|
||||
isc_result_t result;
|
||||
const cfg_obj_t *algorithms;
|
||||
const cfg_listelt_t *element;
|
||||
cfg_obj_t *algorithms;
|
||||
cfg_listelt_t *element;
|
||||
const char *str;
|
||||
dns_fixedname_t fixed;
|
||||
dns_name_t *name;
|
||||
@@ -694,7 +688,7 @@ disable_algorithms(const cfg_obj_t *disabled, dns_resolver_t *resolver) {
|
||||
isc_textregion_t r;
|
||||
dns_secalg_t alg;
|
||||
|
||||
DE_CONST(cfg_obj_asstring(cfg_listelt_value(element)), r.base);
|
||||
r.base = cfg_obj_asstring(cfg_listelt_value(element));
|
||||
r.length = strlen(r.base);
|
||||
|
||||
result = dns_secalg_fromtext(&alg, &r);
|
||||
@@ -723,21 +717,21 @@ disable_algorithms(const cfg_obj_t *disabled, dns_resolver_t *resolver) {
|
||||
* global defaults in 'config' used exclusively.
|
||||
*/
|
||||
static isc_result_t
|
||||
configure_view(dns_view_t *view, const cfg_obj_t *config,
|
||||
const cfg_obj_t *vconfig, isc_mem_t *mctx, ns_aclconfctx_t *actx,
|
||||
configure_view(dns_view_t *view, cfg_obj_t *config, cfg_obj_t *vconfig,
|
||||
isc_mem_t *mctx, ns_aclconfctx_t *actx,
|
||||
isc_boolean_t need_hints)
|
||||
{
|
||||
const cfg_obj_t *maps[4];
|
||||
const cfg_obj_t *cfgmaps[3];
|
||||
const cfg_obj_t *options = NULL;
|
||||
const cfg_obj_t *voptions = NULL;
|
||||
const cfg_obj_t *forwardtype;
|
||||
const cfg_obj_t *forwarders;
|
||||
const cfg_obj_t *alternates;
|
||||
const cfg_obj_t *zonelist;
|
||||
const cfg_obj_t *disabled;
|
||||
const cfg_obj_t *obj;
|
||||
const cfg_listelt_t *element;
|
||||
cfg_obj_t *maps[4];
|
||||
cfg_obj_t *cfgmaps[3];
|
||||
cfg_obj_t *options = NULL;
|
||||
cfg_obj_t *voptions = NULL;
|
||||
cfg_obj_t *forwardtype;
|
||||
cfg_obj_t *forwarders;
|
||||
cfg_obj_t *alternates;
|
||||
cfg_obj_t *zonelist;
|
||||
cfg_obj_t *disabled;
|
||||
cfg_obj_t *obj;
|
||||
cfg_listelt_t *element;
|
||||
in_port_t port;
|
||||
dns_cache_t *cache = NULL;
|
||||
isc_result_t result;
|
||||
@@ -798,7 +792,7 @@ configure_view(dns_view_t *view, const cfg_obj_t *config,
|
||||
element != NULL;
|
||||
element = cfg_list_next(element))
|
||||
{
|
||||
const cfg_obj_t *zconfig = cfg_listelt_value(element);
|
||||
cfg_obj_t *zconfig = cfg_listelt_value(element);
|
||||
CHECK(configure_zone(config, zconfig, vconfig, mctx, view,
|
||||
actx));
|
||||
}
|
||||
@@ -1024,8 +1018,8 @@ configure_view(dns_view_t *view, const cfg_obj_t *config,
|
||||
* Configure the view's peer list.
|
||||
*/
|
||||
{
|
||||
const cfg_obj_t *peers = NULL;
|
||||
const cfg_listelt_t *element;
|
||||
cfg_obj_t *peers = NULL;
|
||||
cfg_listelt_t *element;
|
||||
dns_peerlist_t *newpeers = NULL;
|
||||
|
||||
(void)ns_config_get(cfgmaps, "server", &peers);
|
||||
@@ -1034,7 +1028,7 @@ configure_view(dns_view_t *view, const cfg_obj_t *config,
|
||||
element != NULL;
|
||||
element = cfg_list_next(element))
|
||||
{
|
||||
const cfg_obj_t *cpeer = cfg_listelt_value(element);
|
||||
cfg_obj_t *cpeer = cfg_listelt_value(element);
|
||||
dns_peer_t *peer;
|
||||
|
||||
CHECK(configure_peer(cpeer, mctx, &peer));
|
||||
@@ -1049,8 +1043,8 @@ configure_view(dns_view_t *view, const cfg_obj_t *config,
|
||||
* Configure the views rrset-order.
|
||||
*/
|
||||
{
|
||||
const cfg_obj_t *rrsetorder = NULL;
|
||||
const cfg_listelt_t *element;
|
||||
cfg_obj_t *rrsetorder = NULL;
|
||||
cfg_listelt_t *element;
|
||||
|
||||
(void)ns_config_get(maps, "rrset-order", &rrsetorder);
|
||||
CHECK(dns_order_create(mctx, &order));
|
||||
@@ -1058,7 +1052,7 @@ configure_view(dns_view_t *view, const cfg_obj_t *config,
|
||||
element != NULL;
|
||||
element = cfg_list_next(element))
|
||||
{
|
||||
const cfg_obj_t *ent = cfg_listelt_value(element);
|
||||
cfg_obj_t *ent = cfg_listelt_value(element);
|
||||
|
||||
CHECK(configure_order(order, ent));
|
||||
}
|
||||
@@ -1084,7 +1078,7 @@ configure_view(dns_view_t *view, const cfg_obj_t *config,
|
||||
* Configure the "match-recursive-only" option.
|
||||
*/
|
||||
obj = NULL;
|
||||
(void)ns_config_get(maps, "match-recursive-only", &obj);
|
||||
(void) ns_config_get(maps, "match-recursive-only", &obj);
|
||||
if (obj != NULL && cfg_obj_asboolean(obj))
|
||||
view->matchrecursiveonly = ISC_TRUE;
|
||||
else
|
||||
@@ -1281,8 +1275,8 @@ configure_view(dns_view_t *view, const cfg_obj_t *config,
|
||||
dns_fixedname_t fixed;
|
||||
dns_name_t *name;
|
||||
isc_buffer_t b;
|
||||
const char *str;
|
||||
const cfg_obj_t *exclude;
|
||||
char *str;
|
||||
cfg_obj_t *exclude;
|
||||
|
||||
dns_fixedname_init(&fixed);
|
||||
name = dns_fixedname_name(&fixed);
|
||||
@@ -1336,12 +1330,12 @@ configure_hints(dns_view_t *view, const char *filename) {
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
configure_alternates(const cfg_obj_t *config, dns_view_t *view,
|
||||
const cfg_obj_t *alternates)
|
||||
configure_alternates(cfg_obj_t *config, dns_view_t *view,
|
||||
cfg_obj_t *alternates)
|
||||
{
|
||||
const cfg_obj_t *portobj;
|
||||
const cfg_obj_t *addresses;
|
||||
const cfg_listelt_t *element;
|
||||
cfg_obj_t *portobj;
|
||||
cfg_obj_t *addresses;
|
||||
cfg_listelt_t *element;
|
||||
isc_result_t result = ISC_R_SUCCESS;
|
||||
in_port_t port;
|
||||
|
||||
@@ -1374,14 +1368,14 @@ configure_alternates(const cfg_obj_t *config, dns_view_t *view,
|
||||
element != NULL;
|
||||
element = cfg_list_next(element))
|
||||
{
|
||||
const cfg_obj_t *alternate = cfg_listelt_value(element);
|
||||
cfg_obj_t *alternate = cfg_listelt_value(element);
|
||||
isc_sockaddr_t sa;
|
||||
|
||||
if (!cfg_obj_issockaddr(alternate)) {
|
||||
dns_fixedname_t fixed;
|
||||
dns_name_t *name;
|
||||
const char *str = cfg_obj_asstring(cfg_tuple_get(
|
||||
alternate, "name"));
|
||||
char *str = cfg_obj_asstring(cfg_tuple_get(alternate,
|
||||
"name"));
|
||||
isc_buffer_t buffer;
|
||||
in_port_t myport = port;
|
||||
|
||||
@@ -1421,12 +1415,12 @@ configure_alternates(const cfg_obj_t *config, dns_view_t *view,
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
configure_forward(const cfg_obj_t *config, dns_view_t *view, dns_name_t *origin,
|
||||
const cfg_obj_t *forwarders, const cfg_obj_t *forwardtype)
|
||||
configure_forward(cfg_obj_t *config, dns_view_t *view, dns_name_t *origin,
|
||||
cfg_obj_t *forwarders, cfg_obj_t *forwardtype)
|
||||
{
|
||||
const cfg_obj_t *portobj;
|
||||
const cfg_obj_t *faddresses;
|
||||
const cfg_listelt_t *element;
|
||||
cfg_obj_t *portobj;
|
||||
cfg_obj_t *faddresses;
|
||||
cfg_listelt_t *element;
|
||||
dns_fwdpolicy_t fwdpolicy = dns_fwdpolicy_none;
|
||||
isc_sockaddrlist_t addresses;
|
||||
isc_sockaddr_t *sa;
|
||||
@@ -1464,7 +1458,7 @@ configure_forward(const cfg_obj_t *config, dns_view_t *view, dns_name_t *origin,
|
||||
element != NULL;
|
||||
element = cfg_list_next(element))
|
||||
{
|
||||
const cfg_obj_t *forwarder = cfg_listelt_value(element);
|
||||
cfg_obj_t *forwarder = cfg_listelt_value(element);
|
||||
sa = isc_mem_get(view->mctx, sizeof(isc_sockaddr_t));
|
||||
if (sa == NULL) {
|
||||
result = ISC_R_NOMEMORY;
|
||||
@@ -1487,7 +1481,7 @@ configure_forward(const cfg_obj_t *config, dns_view_t *view, dns_name_t *origin,
|
||||
if (forwardtype == NULL)
|
||||
fwdpolicy = dns_fwdpolicy_first;
|
||||
else {
|
||||
const char *forwardstr = cfg_obj_asstring(forwardtype);
|
||||
char *forwardstr = cfg_obj_asstring(forwardtype);
|
||||
if (strcasecmp(forwardstr, "first") == 0)
|
||||
fwdpolicy = dns_fwdpolicy_first;
|
||||
else if (strcasecmp(forwardstr, "only") == 0)
|
||||
@@ -1529,16 +1523,14 @@ configure_forward(const cfg_obj_t *config, dns_view_t *view, dns_name_t *origin,
|
||||
* The view created is attached to '*viewp'.
|
||||
*/
|
||||
static isc_result_t
|
||||
create_view(const cfg_obj_t *vconfig, dns_viewlist_t *viewlist,
|
||||
dns_view_t **viewp)
|
||||
{
|
||||
create_view(cfg_obj_t *vconfig, dns_viewlist_t *viewlist, dns_view_t **viewp) {
|
||||
isc_result_t result;
|
||||
const char *viewname;
|
||||
dns_rdataclass_t viewclass;
|
||||
dns_view_t *view = NULL;
|
||||
|
||||
if (vconfig != NULL) {
|
||||
const cfg_obj_t *classobj = NULL;
|
||||
cfg_obj_t *classobj = NULL;
|
||||
|
||||
viewname = cfg_obj_asstring(cfg_tuple_get(vconfig, "name"));
|
||||
classobj = cfg_tuple_get(vconfig, "class");
|
||||
@@ -1568,19 +1560,19 @@ create_view(const cfg_obj_t *vconfig, dns_viewlist_t *viewlist,
|
||||
* Configure or reconfigure a zone.
|
||||
*/
|
||||
static isc_result_t
|
||||
configure_zone(const cfg_obj_t *config, const cfg_obj_t *zconfig,
|
||||
const cfg_obj_t *vconfig, isc_mem_t *mctx, dns_view_t *view,
|
||||
configure_zone(cfg_obj_t *config, cfg_obj_t *zconfig, cfg_obj_t *vconfig,
|
||||
isc_mem_t *mctx, dns_view_t *view,
|
||||
ns_aclconfctx_t *aclconf)
|
||||
{
|
||||
dns_view_t *pview = NULL; /* Production view */
|
||||
dns_zone_t *zone = NULL; /* New or reused zone */
|
||||
dns_zone_t *dupzone = NULL;
|
||||
const cfg_obj_t *options = NULL;
|
||||
const cfg_obj_t *zoptions = NULL;
|
||||
const cfg_obj_t *typeobj = NULL;
|
||||
const cfg_obj_t *forwarders = NULL;
|
||||
const cfg_obj_t *forwardtype = NULL;
|
||||
const cfg_obj_t *only = NULL;
|
||||
cfg_obj_t *options = NULL;
|
||||
cfg_obj_t *zoptions = NULL;
|
||||
cfg_obj_t *typeobj = NULL;
|
||||
cfg_obj_t *forwarders = NULL;
|
||||
cfg_obj_t *forwardtype = NULL;
|
||||
cfg_obj_t *only = NULL;
|
||||
isc_result_t result;
|
||||
isc_result_t tresult;
|
||||
isc_buffer_t buffer;
|
||||
@@ -1637,7 +1629,7 @@ configure_zone(const cfg_obj_t *config, const cfg_obj_t *zconfig,
|
||||
* configure it and return.
|
||||
*/
|
||||
if (strcasecmp(ztypestr, "hint") == 0) {
|
||||
const cfg_obj_t *fileobj = NULL;
|
||||
cfg_obj_t *fileobj = NULL;
|
||||
if (cfg_map_get(zoptions, "file", &fileobj) != ISC_R_SUCCESS) {
|
||||
isc_log_write(ns_g_lctx, NS_LOGCATEGORY_GENERAL,
|
||||
NS_LOGMODULE_SERVER, ISC_LOG_ERROR,
|
||||
@@ -1647,7 +1639,7 @@ configure_zone(const cfg_obj_t *config, const cfg_obj_t *zconfig,
|
||||
goto cleanup;
|
||||
}
|
||||
if (dns_name_equal(origin, dns_rootname)) {
|
||||
const char *hintsfile = cfg_obj_asstring(fileobj);
|
||||
char *hintsfile = cfg_obj_asstring(fileobj);
|
||||
|
||||
result = configure_hints(view, hintsfile);
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
@@ -1803,10 +1795,9 @@ configure_zone(const cfg_obj_t *config, const cfg_obj_t *zconfig,
|
||||
* Configure a single server quota.
|
||||
*/
|
||||
static void
|
||||
configure_server_quota(const cfg_obj_t **maps, const char *name,
|
||||
isc_quota_t *quota)
|
||||
configure_server_quota(cfg_obj_t **maps, const char *name, isc_quota_t *quota)
|
||||
{
|
||||
const cfg_obj_t *obj = NULL;
|
||||
cfg_obj_t *obj = NULL;
|
||||
isc_result_t result;
|
||||
|
||||
result = ns_config_get(maps, name, &obj);
|
||||
@@ -1819,9 +1810,9 @@ configure_server_quota(const cfg_obj_t **maps, const char *name,
|
||||
* parsed. This can be extended to support other options if necessary.
|
||||
*/
|
||||
static isc_result_t
|
||||
directory_callback(const char *clausename, const cfg_obj_t *obj, void *arg) {
|
||||
directory_callback(const char *clausename, cfg_obj_t *obj, void *arg) {
|
||||
isc_result_t result;
|
||||
const char *directory;
|
||||
char *directory;
|
||||
|
||||
REQUIRE(strcasecmp("directory", clausename) == 0);
|
||||
|
||||
@@ -1900,7 +1891,8 @@ add_listenelt(isc_mem_t *mctx, ns_listenlist_t *list, isc_sockaddr_t *addr) {
|
||||
|
||||
clean:
|
||||
INSIST(lelt == NULL);
|
||||
dns_acl_detach(&src_acl);
|
||||
if (src_acl != NULL)
|
||||
dns_acl_detach(&src_acl);
|
||||
|
||||
return (result);
|
||||
}
|
||||
@@ -2057,7 +2049,7 @@ setstring(ns_server_t *server, char **field, const char *value) {
|
||||
* or NULL if whether 'obj' is a string or void value, respectively.
|
||||
*/
|
||||
static isc_result_t
|
||||
setoptstring(ns_server_t *server, char **field, const cfg_obj_t *obj) {
|
||||
setoptstring(ns_server_t *server, char **field, cfg_obj_t *obj) {
|
||||
if (cfg_obj_isvoid(obj))
|
||||
return (setstring(server, field, NULL));
|
||||
else
|
||||
@@ -2065,12 +2057,11 @@ setoptstring(ns_server_t *server, char **field, const cfg_obj_t *obj) {
|
||||
}
|
||||
|
||||
static void
|
||||
set_limit(const cfg_obj_t **maps, const char *configname,
|
||||
const char *description, isc_resource_t resourceid,
|
||||
isc_resourcevalue_t defaultvalue)
|
||||
set_limit(cfg_obj_t **maps, const char *configname, const char *description,
|
||||
isc_resource_t resourceid, isc_resourcevalue_t defaultvalue)
|
||||
{
|
||||
const cfg_obj_t *obj = NULL;
|
||||
const char *resource;
|
||||
cfg_obj_t *obj = NULL;
|
||||
char *resource;
|
||||
isc_resourcevalue_t value;
|
||||
isc_result_t result;
|
||||
|
||||
@@ -2101,7 +2092,7 @@ set_limit(const cfg_obj_t **maps, const char *configname,
|
||||
ns_g_init ## resource)
|
||||
|
||||
static void
|
||||
set_limits(const cfg_obj_t **maps) {
|
||||
set_limits(cfg_obj_t **maps) {
|
||||
SETLIMIT("stacksize", stacksize, "stack size");
|
||||
SETLIMIT("datasize", datasize, "data size");
|
||||
SETLIMIT("coresize", coresize, "core size");
|
||||
@@ -2110,15 +2101,15 @@ set_limits(const cfg_obj_t **maps) {
|
||||
|
||||
static isc_result_t
|
||||
portlist_fromconf(dns_portlist_t *portlist, unsigned int family,
|
||||
const cfg_obj_t *ports)
|
||||
cfg_obj_t *ports)
|
||||
{
|
||||
const cfg_listelt_t *element;
|
||||
cfg_listelt_t *element;
|
||||
isc_result_t result = ISC_R_SUCCESS;
|
||||
|
||||
for (element = cfg_list_first(ports);
|
||||
element != NULL;
|
||||
element = cfg_list_next(element)) {
|
||||
const cfg_obj_t *obj = cfg_listelt_value(element);
|
||||
cfg_obj_t *obj = cfg_listelt_value(element);
|
||||
in_port_t port = (in_port_t)cfg_obj_asuint32(obj);
|
||||
|
||||
result = dns_portlist_add(portlist, family, port);
|
||||
@@ -2135,13 +2126,13 @@ load_configuration(const char *filename, ns_server_t *server,
|
||||
isc_result_t result;
|
||||
cfg_parser_t *parser = NULL;
|
||||
cfg_obj_t *config;
|
||||
const cfg_obj_t *options;
|
||||
const cfg_obj_t *views;
|
||||
const cfg_obj_t *obj;
|
||||
const cfg_obj_t *v4ports, *v6ports;
|
||||
const cfg_obj_t *maps[3];
|
||||
const cfg_obj_t *builtin_views;
|
||||
const cfg_listelt_t *element;
|
||||
cfg_obj_t *options;
|
||||
cfg_obj_t *views;
|
||||
cfg_obj_t *obj;
|
||||
cfg_obj_t *v4ports, *v6ports;
|
||||
cfg_obj_t *maps[3];
|
||||
cfg_obj_t *builtin_views;
|
||||
cfg_listelt_t *element;
|
||||
dns_view_t *view = NULL;
|
||||
dns_view_t *view_next;
|
||||
dns_viewlist_t viewlist;
|
||||
@@ -2328,7 +2319,7 @@ load_configuration(const char *filename, ns_server_t *server,
|
||||
* statement.
|
||||
*/
|
||||
{
|
||||
const cfg_obj_t *clistenon = NULL;
|
||||
cfg_obj_t *clistenon = NULL;
|
||||
ns_listenlist_t *listenon = NULL;
|
||||
|
||||
clistenon = NULL;
|
||||
@@ -2362,7 +2353,7 @@ load_configuration(const char *filename, ns_server_t *server,
|
||||
* Ditto for IPv6.
|
||||
*/
|
||||
{
|
||||
const cfg_obj_t *clistenon = NULL;
|
||||
cfg_obj_t *clistenon = NULL;
|
||||
ns_listenlist_t *listenon = NULL;
|
||||
|
||||
if (options != NULL)
|
||||
@@ -2447,7 +2438,7 @@ load_configuration(const char *filename, ns_server_t *server,
|
||||
element != NULL;
|
||||
element = cfg_list_next(element))
|
||||
{
|
||||
const cfg_obj_t *vconfig = cfg_listelt_value(element);
|
||||
cfg_obj_t *vconfig = cfg_listelt_value(element);
|
||||
view = NULL;
|
||||
|
||||
CHECK(create_view(vconfig, &viewlist, &view));
|
||||
@@ -2487,7 +2478,7 @@ load_configuration(const char *filename, ns_server_t *server,
|
||||
element != NULL;
|
||||
element = cfg_list_next(element))
|
||||
{
|
||||
const cfg_obj_t *vconfig = cfg_listelt_value(element);
|
||||
cfg_obj_t *vconfig = cfg_listelt_value(element);
|
||||
CHECK(create_view(vconfig, &viewlist, &view));
|
||||
CHECK(configure_view(view, config, vconfig, ns_g_mctx,
|
||||
&aclconfctx, ISC_FALSE));
|
||||
@@ -2591,7 +2582,7 @@ load_configuration(const char *filename, ns_server_t *server,
|
||||
"ignoring config file logging "
|
||||
"statement due to -g option");
|
||||
} else {
|
||||
const cfg_obj_t *logobj = NULL;
|
||||
cfg_obj_t *logobj = NULL;
|
||||
isc_logconfig_t *logc = NULL;
|
||||
|
||||
CHECKM(isc_logconfig_create(ns_g_lctx, &logc),
|
||||
@@ -2630,8 +2621,8 @@ load_configuration(const char *filename, ns_server_t *server,
|
||||
* compatibility.
|
||||
*/
|
||||
if (first_time) {
|
||||
const cfg_obj_t *logobj = NULL;
|
||||
const cfg_obj_t *categories = NULL;
|
||||
cfg_obj_t *logobj = NULL;
|
||||
cfg_obj_t *categories = NULL;
|
||||
|
||||
obj = NULL;
|
||||
if (ns_config_get(maps, "querylog", &obj) == ISC_R_SUCCESS) {
|
||||
@@ -2643,13 +2634,13 @@ load_configuration(const char *filename, ns_server_t *server,
|
||||
(void)cfg_map_get(logobj, "category",
|
||||
&categories);
|
||||
if (categories != NULL) {
|
||||
const cfg_listelt_t *element;
|
||||
cfg_listelt_t *element;
|
||||
for (element = cfg_list_first(categories);
|
||||
element != NULL;
|
||||
element = cfg_list_next(element))
|
||||
{
|
||||
const cfg_obj_t *catobj;
|
||||
const char *str;
|
||||
cfg_obj_t *catobj;
|
||||
char *str;
|
||||
|
||||
obj = cfg_listelt_value(element);
|
||||
catobj = cfg_tuple_get(obj, "name");
|
||||
@@ -3142,7 +3133,7 @@ end_reserved_dispatches(ns_server_t *server, isc_boolean_t all) {
|
||||
}
|
||||
|
||||
void
|
||||
ns_add_reserved_dispatch(ns_server_t *server, const isc_sockaddr_t *addr) {
|
||||
ns_add_reserved_dispatch(ns_server_t *server, isc_sockaddr_t *addr) {
|
||||
ns_dispatch_t *dispatch;
|
||||
in_port_t port;
|
||||
char addrbuf[ISC_SOCKADDR_FORMATSIZE];
|
||||
@@ -3467,29 +3458,20 @@ isc_result_t
|
||||
ns_server_refreshcommand(ns_server_t *server, char *args, isc_buffer_t *text) {
|
||||
isc_result_t result;
|
||||
dns_zone_t *zone = NULL;
|
||||
const unsigned char msg1[] = "zone refresh queued";
|
||||
const unsigned char msg2[] = "not a slave or stub zone";
|
||||
dns_zonetype_t type;
|
||||
const unsigned char msg[] = "zone refresh queued";
|
||||
|
||||
result = zone_from_args(server, args, &zone);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
return (result);
|
||||
if (zone == NULL)
|
||||
return (ISC_R_UNEXPECTEDEND);
|
||||
|
||||
type = dns_zone_gettype(zone);
|
||||
if (type == dns_zone_slave || type == dns_zone_stub) {
|
||||
dns_zone_refresh(zone);
|
||||
dns_zone_detach(&zone);
|
||||
if (sizeof(msg1) <= isc_buffer_availablelength(text))
|
||||
isc_buffer_putmem(text, msg1, sizeof(msg1));
|
||||
return (ISC_R_SUCCESS);
|
||||
}
|
||||
|
||||
|
||||
dns_zone_refresh(zone);
|
||||
dns_zone_detach(&zone);
|
||||
if (sizeof(msg2) <= isc_buffer_availablelength(text))
|
||||
isc_buffer_putmem(text, msg2, sizeof(msg2));
|
||||
return (ISC_R_FAILURE);
|
||||
if (sizeof(msg) <= isc_buffer_availablelength(text))
|
||||
isc_buffer_putmem(text, msg, sizeof(msg));
|
||||
|
||||
return (ISC_R_SUCCESS);
|
||||
}
|
||||
|
||||
isc_result_t
|
||||
@@ -3504,12 +3486,12 @@ ns_server_togglequerylog(ns_server_t *server) {
|
||||
}
|
||||
|
||||
static isc_result_t
|
||||
ns_listenlist_fromconfig(const cfg_obj_t *listenlist, const cfg_obj_t *config,
|
||||
ns_listenlist_fromconfig(cfg_obj_t *listenlist, cfg_obj_t *config,
|
||||
ns_aclconfctx_t *actx,
|
||||
isc_mem_t *mctx, ns_listenlist_t **target)
|
||||
{
|
||||
isc_result_t result;
|
||||
const cfg_listelt_t *element;
|
||||
cfg_listelt_t *element;
|
||||
ns_listenlist_t *dlist = NULL;
|
||||
|
||||
REQUIRE(target != NULL && *target == NULL);
|
||||
@@ -3523,7 +3505,7 @@ ns_listenlist_fromconfig(const cfg_obj_t *listenlist, const cfg_obj_t *config,
|
||||
element = cfg_list_next(element))
|
||||
{
|
||||
ns_listenelt_t *delt = NULL;
|
||||
const cfg_obj_t *listener = cfg_listelt_value(element);
|
||||
cfg_obj_t *listener = cfg_listelt_value(element);
|
||||
result = ns_listenelt_fromconfig(listener, config, actx,
|
||||
mctx, &delt);
|
||||
if (result != ISC_R_SUCCESS)
|
||||
@@ -3543,12 +3525,12 @@ ns_listenlist_fromconfig(const cfg_obj_t *listenlist, const cfg_obj_t *config,
|
||||
* data structure.
|
||||
*/
|
||||
static isc_result_t
|
||||
ns_listenelt_fromconfig(const cfg_obj_t *listener, const cfg_obj_t *config,
|
||||
ns_listenelt_fromconfig(cfg_obj_t *listener, cfg_obj_t *config,
|
||||
ns_aclconfctx_t *actx,
|
||||
isc_mem_t *mctx, ns_listenelt_t **target)
|
||||
{
|
||||
isc_result_t result;
|
||||
const cfg_obj_t *portobj;
|
||||
cfg_obj_t *portobj;
|
||||
in_port_t port;
|
||||
ns_listenelt_t *delt = NULL;
|
||||
REQUIRE(target != NULL && *target == NULL);
|
||||
@@ -3841,11 +3823,6 @@ ns_server_dumpdb(ns_server_t *server, char *args) {
|
||||
char *ptr;
|
||||
const char *sep;
|
||||
|
||||
/* Skip the command name. */
|
||||
ptr = next_token(&args, " \t");
|
||||
if (ptr == NULL)
|
||||
return (ISC_R_UNEXPECTEDEND);
|
||||
|
||||
dctx = isc_mem_get(server->mctx, sizeof(*dctx));
|
||||
if (dctx == NULL)
|
||||
return (ISC_R_NOMEMORY);
|
||||
@@ -3868,6 +3845,11 @@ ns_server_dumpdb(ns_server_t *server, char *args) {
|
||||
CHECKMF(isc_stdio_open(server->dumpfile, "w", &dctx->fp),
|
||||
"could not open dump file", server->dumpfile);
|
||||
|
||||
/* Skip the command name. */
|
||||
ptr = next_token(&args, " \t");
|
||||
if (ptr == NULL)
|
||||
return (ISC_R_UNEXPECTEDEND);
|
||||
|
||||
sep = (args == NULL) ? "" : ": ";
|
||||
isc_log_write(ns_g_lctx, NS_LOGCATEGORY_GENERAL,
|
||||
NS_LOGMODULE_SERVER, ISC_LOG_INFO,
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user