mirror of
https://git.hardenedbsd.org/hardenedbsd/HardenedBSD.git
synced 2025-01-22 16:44:32 +01:00
build bind-4.9.4-P1 dig in it's own directory
This commit is contained in:
parent
b433e12930
commit
9531e548b6
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=17913
@ -1,11 +1,12 @@
|
||||
# @(#)Makefile 8.1 (Berkeley) 6/6/93
|
||||
# $Id$
|
||||
|
||||
.include "${.CURDIR}/../../usr.sbin/named/Makefile.inc"
|
||||
|
||||
.PATH: ${BIND_DIR}/tools
|
||||
.PATH: ${BIND_DIR}/tools/nslookup
|
||||
.PATH: ${BIND_DIR}/man
|
||||
|
||||
PROG= dig
|
||||
MAN1= dig.1
|
||||
SRCS= dig.c debug.c list.c send.c subr.c
|
||||
|
||||
NSLOOKUP=${.CURDIR}/../../usr.sbin/nslookup
|
||||
CFLAGS+=-I${NSLOOKUP}
|
||||
.PATH: ${NSLOOKUP}
|
||||
SRCS= dig.c list.c subr.c debug.c send.c
|
||||
|
||||
.include <bsd.prog.mk>
|
||||
|
@ -1,364 +0,0 @@
|
||||
.\" $Id: dig.1,v 1.2 1994/11/19 13:12:37 ats Exp $
|
||||
.\"
|
||||
.\" ++Copyright++ 1993
|
||||
.\" -
|
||||
.\" Copyright (c) 1993
|
||||
.\" The Regents of the University of California. All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed by the University of
|
||||
.\" California, Berkeley and its contributors.
|
||||
.\" 4. Neither the name of the University nor the names of its contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
|
||||
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
|
||||
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
.\" SUCH DAMAGE.
|
||||
.\" -
|
||||
.\" Portions Copyright (c) 1993 by Digital Equipment Corporation.
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and distribute this software for any
|
||||
.\" purpose with or without fee is hereby granted, provided that the above
|
||||
.\" copyright notice and this permission notice appear in all copies, and that
|
||||
.\" the name of Digital Equipment Corporation not be used in advertising or
|
||||
.\" publicity pertaining to distribution of the document or software without
|
||||
.\" specific, written prior permission.
|
||||
.\"
|
||||
.\" THE SOFTWARE IS PROVIDED "AS IS" AND DIGITAL EQUIPMENT CORP. DISCLAIMS ALL
|
||||
.\" WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES
|
||||
.\" OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL DIGITAL EQUIPMENT
|
||||
.\" CORPORATION BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
|
||||
.\" DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM 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.
|
||||
.\" -
|
||||
.\" --Copyright--
|
||||
.\"
|
||||
.\" Distributed with 'dig' version 2.0 from University of Southern
|
||||
.\" California Information Sciences Institute (USC-ISI).
|
||||
.\"
|
||||
.\" dig.1 2.0 (USC-ISI) 8/30/90
|
||||
.\"
|
||||
.\" Man page reformatted for this release by Andrew Cherenson
|
||||
.\" (arc@sgi.com)
|
||||
.\"
|
||||
.TH DIG 1 "August 30, 1990"
|
||||
.SH NAME
|
||||
dig \- send domain name query packets to name servers
|
||||
.SH SYNOPSIS
|
||||
.B dig
|
||||
.RI [ @\fIserver\fP ]
|
||||
.I domain
|
||||
.RI [ "<query-type>" ]
|
||||
.RI [ "<query-class>" ]
|
||||
.RI [ "+<query-option>" ]
|
||||
.RI [ "\-<dig-option>" ]
|
||||
.RI [ "%comment" ]
|
||||
.SH DESCRIPTION
|
||||
\fIDig\fP (domain information groper) is a flexible command line tool
|
||||
which can be used to gather information from the Domain
|
||||
Name System servers. \fIDig\fP has two modes: simple interactive mode
|
||||
which makes a single query, and batch which executes a query for
|
||||
each in a list of several query lines. All query options are
|
||||
accessible from the command line.
|
||||
.PP
|
||||
The usual simple use of \fIdig\fP will take the form:
|
||||
.sp 1
|
||||
dig @server domain query-type query-class
|
||||
.sp 1
|
||||
where:
|
||||
.IP \fIserver\fP
|
||||
may be either a domain name or a dot-notation
|
||||
Internet address. If this optional field is omitted, \fIdig\fP
|
||||
will attempt to use the default name server for your machine.
|
||||
.sp 1
|
||||
\fBNote:\fP If a domain name is specified, this will be resolved
|
||||
using the domain name system resolver (i.e., BIND). If your
|
||||
system does not support DNS, you may \fIhave\fP to specify a
|
||||
dot-notation address. Alternatively, if there is a server
|
||||
at your disposal somewhere, all that is required is that
|
||||
/etc/resolv.conf be present and indicate where the default
|
||||
name servers reside, so that \fIserver\fP itself can be
|
||||
resolved. See
|
||||
.IR resolver (5)
|
||||
for information on /etc/resolv.conf.
|
||||
(WARNING: Changing /etc/resolv.conf will affect
|
||||
the standard resolver library and potentially several
|
||||
programs which use it.) As an option, the user may set the
|
||||
environment variable LOCALRES to name a file which is to
|
||||
be used instead of /etc/resolv.conf (LOCALRES is specific
|
||||
to the \fIdig\fP resolver and not referenced by the standard
|
||||
resolver). If the LOCALRES variable is not set or the file
|
||||
is not readable then /etc/resolv.conf will be used.
|
||||
.IP \fIdomain\fP
|
||||
is the domain name for which you are requesting information.
|
||||
See OPTIONS [-x] for convenient way to specify inverse address
|
||||
query.
|
||||
.IP \fIquery-type\fP
|
||||
is the type of information (DNS query type) that
|
||||
you are requesting. If omitted, the default is "a" (T_A = address).
|
||||
The following types are recognized:
|
||||
.sp 1
|
||||
.ta \w'hinfoXX'u +\w'T_HINFOXX'u
|
||||
.nf
|
||||
a T_A network address
|
||||
any T_ANY all/any information about specified domain
|
||||
mx T_MX mail exchanger for the domain
|
||||
ns T_NS name servers
|
||||
soa T_SOA zone of authority record
|
||||
hinfo T_HINFO host information
|
||||
axfr T_AXFR zone transfer
|
||||
(must ask an authoritative server)
|
||||
txt T_TXT arbitrary number of strings
|
||||
.fi
|
||||
.sp 1
|
||||
(See RFC 1035 for the complete list.)
|
||||
.IP \fIquery-class\fP
|
||||
is the network class requested in the query. If
|
||||
omitted, the default is "in" (C_IN = Internet).
|
||||
The following classes are recognized:
|
||||
.sp 1
|
||||
.ta \w'hinfoXX'u +\w'T_HINFOXX'u
|
||||
.nf
|
||||
in C_IN Internet class domain
|
||||
any C_ANY all/any class information
|
||||
.fi
|
||||
.sp 1
|
||||
(See RFC 1035 for the complete list.)
|
||||
.sp 1
|
||||
\fBNote:\fP
|
||||
"Any" can be used to specify a class and/or a type of
|
||||
query. \fIDig\fP will parse the first occurrence of "any"
|
||||
to mean query-type = T_ANY. To specify query-class =
|
||||
C_ANY you must either specify "any" twice, or set
|
||||
query-class using "\-c" option (see below).
|
||||
.SH OTHER OPTIONS
|
||||
.IP "%ignored-comment"
|
||||
"%" is used to included an argument that is simply not
|
||||
parsed. This may be useful if running \fIdig\fP in batch
|
||||
mode. Instead of resolving every @server-domain-name in
|
||||
a list of queries, you can avoid the overhead of doing
|
||||
so, and still have the domain name on the command line
|
||||
as a reference. Example:
|
||||
.sp 1
|
||||
dig @128.9.0.32 %venera.isi.edu mx isi.edu
|
||||
.sp 1
|
||||
.IP "\-<dig option>"
|
||||
"\-" is used to specify an option which effects the
|
||||
operation of \fIdig\fP. The following options are currently
|
||||
available (although not guaranteed to be useful):
|
||||
.RS
|
||||
.IP "\-x \fIdot-notation-address\fP"
|
||||
Convenient form to specify inverse address mapping.
|
||||
Instead of "dig 32.0.9.128.in-addr.arpa" one can
|
||||
simply "dig -x 128.9.0.32".
|
||||
.IP "\-f \fIfile\fP"
|
||||
File for \fIdig\fP batch mode. The file contains a list
|
||||
of query specifications (\fIdig\fP command lines) which
|
||||
are to be executed successively. Lines beginning
|
||||
with ';', '#', or '\\n' are ignored. Other options
|
||||
may still appear on command line, and will be in
|
||||
effect for each batch query.
|
||||
.IP "\-T \fItime\fP"
|
||||
Time in seconds between start of successive
|
||||
queries when running in batch mode. Can be used
|
||||
to keep two or more batch \fIdig\fP commands running
|
||||
roughly in sync. Default is zero.
|
||||
.IP "\-p \fIport\fP"
|
||||
Port number. Query a name server listening to a
|
||||
non-standard port number. Default is 53.
|
||||
.IP "\-P[\fIping-string\fP]"
|
||||
After query returns, execute a
|
||||
.IR ping (8)
|
||||
command
|
||||
for response time comparison. This rather
|
||||
unelegantly makes a call to the shell. The last
|
||||
three lines of statistics is printed for the
|
||||
command:
|
||||
.sp 1
|
||||
ping \-s server_name 56 3
|
||||
.sp 1
|
||||
If the optional "ping string" is present, it
|
||||
replaces "ping \-s" in the shell command.
|
||||
.IP "\-t \fIquery-type\fP"
|
||||
Specify type of query. May specify either an
|
||||
integer value to be included in the type field
|
||||
or use the abbreviated mnemonic as discussed
|
||||
above (i.e., mx = T_MX).
|
||||
.IP "\-c \fIquery-class\fP"
|
||||
Specify class of query. May specify either an
|
||||
integer value to be included in the class field
|
||||
or use the abbreviated mnemonic as discussed
|
||||
above (i.e., in = C_IN).
|
||||
.IP "\-envsav"
|
||||
This flag specifies that the \fIdig\fP environment
|
||||
(defaults, print options, etc.), after
|
||||
all of the arguments are parsed, should be saved
|
||||
to a file to become the default environment.
|
||||
Useful if you do not like the standard set of
|
||||
defaults and do not desire to include a
|
||||
large number of options each time \fIdig\fP is used.
|
||||
The environment consists of resolver state
|
||||
variable flags, timeout, and retries as well as
|
||||
the flags detailing \fIdig\fP output (see below).
|
||||
If the shell environment variable LOCALDEF is set
|
||||
to the name of a file, this is where the default
|
||||
\fIdig\fP environment is saved. If not, the file
|
||||
"DiG.env" is created in the current working directory.
|
||||
.sp 1
|
||||
\fBNote:\fP LOCALDEF is specific to the \fIdig\fP resolver,
|
||||
and will not affect operation of the standard
|
||||
resolver library.
|
||||
.sp 1
|
||||
Each time \fIdig\fP is executed, it looks for "./DiG.env"
|
||||
or the file specified by the shell environment variable
|
||||
LOCALDEF. If such file exists and is readable, then the
|
||||
environment is restored from this file
|
||||
before any arguments are parsed.
|
||||
.IP "\-envset"
|
||||
This flag only affects
|
||||
batch query runs. When "\-envset" is
|
||||
specified on a line in a \fIdig\fP batch file,
|
||||
the \fIdig\fP environment after the arguments are parsed,
|
||||
becomes the default environment for the duration of
|
||||
the batch file, or until the next line which specifies
|
||||
"\-envset".
|
||||
.IP "\-[no]stick"
|
||||
This flag only affects batch query runs.
|
||||
It specifies that the \fIdig\fP environment (as read initially
|
||||
or set by "\-envset" switch) is to be restored before each query
|
||||
(line) in a \fIdig\fP batch file.
|
||||
The default "\-nostick" means that the \fIdig\fP environment
|
||||
does not stick, hence options specified on a single line
|
||||
in a \fIdig\fP batch file will remain in effect for
|
||||
subsequent lines (i.e. they are not restored to the
|
||||
"sticky" default).
|
||||
|
||||
.RE
|
||||
.IP "+<query option>"
|
||||
"+" is used to specify an option to be changed in the
|
||||
query packet or to change \fIdig\fP output specifics. Many
|
||||
of these are the same parameters accepted by
|
||||
.IR nslookup (8).
|
||||
If an option requires a parameter, the form is as
|
||||
follows:
|
||||
.sp 1
|
||||
+keyword[=value]
|
||||
.sp 1
|
||||
Most keywords can be abbreviated. Parsing of the "+"
|
||||
options is very simplistic \(em a value must not be
|
||||
separated from its keyword by white space. The following
|
||||
keywords are currently available:
|
||||
.sp 1
|
||||
.nf
|
||||
.ta \w'domain=NAMEXX'u +\w'(deb)XXX'u
|
||||
Keyword Abbrev. Meaning [default]
|
||||
|
||||
[no]debug (deb) turn on/off debugging mode [deb]
|
||||
[no]d2 turn on/off extra debugging mode [nod2]
|
||||
[no]recurse (rec) use/don't use recursive lookup [rec]
|
||||
retry=# (ret) set number of retries to # [4]
|
||||
time=# (ti) set timeout length to # seconds [4]
|
||||
[no]ko keep open option (implies vc) [noko]
|
||||
[no]vc use/don't use virtual circuit [novc]
|
||||
[no]defname (def) use/don't use default domain name [def]
|
||||
[no]search (sea) use/don't use domain search list [sea]
|
||||
domain=NAME (do) set default domain name to NAME
|
||||
[no]ignore (i) ignore/don't ignore trunc. errors [noi]
|
||||
[no]primary (pr) use/don't use primary server [nopr]
|
||||
[no]aaonly (aa) authoritative query only flag [noaa]
|
||||
[no]sort (sor) sort resource records [nosor]
|
||||
[no]cmd echo parsed arguments [cmd]
|
||||
[no]stats (st) print query statistics [st]
|
||||
[no]Header (H) print basic header [H]
|
||||
[no]header (he) print header flags [he]
|
||||
[no]ttlid (tt) print TTLs [tt]
|
||||
[no]cl print class info [nocl]
|
||||
[no]qr print outgoing query [noqr]
|
||||
[no]reply (rep) print reply [rep]
|
||||
[no]ques (qu) print question section [qu]
|
||||
[no]answer (an) print answer section [an]
|
||||
[no]author (au) print authoritative section [au]
|
||||
[no]addit (ad) print additional section [ad]
|
||||
pfdef set to default print flags
|
||||
pfmin set to minimal default print flags
|
||||
pfset=# set print flags to #
|
||||
(# can be hex/octal/decimal)
|
||||
pfand=# bitwise and print flags with #
|
||||
pfor=# bitwise or print flags with #
|
||||
.fi
|
||||
.sp 1
|
||||
The retry and time options affect the retransmission strategy used by resolver
|
||||
library when sending datagram queries. The algorithm is as follows:
|
||||
.sp 1
|
||||
.in +5n
|
||||
.nf
|
||||
for i = 0 to retry \- 1
|
||||
for j = 1 to num_servers
|
||||
send_query
|
||||
wait((time * (2**i)) / num_servers)
|
||||
end
|
||||
end
|
||||
.fi
|
||||
.in -5n
|
||||
.sp 1
|
||||
(Note: \fIdig\fP always uses a value of 1 for num_servers.)
|
||||
.SH DETAILS
|
||||
\fIDig\fP once required a slightly modified version of the BIND
|
||||
.IR resolver (3)
|
||||
library. BIND's resolver has (as of BIND 4.9) been augmented to work
|
||||
properly with \fIDig\fP. Essentially, \fIDig\fP is a straight-forward
|
||||
(albeit not pretty) effort of parsing arguments and setting appropriate
|
||||
parameters. \fIDig\fP uses resolver routines res_init(), res_mkquery(),
|
||||
res_send() as well as accessing _res structure.
|
||||
.SH FILES
|
||||
.ta \w'/etc/resolv.confXX'u
|
||||
/etc/resolv.conf initial domain name and name server
|
||||
\./DiG.env default save file for default options
|
||||
.br
|
||||
addresses
|
||||
.SH ENVIRONMENT
|
||||
LOCALRES file to use in place of /etc/resolv.conf
|
||||
.br
|
||||
LOCALDEF default environment file
|
||||
.SH AUTHOR
|
||||
Steve Hotz
|
||||
hotz@isi.edu
|
||||
.SH ACKNOWLEDGMENTS
|
||||
\fIDig\fP uses functions from
|
||||
.IR nslookup (8)
|
||||
authored by Andrew Cherenson.
|
||||
.SH BUGS
|
||||
\fIDig\fP has a serious case of "creeping featurism" -- the result of
|
||||
considering several potential uses during it's development. It would
|
||||
probably benefit from a rigorous diet. Similarly, the print flags
|
||||
and granularity of the items they specify make evident their
|
||||
rather ad hoc genesis.
|
||||
.PP
|
||||
\fIDig\fP does not consistently exit nicely (with appropriate status)
|
||||
when a problem occurs somewhere in the resolver (NOTE: most of the common
|
||||
exit cases are handled). This is particularly annoying when running in
|
||||
batch mode. If it exits abnormally (and is not caught), the entire
|
||||
batch aborts; when such an event is trapped, \fIdig\fP simply
|
||||
continues with the next query.
|
||||
.SH SEE ALSO
|
||||
named(8), resolver(3), resolver(5), nslookup(8)
|
1209
usr.bin/dig/dig.c
1209
usr.bin/dig/dig.c
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user