Compare commits

..
Author SHA1 Message Date
cvs2svn a964be6d2c This commit was manufactured by cvs2svn to create tag
'RELENG_4_1_0_RELEASE'.
2000-07-26 21:12:35 +00:00
3606 changed files with 117066 additions and 271763 deletions

No files matched your search

+3 -3
View File
@@ -7,8 +7,6 @@
# upgrades.
# installworld - Install everything built by "buildworld".
# world - buildworld + installworld.
# buildkernel - Rebuild the kernel and the kernel-modules.
# installkernel - Install the kernel and the kernel-modules.
# update - Convenient way to update your source tree (cvs).
# upgrade - Upgrade a.out (2.2.x/3.0) system to the new ELF way
# most - Build user commands, no libraries or include files.
@@ -100,6 +98,7 @@ ${TGTS}: upgrade_checks
# Set a reasonable default
.MAIN: all
STARTTIME!= LC_TIME=C date
#
# world
#
@@ -108,7 +107,7 @@ ${TGTS}: upgrade_checks
#
world: upgrade_checks
@echo "--------------------------------------------------------------"
@echo ">>> ${OBJFORMAT} make world started on `LC_TIME=C date`"
@echo ">>> ${OBJFORMAT} make world started on ${STARTTIME}"
@echo "--------------------------------------------------------------"
.if target(pre-world)
@echo
@@ -128,6 +127,7 @@ world: upgrade_checks
.endif
@echo
@echo "--------------------------------------------------------------"
@echo ">>> ${OBJFORMAT} make world started on ${STARTTIME}"
@echo ">>> ${OBJFORMAT} make world completed on `LC_TIME=C date`"
@echo "--------------------------------------------------------------"
+34 -56
View File
@@ -14,10 +14,6 @@
# -DNOINFO do not make or install info files
# -DNOLIBC_R do not build libc_r.
# -DNO_FORTRAN do not build g77 and related libraries.
# -DNO_KERNELCONFIG do not run config in ${MAKE} buildkernel
# -DNO_KERNELDEPEND do not run ${MAKE} depend in ${MAKE} buildkernel
# -DNO_PORTSUPDATE do not update ports in ${MAKE} update
# -DNO_DOCUPDATE do not update doc in ${MAKE} update
# LOCAL_DIRS="list of dirs" to add additional dirs to the SUBDIR list
#
@@ -113,9 +109,6 @@ CLEANDIR= cleandir
SUP?= cvsup
SUPFLAGS?= -g -L 2 -P -
.if defined(SUPHOST)
SUPFLAGS+= -h ${SUPHOST}
.endif
MAKEOBJDIRPREFIX?= /usr/obj
TARGET_ARCH?= ${MACHINE_ARCH}
@@ -130,28 +123,24 @@ WORLDTMP= ${OBJTREE}${.CURDIR}/${BUILD_ARCH}
STRICTTMPPATH= ${WORLDTMP}/usr/sbin:${WORLDTMP}/usr/bin:${WORLDTMP}/usr/games
TMPPATH= ${STRICTTMPPATH}:${PATH}
TMPDIR?= /tmp
TMPPID!= echo $$$$
INSTALLTMP= ${TMPDIR}/install.${TMPPID}
#
# Building a world goes through the following stages
#
# 1. bootstrap-tool stage [BMAKE]
# bootstrap-tool stage [BMAKE]
# This stage is responsible for creating programs that
# are needed for backward compatibility reasons. They
# are not built as cross-tools.
# 2. build-tool stage [TMAKE]
# build-tool stage [TMAKE]
# This stage is responsible for creating the object
# tree and building any tools that are needed during
# the build process.
# 3. cross-tool stage [XMAKE]
# cross-tool stage [XMAKE]
# This stage is responsible for creating any tools that
# are needed for cross-builds. A cross-compiler is one
# of them.
# 4. world stage [WMAKE]
# world stage [WMAKE]
# This stage actually builds the world.
# 5. install stage (optional) [IMAKE]
# install stage (optional) [IMAKE]
# This stage installs a previously built world.
#
@@ -194,8 +183,7 @@ WMAKEENV= ${CROSSENV} \
WMAKE= ${WMAKEENV} ${MAKE} -f Makefile.inc1
# install stage
IMAKEENV= ${CROSSENV} \
PATH=${STRICTTMPPATH}:${INSTALLTMP}
IMAKEENV= ${CROSSENV}
IMAKE= ${IMAKEENV} ${MAKE} -f Makefile.inc1
USRDIRS= usr/bin usr/lib/compat/aout usr/games usr/libdata/ldscripts \
@@ -215,6 +203,18 @@ INCDIRS= arpa g++/std objc protocols readline rpc rpcsvc openssl \
# success, regardless of how old your existing system is.
#
buildworld:
.if !defined(NOSECURE) && !defined(NO_OPENSSL) && exists(${.CURDIR}/secure) && \
(!defined(USA_RESIDENT) || (${USA_RESIDENT} != NO && \
${USA_RESIDENT} != YES))
@echo
@echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
@echo ">>> You must define the value of USA_RESIDENT as 'YES' or"
@echo ">>> 'NO' as appropriate, in the environment or /etc/make.conf"
@echo ">>> before building can proceed."
@echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
@/usr/bin/false
.endif
@echo
@echo "--------------------------------------------------------------"
@echo ">>> Rebuilding the temporary build tree"
@@ -297,14 +297,7 @@ everything:
# Installs everything compiled by a 'buildworld'.
#
installworld:
mkdir -p ${INSTALLTMP}
for prog in [ awk cat chflags chown date echo egrep find grep \
install ln make makewhatis mtree mv perl rm sed sh sysctl \
test true uname wc zic; do \
cp `which $$prog` ${INSTALLTMP}; \
done
cd ${.CURDIR}; ${IMAKE} reinstall
rm -rf ${INSTALLTMP}
#
# reinstall
@@ -386,20 +379,15 @@ buildkernel:
.for _kernel in ${BUILDKERNELS}
@echo "===> ${_kernel}"
mkdir -p ${KRNLOBJDIR}
.if !defined(NO_KERNELCONFIG)
cd ${KRNLCONFDIR}; \
PATH=${TMPPATH} \
config ${CONFIGARGS} -d ${KRNLOBJDIR}/${_kernel} ${_kernel}
.endif
cd ${KRNLOBJDIR}/${_kernel}; \
MAKESRCPATH=${KRNLSRCDIR}/dev/aic7xxx/aicasm \
${MAKE} -f ${KRNLSRCDIR}/dev/aic7xxx/aicasm/Makefile
.if !defined(NO_KERNELDEPEND)
cd ${KRNLOBJDIR}/${_kernel}; \
${WMAKEENV} MACHINE=${MACHINE} ${MAKE} KERNEL=kernel depend
.endif
cd ${KRNLOBJDIR}/${_kernel}; \
${WMAKEENV} MACHINE=${MACHINE} ${MAKE} KERNEL=kernel all
MAKESRCPATH=${KRNLSRCDIR}/dev/aic7xxx \
${MAKE} -f ${KRNLSRCDIR}/dev/aic7xxx/Makefile; \
${WMAKEENV} MACHINE=${MACHINE} KERNEL=${_kernel} \
${MAKE} depend; \
${WMAKEENV} MACHINE=${MACHINE} KERNEL=${_kernel} ${MAKE} all
.endfor
#
@@ -409,7 +397,8 @@ buildkernel:
#
installkernel:
cd ${KRNLOBJDIR}/${INSTALLKERNEL}; \
${CROSSENV} MACHINE=${MACHINE} ${MAKE} KERNEL=kernel install
${IMAKEENV} MACHINE=${MACHINE} KERNEL=${INSTALLKERNEL} \
${MAKE} install
#
# update
@@ -431,12 +420,9 @@ update:
.if defined(SUPFILE2)
@${SUP} ${SUPFLAGS} ${SUPFILE2}
.endif
.if defined(PORTSSUPFILE) && !defined(NO_PORTSUPDATE)
.if defined(PORTSSUPFILE)
@${SUP} ${SUPFLAGS} ${PORTSSUPFILE}
.endif
.if defined(DOCSUPFILE) && !defined(NO_DOCUPDATE)
@${SUP} ${SUPFLAGS} ${DOCSUPFILE}
.endif
.endif
.if defined(CVS_UPDATE)
@echo "--------------------------------------------------------------"
@@ -536,13 +522,9 @@ _libkrb5= kerberos5/lib/libroken kerberos5/lib/libasn1 kerberos5/lib/libhdb \
kerberos5/lib/libsl
.endif
.if !defined(NOPERL)
_perl= gnu/usr.bin/perl
.endif
build-tools:
.for _tool in bin/sh ${_games} gnu/usr.bin/cc/cc_tools ${_fortran} \
${_libroken4} ${_libkrb5} lib/libncurses ${_share} ${_perl}
${_libroken4} ${_libkrb5} lib/libncurses ${_share}
cd ${.CURDIR}/${_tool}; ${MAKE} build-tools
.endfor
@@ -635,7 +617,6 @@ includes:
.if exists(${.CURDIR}/lib/csu/${MACHINE_ARCH})
cd ${.CURDIR}/lib/csu/${MACHINE_ARCH}; ${MAKE} beforeinstall
.endif
cd ${.CURDIR}/gnu/lib/csu; ${MAKE} beforeinstall
cd ${.CURDIR}/lib/libalias; ${MAKE} beforeinstall
cd ${.CURDIR}/lib/libatm; ${MAKE} beforeinstall
cd ${.CURDIR}/lib/libdevstat; ${MAKE} beforeinstall
@@ -644,7 +625,6 @@ includes:
cd ${.CURDIR}/lib/libcam; ${MAKE} beforeinstall
cd ${.CURDIR}/lib/libdisk; ${MAKE} beforeinstall
cd ${.CURDIR}/lib/libedit; ${MAKE} beforeinstall
cd ${.CURDIR}/lib/libfetch; ${MAKE} beforeinstall
cd ${.CURDIR}/lib/libftpio; ${MAKE} beforeinstall
cd ${.CURDIR}/lib/libkvm; ${MAKE} beforeinstall
cd ${.CURDIR}/lib/libmd; ${MAKE} beforeinstall
@@ -675,7 +655,7 @@ includes:
#
# The following dependencies exist between the libraries:
#
# lib*: csu libgcc_pic
# lib*: csu
# libatm: libmd
# libcrypt: libmd
# libdialog: libncurses
@@ -683,8 +663,8 @@ includes:
# libg++: libm
# libkrb: libcrypt
# libopie: libmd
# libpam: libcom_err libcrypt libcrypto libkrb libopie libradius \
# libskey libtacplus libutil libz libssh
# libpam: libcom_err libcrypt libcrypto libgcc_pic libkrb libradius libskey \
# libtacplus libutil libz libssh
# libradius: libmd
# libreadline: libncurses
# libskey: libcrypt libmd
@@ -696,7 +676,7 @@ includes:
#
# gnu/lib: lib/libm lib/libncurses
# kerberosIV/lib kerberos5/lib: lib/libcrypt
# lib/libpam: secure/lib/libcrypto kerberosIV/lib/libkrb \
# lib/libpam: secure/lib/libcrypto kerberosIV/lib/libkrb gnu/lib/libgcc \
# secure/lib/libssh lib/libz
# secure/lib: lib/libmd
#
@@ -735,11 +715,9 @@ _libkeycap= usr.sbin/pcvt/keycap
.endif
libraries:
.for _lib in ${_csu} gnu/lib/csu gnu/lib/libgcc lib/libmd lib/libcrypt \
${_secure_lib} ${_kerberosIV_lib} \
${_kerberos5_lib} lib/libcom_err ${_libm} lib/libncurses \
lib/libopie lib/libradius lib/libskey lib/libtacplus lib/libutil \
lib/libz lib gnu/lib \
.for _lib in ${_csu} lib/libmd lib/libcrypt ${_secure_lib} ${_kerberosIV_lib} \
${_kerberos5_lib} gnu/lib/libgcc lib/libcom_err ${_libm} lib/libncurses \
lib/libradius lib/libskey lib/libtacplus lib/libutil lib/libz lib gnu/lib \
${_libperl} usr.bin/lex/lib ${_libkeycap}
.if exists(${.CURDIR}/${_lib})
cd ${.CURDIR}/${_lib}; \
+7 -12
View File
@@ -11,19 +11,14 @@ The Makefile in this directory supports a number of targets for
building components (or all) of the FreeBSD source tree, the most
commonly used one being ``world'', which rebuilds and installs
everything in the FreeBSD system from the source tree except the
kernel, the kernel-modules and the contents of /etc. The
``buildkernel'' and ``installkernel'' targets build and install
the kernel and the modules (see below). Please see the top of
the Makefile in this directory for more information on the
standard build targets and compile-time flags.
kernel and the contents of /etc. Please see the top of the Makefile
in this directory for more information on the standard build targets
and compile-time flags.
Building a kernel is a somewhat more involved process, documentation
for which can be found at:
Building a kernel with config(8) is a somewhat more involved process,
documentation for which can be found at:
http://www.freebsd.org/handbook/kernelconfig.html
And in the config(8) man page.
Note: If you want to build and install the kernel with the
``buildkernel'' and ``installkernel'' targets, you have to build
world before. More information is available in the handbook.
The sample kernel configuration files reside in the sys/i386/conf
sub-directory (assuming that you've installed the kernel sources), the
@@ -40,7 +35,7 @@ bin System/User commands.
contrib Packages contributed by 3rd parties.
crypto Cryptography stuff (see crypto/README).
crypto Export controlled stuff (see crypto/README).
etc Template files for /etc
@@ -61,7 +56,7 @@ release Release building Makefile & associated tools.
sbin System commands.
secure Cryptographic libraries and commands.
secure DES and DES-related utilities - NOT FOR EXPORT!
share Shared resources.
+21 -119
View File
@@ -6,79 +6,8 @@ chronology since 4.0 was released is included, followed by the common
items quick how-tos, followed by entries for versions of -current
prior to 4.0 Release.
20001120:
FreeBSD 4.2 RELEASE.
20001020:
****************************** WARNING ******************************
Sendmail has been updated.
****************************** WARNING ******************************
o mail.local(8) is no longer installed as a set-user-id binary.
o sendmail(8) is now built with STARTTLS support unless NO_OPENSSL
is set.
o The default /etc/mail/sendmail.cf disables the SMTP EXPN and VRFY
commands.
o Now using sendmail's version of vacation(1).
o The sendmail cf building tools (contrib/sendmail/cf) are installed
in /usr/share/sendmail/cf.
o sendmail.cw changed to local-host-names
More details can be found at
http://people.freebsd.org/~imp/UPDATING/sendmail-20001010
20001009:
The ports tree's new layout is in place. Be sure to update
your entire ports tree, or you will have problems.
20001006:
The perl build procedure no longer installs miniperl, nor uses
the installed miniperl. It is recommended that you delete
/usr/bin/miniperl.
20000925:
FreeBSD 4.1.1 RELEASE.
20000907:
Changes to libkvm requires a recompile of the usual suspects.
(find /usr/src -name Makefile | xargs egrep -l LIBKVM)
This means that your world must match your kernel around this
point.
20000904:
A new issue with the sendmail upgrade has come to light.
/etc/aliases has moved to /etc/mail/aliases. Mergemaster will
incorrectly install the default aliases in /etc/mail rather than
move the old one from /etc. So you'll need to manually move the
file, create a symbolic link, remove the old /etc/aliases.db and
run newaliases. For safety sake, you should stop sendmail
while doing this and run the upgrade when locally sourced email
is not likely to be generated.
20000827:
sendmail has been updated from 8.9.3 to 8.11.0. Some of the more
visible changes that may immediately affect your configuration
include:
- New default file locations from src/contrib/sendmail/cf/README
- newaliases limited to root and trusted users
- MSA port (587) turned on by default
- New queue file naming system so can't go from 8.11 -> 8.9
- FEATURE(`rbl') renamed to FEATURE(`dnsbl')
- FEATURE(`nullclient') is more full featured
- FEATURE(`nouucp') requires an argument: `reject' or `nospecial'
- mail.local FreeBSD-only -b option changed to -B
- See src/contrib/sendmail/RELEASE_NOTES for more info
20000803:
The "installkernel" target has changed slightly. Now even if
you override KERNEL e.g. 'make installkernel KERNEL=MYKERNEL'
it will install the MYKERNEL file (built with the buildkernel
target) as /kernel rather than /MYKERNEL. Those who have
updated their /boot/loader.conf files to point to /MYKERNEL
should remove that entry or perform manual rename of /kernel
to /MYKERNEL.
20000724:
FreeBSD 4.1 RELEASE
FreeBSD 4.1 Released on or about this date.
20000711:
If you use CVSUP or CTM to get CVS trees, AND you used to get
@@ -91,12 +20,6 @@ prior to 4.0 Release.
If you are merely a mirror, or don't answer yes to each of the
clauses above, you needn't worry.
20000707:
We started building modules here. IF you don't wish to
follow the documented proceedure for building kernels, then
you'll have to install new mk files from src/share/mk, or
define NO_MODULES.
20000706:
Binutils were updated. In order to build a kernel after this
date, you must follow the updating procedure for building
@@ -128,12 +51,17 @@ COMMON ITEMS:
-----------------
cd /usr/src
# If you have not already done so, please buildworld here
# You will also need to update your config file to 4.x. Usually
# people tend to start with GENERIC from 4.x and hack from there.
# You will also need to update your config file to 4.0. Usually
# people tend to start with GENERIC from 4.0 and hack from there.
make buildkernel KERNEL=<YOUR_KERNEL_HERE>
make installkernel KERNEL=<YOUR_KERNEL_HERE>
# Verify that the new kernel works, it will be installed as
# /kernel
# /YOUR_KERNEL_HERE
chflags noschg /kernel
chflags noschg /YOUR_KERNEL_HERE
mv /kernel /kernel.old
mv /YOUR_KERNEL_HERE /kernel
chflags schg /kernel
To rebuild disk /dev entries
----------------------------
@@ -152,21 +80,15 @@ COMMON ITEMS:
Except when it doesn't work :-)
To update from 3.x to 4.x stable
To update from 3.x to 4.0 stable
--------------------------------
***********************************************************
READ -STABLE ARCHIVES FOR THE LAST WEEK OR TWO BEFORE
STARTING THIS PROCESS. UPDATING MAY LAG BEHIND A LITTLE
A GOTCHAS ARE OFTEN REPORTED IN [email protected]
BEFORE BEING INCLUDED HERE. IF YOU ARE GOING TO DO REMOTE
MACHINES, MAKE SURE THAT THE EXACT VERSION YOU ARE UPDATING
THEM TO WORKS ON LOCAL MACHINES BEFORE PROCEEDING.
***********************************************************
<see notes below> [3]
cd /usr/src
<see notes below> [2]
make buildworld
<follow directions to build/install a kernel>
cd /usr/src/sys/modules
make install
cd /usr/src/sbin/mknod
make install
<follow rebuild disk /dev entries above> [1]
@@ -176,51 +98,31 @@ COMMON ITEMS:
cd gnu/usr.bin/texinfo/install-info
make install
cd ../../../..
ldconfig -R /usr/obj/usr/src/lib/libc
make installworld [5]
mergemaster [4]
reboot
<multi-user>
[1] You may need to switch from wd to ad ala 19991210. In
addition, you should disable any third party modules such as
vmware so that you don't crash your system on reboot.
[1] You may need to switch from wd to ad ala 19991210
[2] If you have any of the following in your /etc/make.conf,
please comment them out before following these instructions
and then do a make buildworld + make installworld after you
are back to <multi-user> above:
MAKE_KERBEROS4
[3] Update to 4.x-stable sources. Make sure that you get all
[3] Update to 4.0-stable sources. Make sure that you get all
the parts. If you are using cvsup files that are older than a
couple of months, be sure they have all the components listed
in /usr/share/examples/cvsup. Crypto and secure are now
required.
[4] This step is optional, but is generally a good idea. If
you wish to use many of the new features in 4.x, you must do
you wish to use many of the new features in 4.0, you must do
this anyway.
To update from 4.0-RELEASE or later to the most current
4.x-STABLE
----------
make buildworld
make buildkernel KERNEL=YOUR_KERNEL_HERE
make installkernel KERNEL=YOUR_KERNEL_HERE
reboot (in single user) [1]
make installworld
mergemaster
reboot
[1] You can often get away without doing this step as the
system will be properly updated. During the running of the
installworld, however, system components may break and other
oddities may happen. Don't do this on systems that aren't
otherwise quiet as unpredictable results may happen. If in
doubt, reboot into single user. For remote installs, keep
a separate kernel around and use a serial console if at all
possible.
[5] If you get warnings from ld-elf.so that it cannot load
libc.so, run 'ldconfig -R /usr/obj/usr/src/lib/libc' and repeat
the installworld target.
What follows are older entries for those people upgrading from earlier
versions of -stable/-current.
versions of -stable.
20000308:
The binary interface of perl to its modules changed. You
@@ -611,7 +513,7 @@ versions of -stable/-current.
o sio no longer supports pnp nor pccard. This will be corrected,
but the new pccard code needs to be completed.
o Some of the sound drivers broke for some people. It seems
inconsistent as to who/what/when/where things broke.
inconsistant as to who/what/when/where things broke.
o Duplicate device entries in your config do not work. Previously
they were silently ignored. psm0 seems to be the most common
duplicate choice, although some reports have come in from people
@@ -837,7 +739,7 @@ http://www.freebsd.org/cgi/getmsg.cgi?fetch=827400+0+current/freebsd-current
FORMAT:
This file contains a list, in reverse chronologocal order, of major
breakages in tracking -stable. Not all things will be listed here,
breakages in tracking -current. Not all things will be listed here,
and it only starts on November 18, 1998. If you have an earlier
version of FreeBSD, you are on your own to get to November 18, 1998.
+1 -1
View File
@@ -34,7 +34,7 @@ SUBDIR= cat \
SUBDIR+=csh
.endif
.if !defined(NO_SENDMAIL) && !defined(NOUUCP)
.if !defined(NO_SENDMAIL)
SUBDIR+=rmail
.endif
+44 -70
View File
@@ -58,7 +58,7 @@ The options are as follows:
.Bl -tag -width indent
.It Fl f Ar changer
Use the device
.Ar changer
.Pa changer
rather than the default device
.Pa /dev/ch0 .
.El
@@ -69,27 +69,20 @@ to the desired changer device.
.Pp
A medium changer apparatus is made up of
.Em elements .
There are five element types:
There are four element types:
.Em picker
(medium transport),
.Em slot
(storage),
.Em portal
(import/export),
(import/export), and
.Em drive
(data transfer), and
.Em voltag
(select by volume identifier). The
.Em voltag
pseudo-element type allows the selection of tapes by their volume tag
(typically a barcode on the tape).
.Pp
In this command description, the shorthand
(data transfer). In this command description, the shorthand
.Em ET
will be used to represent an element type, and
.Em EU
will be used to represent an element unit.
For example, to represent the first robotic arm in the changer, the
will be used to represent an element unit. For example, to represent
the first robotic arm in the changer, the
.Em ET
would be
.Dq picker
@@ -100,92 +93,82 @@ would be
.Pp
.Sh SUPPORTED COMMANDS
.Bl -tag -width indent
.It Ic move Xo
.It Xo Nm move
.Ar <from ET> <from EU> <to ET> <to EU>
.Op Cm inv
.Op Ar inv
.Xc
Move the media unit from
.Ar <from ET/EU>
.Pa <from ET/EU>
to
.Ar <to ET/EU> .
.Pa <to ET/EU> .
If the optional modifier
.Cm inv
.Pa inv
is specified, the media unit will be inverted before insertion.
.It Ic exchange Xo
.It Xo Nm exchange
.Ar <src ET> <src EU> <dst1 ET> <dst1 EU>
.Op Ar <dst2 ET> <dst2 ET>
.Op Cm inv1
.Op Cm inv2
.Op Ar inv1
.Op Ar inv2
.Xc
Perform a media unit exchange operation. The media unit in
.Ar <src ET/EU>
.Pa <src ET/EU>
is moved to
.Ar <dst1 ET/EU>
.Pa <dst1 ET/EU>
and the media unit previously in
.Ar <dst1 ET/EU>
.Pa <dst1 ET/EU>
is moved to
.Ar <dst2 ET/EU> .
.Pa <dst2 ET/EU> .
In the case of a simple exchange,
.Ar <dst2 ET/EU>
.Pa <dst2 ET/EU>
is omitted and the values
.Ar <src ET/EU>
.Pa <src ET/EU>
are used in their place.
The optional modifiers
.Cm inv1
.Pa inv1
and
.Cm inv2
.Pa inv2
specify whether the media units are to be inverted before insertion into
.Ar <dst1 ET/EU>
.Pa <dst1 ET/EU>
and
.Ar <dst2 ET/EU>
.Pa <dst2 ET/EU>
respectively.
.Pp
Note that not all medium changers support the
.Ic exchange
operation; the changer must have multiple free pickers or emulate
multiple free pickers with transient storage.
.It Ic return Xo
.Ar <from ET> <from EU>
.Xc
Return the media unit to its source element.
This command will query the status of the specified media unit, and
will move it to the element specified in its source attribute.
This is a convenient way to return media from a drive or portal
to its previous element in the changer.
.Pp
.It Ic position Xo
.It Xo Nm position
.Ar <to ET> <to EU>
.Op Cm inv
.Op Ar inv
.Xc
Position the picker in front of the element described by
.Ar <to ET/EU> .
.Pa <to ET/EU> .
If the optional modifier
.Cm inv
.Pa inv
is specified, the media unit will be inverted before insertion.
.Pp
Note that not all changers behave as expected when issued this command.
.It Ic params
.It Nm params
Report the number of slots, drives, pickers, and portals in the changer,
and which picker unit the changer is currently configured to use.
.It Ic getpicker
.It Nm getpicker
Report which picker unit the changer is currently configured to use.
.It Ic setpicker Xo
.It Xo Nm setpicker
.Ar <unit>
.Xc
Configure the changer to use picker
.Ar <unit> .
.Pa <unit> .
.Pp
.It Ic ielem Xo
.Op Ar <timeout>
.It Xo Nm ielem
.Op Pa <timeout>
.Xc
Perform an
.Em INITIALIZE ELEMENT STATUS
Perform an \fBINITIALIZE ELEMENT STATUS\fR
operation on the changer. The optional
.Ar <timeout>
.Pa <timeout>
parameter may be given to specify a timeout in seconds for the
operations. This may be used if the operation takes unusually long
because of buggy firmware or the like.
.It Ic voltag Xo
.It Xo Nm voltag
.Op Fl fca
.Ar <ET>
.Ar <EU>
@@ -212,18 +195,17 @@ volume tag information defined.
The command works with the primary volume tag or, if the
.Fl a
flag is given, with the alternate volume tag.
.It Ic status Xo
.It Xo Nm status
.Op Fl vVsSbIa
.Op Ar <type>
.Xc
Report the status of all elements in the changer. If
.Ar <type>
.Pa <type>
is specified, report the status of all elements of type
.Ar <type> .
.Pa <type> .
.It Fl v
Print the primary volume tag for each loaded medium, if any. The volume
tag is printed as
.Dq <LABEL:SERIAL> .
tag is printed as \fB<LABEL:SERIAL>\fR.
.It Fl V
Print the alternate volume tag for each loaded medium, if any.
.It Fl s
@@ -262,14 +244,9 @@ Element supports receiving media (importing) from an outside human operator.
.Pp
.Sh EXAMPLES
.Bl -tag -width indent
.It Li chio move slot 3 drive 0
.It Nm chio move slot 3 drive 0
Move the media in slot 3 (fourth slot) to drive 0 (first drive).
.It Li chio move voltag VOLUME01 drive 0
Move the media with the barcode VOLUME01 to drive 0 (first drive).
.It Li chio return drive 0
Remove the tape from drive 0 (first drive) and return it to its original
location in the rack.
.It Li chio setpicker 2
.It Nm chio setpicker 2
Configure the changer to use picker 2 (third picker) for operations.
.El
.Sh FILES
@@ -288,7 +265,4 @@ program and SCSI changer driver were written by
for And Communications, http://www.and.com/.
.br
Additional work by
.An Hans Huebner
.Aq [email protected]
and Steve Gunn
.Aq [email protected]
.An Hans Huebner Aq [email protected]
+10 -274
View File
@@ -32,7 +32,6 @@
*/
/*
* Additional Copyright (c) 1997, by Matthew Jacob, for NASA/Ames Research Ctr.
* Addidional Copyright (c) 2000, by C. Stephen Gunn, Waterspout Communications
*/
#ifndef lint
@@ -55,6 +54,7 @@ static const char rcsid[] =
#include "pathnames.h"
extern char *__progname; /* from crt0.o */
extern int optreset; /* from getopt.o */
static void usage __P((void));
static void cleanup __P((void));
@@ -65,9 +65,6 @@ static int parse_special __P((char *));
static int is_special __P((char *));
static const char *bits_to_string __P((int, const char *));
static void find_element __P((char *, u_int16_t *, u_int16_t *));
static struct changer_element_status *get_element_status __P((u_int16_t, u_int16_t));
static int do_move __P((char *, int, char **));
static int do_exchange __P((char *, int, char **));
static int do_position __P((char *, int, char **));
@@ -76,20 +73,14 @@ static int do_getpicker __P((char *, int, char **));
static int do_setpicker __P((char *, int, char **));
static int do_status __P((char *, int, char **));
static int do_ielem __P((char *, int, char **));
static int do_return __P((char *, int, char **));
static int do_voltag __P((char *, int, char **));
#ifndef CHET_VT
#define CHET_VT 10 /* Completely Arbitrary */
#endif
/* Valid changer element types. */
const struct element_type elements[] = {
{ "drive", CHET_DT },
{ "picker", CHET_MT },
{ "portal", CHET_IE },
{ "slot", CHET_ST },
{ "voltag", CHET_VT }, /* Select tapes by barcode */
{ NULL, 0 },
};
@@ -103,7 +94,6 @@ const struct changer_command commands[] = {
{ "position", do_position },
{ "setpicker", do_setpicker },
{ "status", do_status },
{ "return", do_return },
{ "voltag", do_voltag },
{ NULL, 0 },
};
@@ -206,24 +196,14 @@ do_move(cname, argc, argv)
cmd.cm_fromtype = parse_element_type(*argv);
++argv; --argc;
/* Check for voltag virtual type */
if (CHET_VT == cmd.cm_fromtype) {
find_element(*argv, &cmd.cm_fromtype, &cmd.cm_fromunit);
} else {
/* <from EU> */
cmd.cm_fromunit = parse_element_unit(*argv);
}
/* <from EU> */
cmd.cm_fromunit = parse_element_unit(*argv);
++argv; --argc;
/* <to ET> */
cmd.cm_totype = parse_element_type(*argv);
++argv; --argc;
/* Check for voltag virtual type, and report error */
if (CHET_VT == cmd.cm_totype)
errx(1,"%s: voltag only makes sense as an element source",
cname);
/* <to EU> */
cmd.cm_tounit = parse_element_unit(*argv);
++argv; --argc;
@@ -287,26 +267,16 @@ do_exchange(cname, argc, argv)
cmd.ce_srctype = parse_element_type(*argv);
++argv; --argc;
/* Check for voltag virtual type */
if (CHET_VT == cmd.ce_srctype) {
find_element(*argv, &cmd.ce_srctype, &cmd.ce_srcunit);
} else {
/* <from EU> */
cmd.ce_srcunit = parse_element_unit(*argv);
}
/* <src EU> */
cmd.ce_srcunit = parse_element_unit(*argv);
++argv; --argc;
/* <dst1 ET> */
cmd.ce_fdsttype = parse_element_type(*argv);
++argv; --argc;
/* Check for voltag virtual type */
if (CHET_VT == cmd.ce_fdsttype) {
find_element(*argv, &cmd.ce_fdsttype, &cmd.ce_fdstunit);
} else {
/* <from EU> */
cmd.ce_fdstunit = parse_element_unit(*argv);
}
/* <dst1 EU> */
cmd.ce_fdstunit = parse_element_unit(*argv);
++argv; --argc;
/*
@@ -324,10 +294,6 @@ do_exchange(cname, argc, argv)
cmd.ce_sdsttype = parse_element_type(*argv);
++argv; --argc;
if (CHET_VT == cmd.ce_sdsttype)
errx(1,"%s %s: voltag only makes sense as an element source",
cname, *argv);
/* <dst2 EU> */
cmd.ce_sdstunit = parse_element_unit(*argv);
++argv; --argc;
@@ -687,9 +653,9 @@ do_status(cname, argc, argv)
cesr.cesr_element_base = base;
cesr.cesr_element_count = count;
/* Allocate storage for the status structures. */
cesr.cesr_element_status =
(struct changer_element_status *)
calloc(count, sizeof(struct changer_element_status));
cesr.cesr_element_status
= (struct changer_element_status *)
malloc(count * sizeof(struct changer_element_status));
if (!cesr.cesr_element_status)
errx(1, "can't allocate status storage");
@@ -969,236 +935,6 @@ bits_to_string(v, cp)
return (buf);
}
/*
* do_return()
*
* Given an element reference, ask the changer/picker to move that
* element back to its source slot.
*/
static int
do_return(cname, argc, argv)
char *cname;
int argc;
char **argv;
{
struct changer_element_status *ces;
struct changer_move cmd;
u_int16_t type, element;
++argv; --argc;
if (argc < 2) {
warnx("%s: too few arguments", cname);
goto usage;
} else if (argc > 3) {
warnx("%s: too many arguments", cname);
goto usage;
}
type = parse_element_type(*argv);
++argv; --argc;
/* Handle voltag virtual Changer Element Type */
if (CHET_VT == type) {
find_element(*argv, &type, &element);
} else {
element = parse_element_unit(*argv);
}
++argv; --argc;
ces = get_element_status(type, element); /* Get the status */
if (NULL == ces)
errx(1, "%s: null element status pointer", cname);
if (!(ces->ces_flags & CES_SOURCE_VALID))
errx(1, "%s: no source information", cname);
(void) memset(&cmd, 0, sizeof(cmd));
cmd.cm_fromtype = type;
cmd.cm_fromunit = element;
cmd.cm_totype = ces->ces_source_type;
cmd.cm_tounit = ces->ces_source_addr;
if (ioctl(changer_fd, CHIOMOVE, &cmd) == -1)
err(1, "%s: CHIOMOVE", changer_name);
free(ces);
return(0);
usage:
(void) fprintf(stderr, "usage: %s %s "
"<from ET> <from EU>\n", __progname, cname);
return(1);
}
/*
* get_element_status()
*
* return a *cesr for the specified changer element. This
* routing will malloc()/calloc() the memory. The caller
* should free() it when done.
*/
static struct changer_element_status *
get_element_status(type, element)
u_int16_t type;
u_int16_t element;
{
struct changer_element_status_request cesr;
struct changer_element_status *ces;
ces = (struct changer_element_status *)
calloc(1, sizeof(struct changer_element_status));
if (NULL == ces)
errx(1, "can't allocate status storage");
(void)memset(&cesr, 0, sizeof(cesr));
cesr.cesr_element_type = type;
cesr.cesr_element_base = element;
cesr.cesr_element_count = 1; /* Only this one element */
cesr.cesr_flags |= CESR_VOLTAGS; /* Grab voltags as well */
cesr.cesr_element_status = ces;
if (ioctl(changer_fd, CHIOGSTATUS, (char *)&cesr) == -1) {
free(ces);
err(1, "%s: CHIOGSTATUS", changer_name);
/* NOTREACHED */
}
return ces;
}
/*
* find_element()
*
* Given a <voltag> find the chager element and unit, or exit
* with an error if it isn't found. We grab the changer status
* and iterate until we find a match, or crap out.
*/
static void
find_element(voltag, et, eu)
char *voltag;
u_int16_t *et;
u_int16_t *eu;
{
struct changer_params cp;
struct changer_element_status_request cesr;
struct changer_element_status *ch_ces, *ces;
int elem, total_elem, found = 0;
/*
* Get the changer parameters, we're interested in the counts
* for all types of elements to perform our search.
*/
if (ioctl(changer_fd, CHIOGPARAMS, (char *)&cp))
err(1, "%s: CHIOGPARAMS", changer_name);
/* Allocate some memory for the results */
total_elem = (cp.cp_nslots + cp.cp_ndrives
+ cp.cp_npickers + cp.cp_nportals);
ch_ces = (struct changer_element_status *)
calloc(total_elem, sizeof(struct changer_element_status));
if (NULL == ch_ces)
errx(1, "can't allocate status storage");
ces = ch_ces;
/* Read in the changer slots */
if (cp.cp_nslots > 0) {
cesr.cesr_element_type = CHET_ST;
cesr.cesr_element_base = 0;
cesr.cesr_element_count = cp.cp_nslots;
cesr.cesr_flags |= CESR_VOLTAGS;
cesr.cesr_element_status = ces;
if (ioctl(changer_fd, CHIOGSTATUS, (char *)&cesr) == -1) {
free(ch_ces);
err(1, "%s: CHIOGSTATUS", changer_name);
}
ces += cp.cp_nslots;
}
/* Read in the drive information */
if (cp.cp_ndrives > 0 ) {
(void) memset(&cesr, 0, sizeof(cesr));
cesr.cesr_element_type = CHET_DT;
cesr.cesr_element_base = 0;
cesr.cesr_element_count = cp.cp_ndrives;
cesr.cesr_flags |= CESR_VOLTAGS;
cesr.cesr_element_status = ces;
if (ioctl(changer_fd, CHIOGSTATUS, (char *)&cesr) == -1) {
free(ch_ces);
err(1, "%s: CHIOGSTATUS", changer_name);
}
ces += cp.cp_ndrives;
}
/* Read in the portal information */
if (cp.cp_nportals > 0 ) {
(void) memset(&cesr, 0, sizeof(cesr));
cesr.cesr_element_type = CHET_IE;
cesr.cesr_element_base = 0;
cesr.cesr_element_count = cp.cp_nportals;
cesr.cesr_flags |= CESR_VOLTAGS;
cesr.cesr_element_status = ces;
if (ioctl(changer_fd, CHIOGSTATUS, (char *)&cesr) == -1) {
free(ch_ces);
err(1, "%s: CHIOGSTATUS", changer_name);
}
ces += cp.cp_nportals;
}
/* Read in the picker information */
if (cp.cp_npickers > 0) {
(void) memset(&cesr, 0, sizeof(cesr));
cesr.cesr_element_type = CHET_MT;
cesr.cesr_element_base = 0;
cesr.cesr_element_count = cp.cp_npickers;
cesr.cesr_flags |= CESR_VOLTAGS;
cesr.cesr_element_status = ces;
if (ioctl(changer_fd, CHIOGSTATUS, (char *)&cesr) == -1) {
free(ch_ces);
err(1, "%s: CHIOGSTATUS", changer_name);
}
}
/*
* Now search the list the specified <voltag>
*/
for (elem = 0; elem <= total_elem; ++elem) {
ces = &ch_ces[elem];
/* Make sure we have a tape in this element */
if ((ces->ces_flags & (CES_STATUS_ACCESS|CES_STATUS_FULL))
!= (CES_STATUS_ACCESS|CES_STATUS_FULL))
continue;
/* Check to see if it is our target */
if (strcasecmp(voltag, ces->ces_pvoltag.cv_volid) == 0) {
*et = ces->ces_type;
*eu = ces->ces_addr;
++found;
break;
}
}
if (!found) {
errx(1, "%s: unable to locate voltag: %s", changer_name,
voltag);
}
free(ch_ces);
return;
}
static void
cleanup()
+2 -5
View File
@@ -72,7 +72,6 @@ main(argc, argv)
int Hflag, Lflag, Pflag, Rflag, ch, fflag, fts_options, hflag, rval;
int vflag;
char *ep, *mode;
int newmode;
set = NULL;
omode = 0;
@@ -192,10 +191,8 @@ done: argv += optind;
default:
break;
}
newmode = oct ? omode : getmode(set, p->fts_statp->st_mode);
if ((newmode & ALLPERMS) == (p->fts_statp->st_mode & ALLPERMS))
continue;
if (chmod(p->fts_accpath, newmode) && !fflag) {
if (chmod(p->fts_accpath, oct ? omode :
getmode(set, p->fts_statp->st_mode)) && !fflag) {
warn("%s", p->fts_path);
rval = 1;
} else {
-1
View File
@@ -41,7 +41,6 @@ static const char rcsid[] =
#include <sys/param.h>
#include <sys/stat.h>
#include <sys/time.h>
#ifdef VM_AND_BUFFER_CACHE_SYNCHRONIZED
#include <sys/mman.h>
#endif
+5 -6
View File
@@ -118,10 +118,11 @@ Print the date and time represented by
where
.Ar seconds
is the number of seconds since the Epoch
(00:00:00 UTC, January 1, 1970;
.Po
00:00:00 UTC, January 1, 1970;
see
.Xr time 3 ) ,
and can be specified in decimal, octal, or hex.
.Xr time 3
.Pc .
.It Fl t Ar minutes_west
Set the system's value for minutes west of
.Tn GMT .
@@ -194,9 +195,7 @@ the clock goes back at 02:00 to 01:00, using
will be necessary to reach October 29, 2:30.
.Pp
When the date is adjusted to a specific value that doesn't actually exist
.Po
for example March 26, 1:30 BST 2000 in the Europe/London timezone
.Pc ,
.Pq for example March 26, 1:30 BST 2000 in the Europe/London timezone ,
the date will be silently adjusted forwards in units of one hour until it
reaches a valid time.
When the date is adjusted to a specific value that occurs twice
+3 -2
View File
@@ -78,6 +78,8 @@ main(argc, argv)
int argc;
char **argv;
{
extern int optind;
extern char *optarg;
struct timezone tz;
int ch, rflag;
int jflag, nflag;
@@ -114,8 +116,7 @@ main(argc, argv)
break;
case 'r': /* user specified seconds */
rflag = 1;
if (sscanf(optarg,"%li",&tval) != 1)
usage();
tval = atol(optarg);
break;
case 't': /* minutes west of UTC */
/* error check; don't allow "PST" */
+2 -3
View File
@@ -132,12 +132,11 @@ jcl(argv)
* just wanted to set both the input and output block sizes
* and didn't want the bs semantics, so we don't warn.
*/
if (ddflags & (C_BLOCK | C_LCASE | C_SWAB | C_UCASE |
C_UNBLOCK))
if (ddflags & (C_BLOCK|C_LCASE|C_SWAB|C_UCASE|C_UNBLOCK))
ddflags &= ~C_BS;
/* Bs supersedes ibs and obs. */
if (ddflags & C_BS && ddflags & (C_IBS | C_OBS))
if (ddflags & C_BS && ddflags & (C_IBS|C_OBS))
warnx("bs supersedes ibs and obs");
}
+12 -24
View File
@@ -52,7 +52,6 @@ static const char rcsid[] =
#include <sys/param.h>
#include <sys/stat.h>
#include <sys/conf.h>
#include <sys/disklabel.h>
#include <sys/filio.h>
#include <ctype.h>
@@ -70,7 +69,6 @@ static const char rcsid[] =
static void dd_close __P((void));
static void dd_in __P((void));
int main __P((int, char *[]));
static void getfdtype __P((IO *));
static void setup __P((void));
@@ -169,13 +167,11 @@ setup()
pos_out();
/*
* Truncate the output file. If it fails on a type of output file
* that it should _not_ fail on, error out.
* Truncate the output file; ignore errors because it fails on some
* kinds of output files, tapes, for example.
*/
if ((ddflags & (C_OF | C_SEEK | C_NOTRUNC)) == (C_OF | C_SEEK) &&
out.flags & ISTRUNC)
if (ftruncate(out.fd, out.offset * out.dbsz) == -1)
err(1, "truncating %s", out.name);
if ((ddflags & (C_OF | C_SEEK | C_NOTRUNC)) == (C_OF | C_SEEK))
(void)ftruncate(out.fd, out.offset * out.dbsz);
/*
* If converting case at the same time as another conversion, build a
@@ -194,10 +190,10 @@ setup()
} else {
if (ddflags & C_LCASE) {
for (cnt = 0; cnt <= 0377; ++cnt)
casetab[cnt] = tolower((int)cnt);
casetab[cnt] = tolower(cnt);
} else {
for (cnt = 0; cnt <= 0377; ++cnt)
casetab[cnt] = toupper((int)cnt);
casetab[cnt] = toupper(cnt);
}
}
ctab = casetab;
@@ -216,22 +212,14 @@ getfdtype(io)
if (fstat(io->fd, &sb) == -1)
err(1, "%s", io->name);
if (S_ISREG(sb.st_mode))
io->flags |= ISTRUNC;
if (S_ISCHR(sb.st_mode) || S_ISBLK(sb.st_mode)) {
if (ioctl(io->fd, FIODTYPE, &type) == -1) {
err(1, "%s", io->name);
} else {
if (type & D_TAPE)
io->flags |= ISTAPE;
else if (type & (D_DISK | D_MEM)) {
if (type & D_DISK) {
const int one = 1;
(void)ioctl(io->fd, DIOCWLABEL, &one);
}
else if (type & (D_DISK | D_MEM))
io->flags |= ISSEEK;
}
if (S_ISCHR(sb.st_mode) && (type & D_TAPE) == 0)
io->flags |= ISCHR;
}
@@ -256,7 +244,7 @@ dd_in()
case 0:
break;
default:
if (st.in_full + st.in_part >= (u_quad_t)cpy_cnt)
if (st.in_full + st.in_part >= cpy_cnt)
return;
break;
}
@@ -308,7 +296,7 @@ dd_in()
++st.in_full;
/* Handle full input blocks. */
} else if ((size_t)n == in.dbsz) {
} else if (n == in.dbsz) {
in.dbcnt += in.dbrcnt = n;
++st.in_full;
@@ -339,7 +327,7 @@ dd_in()
++st.swab;
--n;
}
swab(in.dbp, in.dbp, (size_t)n);
swab(in.dbp, in.dbp, n);
}
in.dbp += in.dbrcnt;
@@ -439,7 +427,7 @@ dd_out(force)
}
outp += nw;
st.bytes += nw;
if ((size_t)nw == n) {
if (nw == n) {
if (n != out.dbsz)
++st.out_part;
else
@@ -447,7 +435,7 @@ dd_out(force)
break;
}
++st.out_part;
if ((size_t)nw == cnt)
if (nw == cnt)
break;
if (out.flags & ISTAPE)
errx(1, "%s: short write on tape device",
+2 -3
View File
@@ -48,14 +48,13 @@ typedef struct {
size_t dbsz; /* buffer size */
#define ISCHR 0x01 /* character device (warn on short) */
#define ISPIPE 0x02 /* pipe-like (see position.c) */
#define ISPIPE 0x02 /* pipe-like (not truncatable) */
#define ISTAPE 0x04 /* tape */
#define ISSEEK 0x08 /* valid to seek on */
#define NOREAD 0x10 /* not readable */
#define ISTRUNC 0x20 /* valid to ftruncate() */
u_int flags;
const char *name; /* name */
char *name; /* name */
int fd; /* file descriptor */
off_t offset; /* # of blocks to skip */
+1 -2
View File
@@ -53,11 +53,10 @@ void summaryx __P((int));
void terminate __P((int));
void unblock __P((void));
void unblock_close __P((void));
void bitswab __P((void *, size_t));
extern IO in, out;
extern STAT st;
extern void (*cfunc) __P((void));
extern void (*cfunc)();
extern quad_t cpy_cnt;
extern size_t cbsz;
extern u_int ddflags;
+3 -7
View File
@@ -130,7 +130,7 @@ pos_out()
* going to fail, but don't protect the user -- they shouldn't
* have specified the seek operand.
*/
if (out.flags & (ISSEEK | ISPIPE)) {
if (!(out.flags & ISTAPE)) {
errno = 0;
if (lseek(out.fd, out.offset * out.dbsz, SEEK_CUR) == -1 &&
errno != 0)
@@ -166,13 +166,9 @@ pos_out()
if (ioctl(out.fd, MTIOCTOP, &t_op) == -1)
err(1, "%s", out.name);
while (cnt++ < out.offset) {
n = write(out.fd, out.db, out.dbsz);
if (n == -1)
while (cnt++ < out.offset)
if ((n = write(out.fd, out.db, out.dbsz)) != out.dbsz)
err(1, "%s", out.name);
if ((size_t)n != out.dbsz)
errx(1, "%s: write failure", out.name);
}
break;
}
}
+3 -76
View File
@@ -14,9 +14,7 @@
#include <locale.h>
#include <ctype.h>
#include <err.h>
#include <errno.h>
#include <regex.h>
#include <limits.h>
enum valtype {
integer, numeric_string, string
@@ -156,11 +154,7 @@ struct val *vp;
return 0;
/* vp->type == numeric_string, make it numeric */
errno = 0;
i = strtoq(vp->u.s, (char**)NULL, 10);
if (errno != 0) {
errx (2, "overflow");
}
free (vp->u.s);
vp->u.i = i;
vp->type = integer;
@@ -415,20 +409,6 @@ struct val *a, *b;
return r;
}
int
chk_plus (a, b, r)
quad_t a, b, r;
{
/* sum of two positive numbers must be positive */
if (a > 0 && b > 0 && r <= 0)
return 1;
/* sum of two negative numbers must be negative */
if (a < 0 && b < 0 && r >= 0)
return 1;
/* all other cases are OK */
return 0;
}
struct val *
op_plus (a, b)
struct val *a, *b;
@@ -440,29 +420,11 @@ struct val *a, *b;
}
r = make_integer (/*(quad_t)*/(a->u.i + b->u.i));
if (chk_plus (a->u.i, b->u.i, r->u.i)) {
errx (2, "overflow");
}
free_value (a);
free_value (b);
return r;
}
int
chk_minus (a, b, r)
quad_t a, b, r;
{
/* special case subtraction of QUAD_MIN */
if (b == QUAD_MIN) {
if (a >= 0)
return 1;
else
return 0;
}
/* this is allowed for b != QUAD_MIN */
return chk_plus (a, -b, r);
}
struct val *
op_minus (a, b)
struct val *a, *b;
@@ -474,27 +436,11 @@ struct val *a, *b;
}
r = make_integer (/*(quad_t)*/(a->u.i - b->u.i));
if (chk_minus (a->u.i, b->u.i, r->u.i)) {
errx (2, "overflow");
}
free_value (a);
free_value (b);
return r;
}
int
chk_times (a, b, r)
quad_t a, b, r;
{
/* special case: first operand is 0, no overflow possible */
if (a == 0)
return 0;
/* cerify that result of division matches second operand */
if (r / a != b)
return 1;
return 0;
}
struct val *
op_times (a, b)
struct val *a, *b;
@@ -506,26 +452,11 @@ struct val *a, *b;
}
r = make_integer (/*(quad_t)*/(a->u.i * b->u.i));
if (chk_times (a->u.i, b->u.i, r->u.i)) {
errx (2, "overflow");
}
free_value (a);
free_value (b);
return (r);
}
int
chk_div (a, b, r)
quad_t a, b, r;
{
/* div by zero has been taken care of before */
/* only QUAD_MIN / -1 causes overflow */
if (a == QUAD_MIN && b == -1)
return 1;
/* everything else is OK */
return 0;
}
struct val *
op_div (a, b)
struct val *a, *b;
@@ -541,9 +472,6 @@ struct val *a, *b;
}
r = make_integer (/*(quad_t)*/(a->u.i / b->u.i));
if (chk_div (a->u.i, b->u.i, r->u.i)) {
errx (2, "overflow");
}
free_value (a);
free_value (b);
return r;
@@ -564,7 +492,6 @@ struct val *a, *b;
}
r = make_integer (/*(quad_t)*/(a->u.i % b->u.i));
/* chk_rem necessary ??? */
free_value (a);
free_value (b);
return r;
+4 -27
View File
@@ -44,11 +44,11 @@
.Nd make links
.Sh SYNOPSIS
.Nm ln
.Op Fl fisv
.Op Fl fsv
.Ar source_file
.Op target_file
.Nm ln
.Op Fl fisv
.Op Fl fsv
.Ar source_file ...
.Op target_dir
.Nm link
@@ -72,28 +72,7 @@ to a file is one of the differences between a hard and symbolic link.
The options are as follows:
.Bl -tag -width flag
.It Fl f
If the target file already exists,
then unlink it so that the link may occur.
(The
.Fl f
option overrides any previous
.Fl i
options.)
.It Fl i
Cause
.Nm
to write a prompt to standard error if the target file exists.
If the response from the standard input begins with the character
.Sq Li y
or
.Sq Li Y ,
then unlink the target file so that the link may occur.
Otherwise, do not attempt the link.
(The
.Fl i
option overrides any previous
.Fl f
options.)
Unlink any already existing file, permitting the link to occur.
.It Fl s
Create a symbolic link.
.It Fl v
@@ -164,10 +143,8 @@ operation using the two passed arguments.
.Xr symlink 7
.Sh COMPATIBILITY
The
.Fl i
and
.Fl v
options are non-standard and their use in scripts is not recommended.
option is non-standard and its use in scripts is not recommended.
.Sh HISTORY
An
.Nm
+8 -37
View File
@@ -56,7 +56,6 @@ static const char rcsid[] =
#include <unistd.h>
int fflag; /* Unlink existing files. */
int iflag; /* Interactive mode. */
int sflag; /* Symbolic, not hard, link. */
int vflag; /* Verbose output. */
/* System link call. */
@@ -71,6 +70,7 @@ main(argc, argv)
int argc;
char *argv[];
{
extern int optind;
struct stat sb;
int ch, exitval;
char *p, *sourcedir;
@@ -92,15 +92,10 @@ main(argc, argv)
usage();
}
while ((ch = getopt(argc, argv, "fisv")) != -1)
while ((ch = getopt(argc, argv, "fsv")) != -1)
switch (ch) {
case 'f':
fflag = 1;
iflag = 0;
break;
case 'i':
iflag = 1;
fflag = 0;
break;
case 's':
sflag = 1;
@@ -144,7 +139,7 @@ linkit(target, source, isdir)
int isdir;
{
struct stat sb;
int ch, exists, first;
int exists;
char *p, path[MAXPATHLEN];
if (!sflag) {
@@ -174,34 +169,10 @@ linkit(target, source, isdir)
exists = !lstat(source, &sb);
/*
* If the file exists, then unlink it forcibly if -f was specified
* and interactively if -i was specified.
* If the file exists, and -f was specified, unlink it.
* Attempt the link.
*/
if (fflag && exists) {
if (unlink(source)) {
warn("%s", source);
return (1);
}
} else if (iflag && exists) {
fflush(stdout);
fprintf(stderr, "replace %s? ", source);
first = ch = getchar();
while(ch != '\n' && ch != EOF)
ch = getchar();
if (first != 'y' && first != 'Y') {
fprintf(stderr, "not replaced\n");
return (1);
}
if (unlink(source)) {
warn("%s", source);
return (1);
}
}
/* Attempt the link. */
if ((*linkf)(target, source)) {
if ((fflag && exists && unlink(source)) || (*linkf)(target, source)) {
warn("%s", source);
return (1);
}
@@ -214,8 +185,8 @@ void
usage()
{
(void)fprintf(stderr, "%s\n%s\n%s\n",
"usage: ln [-fisv] file1 file2",
" ln [-fisv] file ... directory",
"usage: ln [-fsv] file1 file2",
" ln [-fsv] file ... directory",
" link file1 file2");
exit(1);
}
+1 -2
View File
@@ -407,8 +407,7 @@ the
.Nm ls
command acts a little differently. If you do not specify the
.Fl F ,
.Fl d
or
.Fl d or
.Fl l
options,
.Nm ls
+30 -45
View File
@@ -91,9 +91,29 @@ a percent sign (%) after each whiteout,
and a vertical bar (|) after each that is a
.Tn FIFO .
.It Fl G
Enable colorized output. This option is equivalent to defining
.Ev CLICOLOR
in the environment. (See below).
Use
.Tn ANSI
color sequences to distinguish file types.
See
.Ev LSCOLORS
below.
In addition to those mentioned above in
.Fl F ,
some extra attributes (setuid bit set, etc.) are also displayed.
The colorization is dependent on a terminal type with the proper
.Xr termcap 5
capabilities.
The default
.Dq cons25
console has the proper capabilities,
however if you want to display the colors in an
.Xr xterm 1
for example,
you need to set your
.Ev TERM
variable to
.Dq xterm-color .
Other terminal types may require similar adjustments.
.It Fl H
Symbolic links on the command line are followed. This option is assumed if
none of the
@@ -373,43 +393,7 @@ is set, the block counts
(see
.Fl s )
will be displayed in units of that size block.
.It Ev CLICOLOR
Use
.Tn ANSI
color sequences to distinguish file types.
See
.Ev LSCOLORS
below.
In addition to the file types mentioned in the
.Fl F
option some extra attributes (setuid bit set, etc.) are also displayed.
The colorization is dependent on a terminal type with the proper
.Xr termcap 5
capabilities.
The default
.Dq cons25
console has the proper capabilities,
however if you want to display the colors in an
.Xr xterm 1
for example,
you need to set your
.Ev TERM
variable to
.Dq xterm-color .
Other terminal types may require similar adjustments. Colorization
is silently disabled if the output isn't directed to a terminal
unless the
.Ev CLICOLOR_FORCE
variable is defined.
.It Ev CLICOLOR_FORCE
Color sequences are normally disabled if the output isn't directed to
a terminal. This can be overridden by setting this flag.
The
.Ev TERM
variable still needs to reference a color capable terminal however
otherwise it is not possible to determine which color sequences to
use.
.It Ev COLUMNS
.It COLUMNS
If this variable contains a string representing a
decimal integer, it is used as the
column position width for displaying
@@ -428,10 +412,11 @@ format output.
See
.Xr environ 7
for more information.
.It Ev LSCOLORS
.It LSCOLORS
The value of this variable describes what color to use for which
attribute when colors are enabled with
.Ev CLICOLOR.
attribute when the color output
.Pq Fl G
is specified.
This string is a concatenation of pairs of the format
.Sy fb ,
where
@@ -509,8 +494,8 @@ in order: inode, block count, number of links, user name,
group name, flags, file size, file name.
.It Ev TERM
The
.Ev CLICOLOR
functionality depends on a terminal type with color capabilities.
.Fl G
option depends on a terminal type with color capabilities.
.It Ev TZ
The timezone to use when displaying dates.
See
+18 -22
View File
@@ -202,7 +202,24 @@ main(argc, argv)
fts_options |= FTS_COMFOLLOW;
break;
case 'G':
setenv("CLICOLOR", "", 1);
if (isatty(STDOUT_FILENO))
#ifdef COLORLS
if (tgetent(termcapbuf, getenv("TERM")) == 1) {
ansi_fgcol = tgetstr("AF", &bp);
ansi_bgcol = tgetstr("AB", &bp);
/* To switch colours off use 'op' if
* available, otherwise use 'oc', or
* don't do colours at all. */
ansi_coloff = tgetstr("op", &bp);
if (!ansi_coloff)
ansi_coloff = tgetstr("oc", &bp);
if (ansi_fgcol && ansi_bgcol && ansi_coloff)
f_color = 1;
}
#else
(void)fprintf(stderr, "Color support not compiled in.\n");
#endif
break;
case 'L':
fts_options &= ~FTS_PHYSICAL;
@@ -277,27 +294,6 @@ main(argc, argv)
argc -= optind;
argv += optind;
/* Enabling of colours is conditional on the environment. */
if (getenv("CLICOLOR") &&
(isatty(STDOUT_FILENO) || getenv("CLICOLOR_FORCE")))
#ifdef COLORLS
if (tgetent(termcapbuf, getenv("TERM")) == 1) {
ansi_fgcol = tgetstr("AF", &bp);
ansi_bgcol = tgetstr("AB", &bp);
/* To switch colours off use 'op' if
* available, otherwise use 'oc', or
* don't do colours at all. */
ansi_coloff = tgetstr("op", &bp);
if (!ansi_coloff)
ansi_coloff = tgetstr("oc", &bp);
if (ansi_fgcol && ansi_bgcol && ansi_coloff)
f_color = 1;
}
#else
(void)fprintf(stderr, "Color support not compiled in.\n");
#endif /*COLORLS*/
#ifdef COLORLS
if (f_color) {
/*
+2 -2
View File
@@ -162,9 +162,9 @@ usage()
{
(void)fprintf(stderr,
#ifdef COLORLS
"usage: ls [-ABCFGHLPRTWabcdfgiklnoqrstu1]"
"usage: ls [-ACFGHLPRTWacdfgiklnoqrstu1]"
#else
"usage: ls [-ABCFHLPRTWabcdfgiklnoqrstu1]"
"usage: ls [-ACFHLPRTWacdfgiklnoqrstu1]"
#endif
" [file ...]\n");
exit(1);
-11
View File
@@ -290,17 +290,6 @@ err: if (unlink(to))
}
if (fchmod(to_fd, sbp->st_mode))
warn("%s: set mode (was: 0%03o)", to, oldmode);
/*
* XXX
* NFS doesn't support chflags; ignore errors unless there's reason
* to believe we're losing bits. (Note, this still won't be right
* if the server supports flags and we were trying to *remove* flags
* on a file that we copied, i.e., that we didn't create.)
*/
errno = 0;
if (fchflags(to_fd, sbp->st_flags))
if (errno != EOPNOTSUPP || sbp->st_flags != 0)
warn("%s: set flags (was: 0%07o)", to, sbp->st_flags);
tval[0].tv_sec = sbp->st_atime;
tval[1].tv_sec = sbp->st_mtime;
+2
View File
@@ -188,6 +188,8 @@ pax_options(argc, argv)
unsigned int bflg = 0;
register char *pt;
FSUB tmp;
extern char *optarg;
extern int optind;
/*
* process option flags
+1 -1
View File
@@ -185,7 +185,7 @@ state(k, ve)
break;
case SSLEEP:
if (flag & P_SINTR) /* interruptable (long) */
if (flag & P_SINTR) /* interuptable (long) */
*cp = p->p_slptime >= MAXSLP ? 'I' : 'S';
else
*cp = 'D';
+1 -22
View File
@@ -1,31 +1,10 @@
# @(#)Makefile 8.1 (Berkeley) 5/31/93
# $FreeBSD$
MAINTAINER= [email protected]
SENDMAIL_DIR=${.CURDIR}/../../contrib/sendmail
.PATH: ${SENDMAIL_DIR}/rmail
.PATH: ${.CURDIR}/../../contrib/sendmail/rmail
PROG= rmail
SRCS= rmail.c
MAN8= rmail.8
CFLAGS+=-I${SENDMAIL_DIR}/include
.if exists(${.OBJDIR}/../../lib/libsmutil)
LIBSMUTILDIR:= ${.OBJDIR}/../../lib/libsmutil
.else
LIBSMUTILDIR!= cd ${.CURDIR}/../../lib/libsmutil; make -V .OBJDIR
.endif
LIBSMUTIL:= ${LIBSMUTILDIR}/libsmutil.a
DPADD= ${LIBSMUTIL}
LDADD= ${LIBSMUTIL}
# User customizations to the sendmail build environment
CFLAGS+=${SENDMAIL_CFLAGS}
DPADD+=${SENDMAIL_DPADD}
LDADD+=${SENDMAIL_LDADD}
LDFLAGS+=${SENDMAIL_LDFLAGS}
# If you want to have your rmail queuing the mail only, uncomment the
# following:
+9 -16
View File
@@ -891,21 +891,14 @@ typecmd(argc, argv)
switch (entry.cmdtype) {
case CMDNORMAL: {
if (strchr(argv[i], '/') == NULL) {
char *path = pathval(), *name;
int j = entry.u.index;
do {
name = padvance(&path, argv[i]);
stunalloc(name);
} while (--j >= 0);
out1fmt(" is%s %s\n",
cmdp ? " a tracked alias for" : "", name);
} else {
if (access(argv[i], X_OK) == 0)
out1fmt(" is %s\n", argv[i]);
else
out1fmt(": %s\n", strerror(errno));
}
int j = entry.u.index;
char *path = pathval(), *name;
do {
name = padvance(&path, argv[i]);
stunalloc(name);
} while (--j >= 0);
out1fmt(" is%s %s\n",
cmdp ? " a tracked alias for" : "", name);
break;
}
case CMDFUNCTION:
@@ -917,7 +910,7 @@ typecmd(argc, argv)
break;
default:
out1str(": not found\n");
out1str(" not found\n");
error |= 127;
break;
}
+1 -2
View File
@@ -253,13 +253,12 @@ cmdloop(top)
evaltree(n, 0);
}
popstackmark(&smark);
setstackmark(&smark);
if (evalskip == SKIPFILE) {
evalskip = 0;
break;
}
}
popstackmark(&smark);
popstackmark(&smark); /* unnecessary */
}
-19
View File
@@ -118,7 +118,6 @@ struct stack_block {
struct stack_block stackbase;
struct stack_block *stackp = &stackbase;
struct stackmark *markp;
char *stacknxt = stackbase.space;
int stacknleft = MINSIZE;
int sstrnleft;
@@ -177,8 +176,6 @@ setstackmark(mark)
mark->stackp = stackp;
mark->stacknxt = stacknxt;
mark->stacknleft = stacknleft;
mark->marknext = markp;
markp = mark;
}
@@ -189,7 +186,6 @@ popstackmark(mark)
struct stack_block *sp;
INTOFF;
markp = mark->marknext;
while (stackp != mark->stackp) {
sp = stackp;
stackp = sp->prev;
@@ -219,7 +215,6 @@ growstackblock()
char *oldspace;
int oldlen;
struct stack_block *sp;
struct stack_block *oldstackp;
newlen = ALIGN(stacknleft * 2 + 100);
oldspace = stacknxt;
@@ -227,7 +222,6 @@ growstackblock()
if (stacknxt == stackp->space && stackp != &stackbase) {
INTOFF;
oldstackp = stackp;
sp = stackp;
stackp = sp->prev;
sp = ckrealloc((pointer)sp, sizeof(struct stack_block) -
@@ -236,19 +230,6 @@ growstackblock()
stackp = sp;
stacknxt = sp->space;
stacknleft = newlen;
{
/* Stack marks pointing to the start of the old block
* must be relocated to point to the new block
*/
struct stackmark *xmark;
xmark = markp;
while (xmark != NULL && xmark->stackp == oldstackp) {
xmark->stackp = stackp;
xmark->stacknxt = stacknxt;
xmark->stacknleft = stacknleft;
xmark = xmark->marknext;
}
}
INTON;
} else {
p = stalloc(newlen);
-1
View File
@@ -41,7 +41,6 @@ struct stackmark {
struct stack_block *stackp;
char *stacknxt;
int stacknleft;
struct stackmark *marknext;
};
+4 -1
View File
@@ -909,7 +909,10 @@ readtoken1(firstc, syntax, eofmark, striptabs)
for (;;) { /* until end of line or end of word */
CHECKSTRSPACE(3, out); /* permit 3 calls to USTPUTC */
synentry = syntax[c];
if (c < 0 && c != PEOF)
synentry = CWORD;
else
synentry = syntax[c];
switch(synentry) {
case CNL: /* '\n' */
+2 -2
View File
@@ -116,7 +116,7 @@ The last form is described below.
.It Fl a Ar temporary-directory
Specify an alternative location for the real mount points.
The default is
.Pa /.amd_mnt .
.Pa /a .
.It Fl c Ar duration
Specify a
.Ar duration ,
@@ -284,7 +284,7 @@ Map entries that are tagged with a tag other than
will not be processed.
.Sh FILES
.Bl -tag -width /axx
.It Pa /.amd_mnt
.It Pa /a
directory under which filesystems are dynamically mounted
.It Pa /etc/amd.conf
default configuration file
+1 -1
View File
@@ -225,7 +225,7 @@ init_global_options(void)
gopt.arch = HOST_ARCH;
/* automounter temp dir */
gopt.auto_dir = "/.amd_mnt";
gopt.auto_dir = "/a";
/* cluster name */
gopt.cluster = NULL;
+2 -1
View File
@@ -195,7 +195,8 @@ be in the
database.
.Sh SEE ALSO
.Xr amd.conf 5 ,
.Xr amd 8
.Xr amd 8 ,
.Xr ctl-amd 8
.Sh AUTHORS
.An Jan-Simon Pendry Aq [email protected] ,
Department of Computing, Imperial College, London, UK.
+2 -2
View File
@@ -84,7 +84,7 @@ server for the directory containing
which defaults to
.Pa /hlfs/home .
Lookups within that directory are handled by
.Nm hlfsd ,
.Nm ,
which uses the password map to determine how to resolve the lookup. The
directory will be created if it doesn't already exist. The symbolic link will
be to the accessing user's home directory, with
@@ -156,7 +156,7 @@ If no group is provided, and there is no group
this feature is disabled.
.It Fl h
Help. Print a brief help message, and exit.
.It Fl i Ar reload-interval
.It i Ar reload-interval
Map-reloading interval. Each
.Ar reload-interval
seconds,
+1 -57
View File
@@ -1,59 +1,3 @@
--- 8.2.3-T6B released ---
1029. [bug] incredibly busy systems could starve handle_needs().
1028. [protocol] unrecognized TSIG was returning NOERROR (now NOTAUTH).
1027. [support] INSIST(), ENSURE(), et al, now always have sideeffects.
1026. [port] some kernels bogusly return tv_usec>1000000 from
gettimeofday(). panic and dump core when this happens.
1025. [proto] NOTIFY messages should have AA.
1024. [bug] we were unwilling to use the last 10 octets of a
response buffer in certain transaction types.
1023. [port] HP-UX 10.20 was looping inside contrib/dnssigner.
1022. [port] ensure that all handled signals are unblocked.
1021. [bug] the "host" command wasn't properly printing SRV RR's.
1020. [contrib] new "updatehosts" (V1.1.0) contributed by author.
1019. [port] separate CFLAGS and CPPFLAGS for unusual builds.
1018. [bug] When maintain_ixfr_base is set to "no" a zones IXFR
file was still being written too.
1017. [doc] resolver(3) was out of date with respect to recent API
changes.
1016. [bug] nslookup wasn't properly printing SIG RR's.
1015. [bug] when merging group information gr_name and gr_passwd
could be left pointing at freed memory.
1014. [bug] iquery: DoS (potential), information leak.
1013. [bug] mangled hostent structures returned by
gethostbyname_r() and friends.
1012. [doc] add named-bootconf example to INSTALL.
1011. [bug] if spawnxfer() fails we should return immediately.
1010. [bug] bad responses to the initial IXFR/SOA query could
result in using an uninitalised variable.
1009. [port] Add support for darwin / Mac OS X
1008. [doc] specify allow-query default in named.conf.
1007. [bug] only set STREAM_AXFRIXFR if the original query is
an IXFR.
--- 8.2.3-T5B (RC3) released ---
1006. [port] Windows/NT does not have fchown().
@@ -94,7 +38,7 @@
991. [protocol] send A6 glue records in xfr.
990. [bug] we could loose track of a bottom of zone cut if the
990. [bug] we could loose track of a bottom of zone cut is the
write buffer filled up at just the correct moment.
989. [bug] apply to "fetch-glue no;" to notify processing. need
+2 -6
View File
@@ -6,7 +6,6 @@ Systems it is known to compile and run on:
Debian GNU/Linux 2.2.9 ("unreleased")
Digital UNIX 3.2C, 4.0, 5.0
NetBSD/i386 1.3.2, 1.4
Darwin 1.x (Mac OS X)
SunOS 5.6 (Solaris 2.6), SunOS 5.7 (Solaris 7)
SCO UnixWare 7.0, 7.0.1, 7.1
IRIX 6.5
@@ -266,11 +265,8 @@ Using the Server
there are lots of {curly braces} and it takes some getting used to.
You may get a lot more help from the example file (which is
bin/named/named.conf) than from the documentation (see ../doc/html).
You can convert your named.boot file to a named.conf file using
bin/named-bootconf/named-bootconf.
e.g.
named-bootconf < /etc/named.boot > /etc/named.conf
You can convert your named.boot file to a named.conf file if you have
Perl; see bin/named/named-bootconf.pl.
All the files that used to be created in /var/tmp, e.g. named.run,
will now be created in the directory specified in the options
+2 -2
View File
@@ -1,4 +1,4 @@
## Copyright (c) 1993-2000 by Internet Software Consortium, Inc.
## Copyright (c) 1993-1999 by 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
@@ -19,4 +19,4 @@
Tel: 1-888-868-1001 (toll free in U.S.)
Tel: 1-650-779-7091
Fax: 1-650-779-7055
Email: <[email protected]>
Email: [email protected]
+1 -1
View File
@@ -1 +1 @@
8.2.3-T6B
8.2.3-T5B
+3 -4
View File
@@ -13,7 +13,7 @@
## ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
## SOFTWARE.
# $Id: Makefile,v 8.28 2000/07/11 06:41:26 vixie Exp $
# $Id: Makefile,v 8.27 1999/08/08 17:13:24 vixie Exp $
DESTDIR=
CC= cc
@@ -54,12 +54,11 @@ MARGS = "SYSTYPE=${SYSTYPE}" "SHELL=${SHELL}" "A=${A}" "O=${O}" \
"RANLIB=${RANLIB}" "AR=${AR}" "ARPREF=${ARPREF}" "ARSUFF=${ARSUFF}" \
"INCL=../${INCL}" "PORTINCL=../${PORTINCL}" "EXE=${EXE}" \
"LIBBIND=../${LIBBIND}" "LIBPORT=../${LIBPORT}" \
"INSTALL=${INSTALL}" "TOP=../${TOP}" \
"INSTALL=${INSTALL}" "CPPFLAGS=${CPPFLAGS}" "TOP=../${TOP}" \
"VER=${VER}" "STRIP=${STRIP}" "PS=${PS}" "INSTALL_LIB=${INSTALL_LIB}" \
"INSTALL_EXEC=${INSTALL_EXEC}" "BOUNDS=${BOUNDS}"
CFLAGS= ${CDEBUG}
CPPFLAGS= -I${PORTINCL} -I${INCL}
CFLAGS= ${CDEBUG} -I${PORTINCL} -I${INCL}
SUBDIRS = addr nslookup dig dnsquery host named named-xfer ndc nsupdate \
mkservdb irpd dnskeygen named-bootconf
+2 -3
View File
@@ -13,7 +13,7 @@
## ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
## SOFTWARE.
# $Id: Makefile,v 8.26 2000/07/11 06:41:27 vixie Exp $
# $Id: Makefile,v 8.25 1999/08/08 17:51:00 vixie Exp $
DESTDIR=
CC= cc
@@ -42,8 +42,7 @@ INSTALL_EXEC=
INSTALL_LIB=-o bin -g bin
LDFLAGS=
CFLAGS= ${CDEBUG}
CPPFLAGS= -I${PORTINCL} -I${INCL}
CFLAGS= ${CDEBUG} -I${PORTINCL} -I${INCL}
PROG= addr
SRCS= ${PROG}.c
+2 -3
View File
@@ -13,7 +13,7 @@
## ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
## SOFTWARE.
# $Id: Makefile,v 8.26 2000/07/11 06:41:27 vixie Exp $
# $Id: Makefile,v 8.25 1999/08/08 17:51:01 vixie Exp $
DESTDIR=
CC= cc
@@ -42,8 +42,7 @@ INSTALL_EXEC=
INSTALL_LIB=-o bin -g bin
LDFLAGS=
CFLAGS= ${CDEBUG}
CPPFLAGS= -I${PORTINCL} -I${INCL}
CFLAGS= ${CDEBUG} -I${PORTINCL} -I${INCL}
NSLOOKUP_OBJS= \
../nslookup/subr.${O} ../nslookup/send.${O} \
+2 -7
View File
@@ -1,5 +1,5 @@
#ifndef lint
static const char rcsid[] = "$Id: dig.c,v 8.42 2000/07/17 07:36:52 vixie Exp $";
static const char rcsid[] = "$Id: dig.c,v 8.41 2000/04/20 07:36:04 vixie Exp $";
#endif
/*
@@ -167,7 +167,6 @@ static const char rcsid[] = "$Id: dig.c,v 8.42 2000/07/17 07:36:52 vixie Exp $";
#include <isc/dst.h>
#include <assert.h>
#include <ctype.h>
#include <errno.h>
#include <fcntl.h>
@@ -349,7 +348,6 @@ main(int argc, char **argv) {
res.id = 1;
gettimeofday(&tv1, NULL);
assert(tv1.tv_usec >= 0 && tv1.tv_usec < 1000000);
/*
* Main section: once if cmd-line query
@@ -850,7 +848,6 @@ main(int argc, char **argv) {
if (res.pfcode & RES_PRF_HEAD1)
fp_resstat(&res, stdout);
(void) gettimeofday(&start_time, NULL);
assert(start_time.tv_usec >= 0 && start_time.tv_usec < 1000000);
if (keyfile)
n = res_nsendsigned(&res, packet, n, &key, answer, sizeof answer);
else
@@ -875,7 +872,6 @@ main(int argc, char **argv) {
}
}
(void) gettimeofday(&end_time, NULL);
assert(end_time.tv_usec >= 0 && end_time.tv_usec < 1000000);
if (res.pfcode & RES_PRF_STATS) {
time_t t;
@@ -909,7 +905,6 @@ main(int argc, char **argv) {
* batches started at different sites somewhat synchronized.
*/
gettimeofday(&tv2, NULL);
assert(tv2.tv_usec >= 0 && tv2.tv_usec < 1000000);
delay = (int)(tv2.tv_sec - tv1.tv_sec);
if (delay < wait) {
sleep(wait - delay);
@@ -954,7 +949,7 @@ where: server,\n\
fputs("\
notes: defname and search don't work; use fully-qualified names.\n\
this is DiG version " VSTRING "\n\
$Id: dig.c,v 8.42 2000/07/17 07:36:52 vixie Exp $\n\
$Id: dig.c,v 8.41 2000/04/20 07:36:04 vixie Exp $\n\
", stderr);
}
+2 -3
View File
@@ -13,7 +13,7 @@
## ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
## SOFTWARE.
# $Id: Makefile,v 1.6 2000/07/11 06:41:28 vixie Exp $
# $Id: Makefile,v 1.5 1999/08/08 17:51:01 vixie Exp $
DESTDIR=
CC= cc
@@ -44,8 +44,7 @@ INSTALL_LIB=-o bin -g bin
PS=ps
LDFLAGS=
CFLAGS= ${CDEBUG}
CPPFLAGS= -I${PORTINCL} -I${INCL}
CFLAGS= ${CDEBUG} -I${PORTINCL} -I${INCL}
PROG= dnskeygen
SRCS= dnskeygen.c
+2 -3
View File
@@ -13,7 +13,7 @@
## ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
## SOFTWARE.
# $Id: Makefile,v 8.25 2000/07/11 06:41:29 vixie Exp $
# $Id: Makefile,v 8.24 1999/08/08 17:51:01 vixie Exp $
DESTDIR=
CC= cc
@@ -42,8 +42,7 @@ INSTALL_EXEC=
INSTALL_LIB=-o bin -g bin
LDFLAGS=
CFLAGS= ${CDEBUG}
CPPFLAGS= -I${PORTINCL} -I${INCL}
CFLAGS= ${CDEBUG} -I${PORTINCL} -I${INCL}
PROG= dnsquery
SRCS= ${PROG}.c
+2 -12
View File
@@ -80,12 +80,7 @@ main(int argc, char *argv[]) {
case 'p' : res.retrans = atoi(optarg);
break;
case 'h' : if (strlen(optarg) >= sizeof(name)) {
fprintf(stderr,
"Domain name too long (%s)\n", optarg);
exit(-1);
} else
strcpy(name, optarg);
case 'h' : strcpy(name, optarg);
break;
case 'c' : {
@@ -163,12 +158,7 @@ main(int argc, char *argv[]) {
}
}
if (optind < argc)
if (strlen(argv[optind]) >= sizeof(name)) {
fprintf(stderr,
"Domain name too long (%s)\n", argv[optind]);
exit(-1);
} else
strcpy(name, argv[optind]);
strcpy(name, argv[optind]);
len = sizeof(answer);
+2 -3
View File
@@ -13,7 +13,7 @@
## ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
## SOFTWARE.
# $Id: Makefile,v 8.25 2000/07/11 06:41:29 vixie Exp $
# $Id: Makefile,v 8.24 1999/08/08 17:51:01 vixie Exp $
DESTDIR=
CC= cc
@@ -42,8 +42,7 @@ INSTALL_EXEC=
INSTALL_LIB=-o bin -g bin
LDFLAGS=
CFLAGS= ${CDEBUG}
CPPFLAGS= -I${PORTINCL} -I${INCL}
CFLAGS= ${CDEBUG} -I${PORTINCL} -I${INCL}
PROG= host
SRCS= ${PROG}.c
+2 -2
View File
@@ -1,5 +1,5 @@
#ifndef lint
static const char rcsid[] = "$Id: host.c,v 8.37 2000/07/11 07:06:14 vixie Exp $";
static const char rcsid[] = "$Id: host.c,v 8.36 2000/01/25 00:20:21 cyarnell Exp $";
#endif /* not lint */
/*
@@ -1043,7 +1043,7 @@ pr_rr(const u_char *cp, const u_char *msg, FILE *file, int filter) {
cp += sizeof(u_short);
cp = (u_char *)pr_cdname(cp, msg, name, sizeof(name));
if (doprint)
fprintf(file, " %s", name);
fprintf(file,"%s",name);
break;
case ns_t_naptr:
+2 -5
View File
@@ -13,7 +13,7 @@
## ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
## SOFTWARE.
# $Id: Makefile,v 1.6 2000/07/17 07:15:08 vixie Exp $
# $Id: Makefile,v 1.4 2000/05/09 07:02:22 vixie Exp $
DESTDIR=
CC= cc
@@ -46,8 +46,7 @@ STRIP=-s
PS=ps
LDFLAGS=
CFLAGS= ${CDEBUG}
CPPFLAGS= -I${PORTINCL} -I${INCL} -I${TOP}/lib/irs ${DEFS}
CFLAGS= ${CDEBUG} -I${PORTINCL} -I${INCL} -I${TOP}/lib/irs ${DEFS}
VER= LOCAL-`date +%y%m%d.%H%M%S`
HOSTNAMECMD= hostname || uname -n
@@ -62,8 +61,6 @@ all: ${PROG}${EXE}
${PROG}${EXE}: irpd.${O} tmp_version.${O} ${LIBBIND}
${CC} ${CDEBUG} ${LDFLAGS} -o ${PROG}${EXE} ${OBJS} tmp_version.${O} \
${LIBBIND} ${SYSLIBS}
.c.${O}:
${CC} ${CPPFLAGS} ${CFLAGS} ${BOUNDS} -c $*.c
tmp_version.${O}: tmp_version.c
+2 -3
View File
@@ -13,7 +13,7 @@
## ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
## SOFTWARE.
# $Id: Makefile,v 1.7 2000/07/11 06:41:30 vixie Exp $
# $Id: Makefile,v 1.6 1999/08/08 17:51:01 vixie Exp $
DESTDIR=
CC= cc
@@ -41,8 +41,7 @@ INSTALL_EXEC=
INSTALL_LIB=-o bin -g bin
LDFLAGS=
CFLAGS= ${CDEBUG}
CPPFLAGS= -I${PORTINCL} -I${INCL}
CFLAGS= ${CDEBUG} -I${PORTINCL} -I${INCL}
PROG= mkservdb
SRCS= ${PROG}.c
+2 -3
View File
@@ -13,7 +13,7 @@
## ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
## SOFTWARE.
# $Id: Makefile,v 1.2 2000/07/11 06:41:33 vixie Exp $
# $Id: Makefile,v 1.1 1999/01/07 02:09:37 vixie Exp $
DESTDIR=
CC= cc
@@ -41,8 +41,7 @@ INSTALL_EXEC=
INSTALL_LIB=-o bin -g bin
LDFLAGS=
CFLAGS= ${CDEBUG}
CPPFLAGS= -I${PORTINCL} -I${INCL}
CFLAGS= ${CDEBUG} -I${PORTINCL} -I${INCL}
PROG= named-bootconf
+2 -3
View File
@@ -13,7 +13,7 @@
## ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
## SOFTWARE.
# $Id: Makefile,v 8.30 2000/07/11 06:41:34 vixie Exp $
# $Id: Makefile,v 8.29 1999/08/08 17:51:02 vixie Exp $
DESTDIR=
CC= cc
@@ -45,8 +45,7 @@ INSTALL_LIB=-o bin -g bin
PS=ps
LDFLAGS=
CFLAGS= ${CDEBUG}
CPPFLAGS= -I${PORTINCL} -I${INCL}
CFLAGS= ${CDEBUG} -I${PORTINCL} -I${INCL}
NAMED_OBJS= \
../named/db_glue.${O} ../named/ns_glue.${O} ../named/tmp_version.${O}
+2 -5
View File
@@ -131,7 +131,7 @@ char copyright[] =
#if !defined(lint) && !defined(SABER)
static const char sccsid[] = "@(#)named-xfer.c 4.18 (Berkeley) 3/7/91";
static const char rcsid[] = "$Id: named-xfer.c,v 8.94 2000/07/11 05:38:27 vixie Exp $";
static const char rcsid[] = "$Id: named-xfer.c,v 8.93 2000/04/20 07:33:47 vixie Exp $";
#endif /* not lint */
#include "port_before.h"
@@ -1216,7 +1216,6 @@ getzone(struct zoneinfo *zp, u_int32_t serial_no, int port) {
* the response.
*/
loop_cnt = 0;
bp = NULL;
do {
u_char *cp4;
u_short type, class, dlen;
@@ -1228,9 +1227,6 @@ getzone(struct zoneinfo *zp, u_int32_t serial_no, int port) {
}
tmp += n;
if (loop_cnt == 0)
bp = tmp;
/* Are type, class, and ttl OK? */
cp4 = tmp; /* Leave tmp pointing to type field */
if (eom - cp4 < 3 * INT16SZ + INT32SZ) {
@@ -1251,6 +1247,7 @@ getzone(struct zoneinfo *zp, u_int32_t serial_no, int port) {
break;
}
if ((methode == ISIXFR) && (loop_cnt == 0)) {
bp = tmp;
soa_cnt++;
badsoa_msg = soa_zinfo(&zp_finish, tmp, eom);
if (badsoa_msg)
+2 -3
View File
@@ -13,7 +13,7 @@
## ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
## SOFTWARE.
# $Id: Makefile,v 8.50 2000/07/11 06:41:32 vixie Exp $
# $Id: Makefile,v 8.49 2000/05/09 07:02:22 vixie Exp $
# $FreeBSD$
DESTDIR=
@@ -48,8 +48,7 @@ INSTALL_LIB=-o bin -g bin
PS=ps
LDFLAGS=
CFLAGS= ${CDEBUG}
CPPFLAGS= -I${PORTINCL} -I${INCL} ${DEFS}
CFLAGS= ${CDEBUG} -I${PORTINCL} -I${INCL} ${DEFS}
VER= LOCAL-`date +%Y%m%d.%H%M%S`
HOSTNAMECMD= hostname || uname -n
+2 -2
View File
@@ -1,6 +1,6 @@
#if !defined(lint) && !defined(SABER)
static const char sccsid[] = "@(#)db_load.c 4.38 (Berkeley) 3/2/91";
static const char rcsid[] = "$Id: db_load.c,v 8.104 2000/07/17 07:48:09 vixie Exp $";
static const char rcsid[] = "$Id: db_load.c,v 8.103 2000/04/21 06:54:02 vixie Exp $";
#endif /* not lint */
/*
@@ -530,7 +530,7 @@ db_load(const char *filename, const char *in_origin,
ns_warning(ns_log_load,
"Zone \"%s\" (file %s): %s",
zp->z_origin, filename,
"No default TTL ($TTL <value>) set, using SOA minimum instead");
"No default TTL set using SOA minimum instead");
default_warn = 0;
}
ttl = (u_int32_t)default_ttl;
+2 -1
View File
@@ -1,6 +1,6 @@
/*
* from ns.h 4.33 (Berkeley) 8/23/90
* $Id: ns_glob.h,v 8.55 2000/07/20 22:50:38 vixie Exp $
* $Id: ns_glob.h,v 8.54 2000/04/21 06:54:07 vixie Exp $
*/
/*
@@ -209,6 +209,7 @@ DECL options server_options INIT(NULL);
DECL server_info nameserver_info INIT(NULL);
DECL key_info_list secretkey_info INIT(NULL);
DECL int main_needs_exit INIT(0);
DECL ip_match_list bogus_nameservers INIT(NULL);
DECL log_context log_ctx;
+1 -2
View File
@@ -1,5 +1,5 @@
#if !defined(lint) && !defined(SABER)
static const char rcsid[] = "$Id: ns_glue.c,v 8.17 2000/07/17 07:36:52 vixie Exp $";
static const char rcsid[] = "$Id: ns_glue.c,v 8.16 2000/04/21 06:50:18 vixie Exp $";
#endif /* not lint */
/*
@@ -252,7 +252,6 @@ void
gettime(struct timeval *ttp) {
if (gettimeofday(ttp, NULL) < 0)
ns_error(ns_log_default, "gettimeofday: %s", strerror(errno));
INSIST(ttp->tv_usec >= 0 && ttp->tv_usec < 1000000);
}
/*
+29 -34
View File
@@ -1,6 +1,6 @@
#if !defined(lint) && !defined(SABER)
static const char sccsid[] = "@(#)ns_main.c 4.55 (Berkeley) 7/1/91";
static const char rcsid[] = "$Id: ns_main.c,v 8.126 2000/07/20 22:50:39 vixie Exp $";
static const char rcsid[] = "$Id: ns_main.c,v 8.125 2000/04/21 06:54:08 vixie Exp $";
#endif /* not lint */
/*
@@ -163,9 +163,8 @@ static u_int16_t nsid_state2;
static int nsid_algorithm;
typedef void (*handler)(void);
static int needs = 0, needs_exit = 0;
static int needs = 0;
static handler handlers[main_need_num];
static void need_waitfunc(evContext, void *, const void *);
static struct qstream *sq_add(void);
static int opensocket_d(interface *),
@@ -197,7 +196,7 @@ static void stream_send(evContext, void *, int,
static int only_digits(const char *);
static void init_needs(void),
handle_needs(void);
handle_need(void);
#ifndef HAVE_CUSTOM
static void custom_init(void),
@@ -526,16 +525,21 @@ main(int argc, char *argv[], char *envp[]) {
ns_notice(ns_log_default, "Ready to answer queries.");
gettime(&tt);
prime_cache();
while (!needs_exit) {
while (!main_needs_exit) {
evEvent event;
ns_debug(ns_log_default, 15, "main loop");
if (needs != 0)
handle_needs();
else if (evGetNext(ev, &event, EV_WAIT) != -1)
if (needs != 0) {
/* Drain outstanding events; handlers ~block~. */
while (evGetNext(ev, &event, EV_POLL) != -1)
INSIST_ERR(evDispatch(ev, event) != -1);
INSIST_ERR(errno == EINTR || errno == EWOULDBLOCK);
handle_need();
} else if (evGetNext(ev, &event, EV_WAIT) != -1) {
INSIST_ERR(evDispatch(ev, event) != -1);
else
} else {
INSIST_ERR(errno == EINTR);
}
}
ns_info(ns_log_default, "named shutting down");
#ifdef BIND_UPDATE
@@ -2546,6 +2550,11 @@ deallocate_everything(void) {
}
}
static void
ns_exit(void) {
main_needs_exit++;
}
static void
ns_restart(void) {
ns_info(ns_log_default, "named restarting");
@@ -2630,7 +2639,7 @@ init_needs(void) {
handlers[main_need_zoneload] = loadxfer;
handlers[main_need_dump] = doadump;
handlers[main_need_statsdump] = ns_stats;
handlers[main_need_exit] = wild;
handlers[main_need_exit] = ns_exit;
handlers[main_need_qrylog] = toggle_qrylog;
handlers[main_need_debug] = use_desired_debug;
handlers[main_need_restart] = ns_restart;
@@ -2639,32 +2648,20 @@ init_needs(void) {
}
static void
handle_needs(void) {
int need, queued = 0;
handle_need(void) {
int need;
ns_debug(ns_log_default, 15, "handle_needs()");
block_signals();
ns_debug(ns_log_default, 15, "handle_need()");
for (need = 0; need < main_need_num; need++)
if ((needs & (1 << need)) != 0) {
INSIST_ERR(evWaitFor(ev, handle_needs, need_waitfunc,
handlers[need], NULL) != -1);
queued++;
/* Turn off flag first, handlers ~turn~ it back on. */
block_signals();
needs &= ~(1 << need);
unblock_signals();
(handlers[need])();
return;
}
needs = 0;
unblock_signals();
ns_debug(ns_log_default, 15, "handle_needs(): queued %d", queued);
if (queued != 0) {
INSIST_ERR(evDo(ev, handle_needs) != -1);
return;
}
ns_panic(ns_log_default, 1, "ns_handle_needs: queued == 0", NULL);
}
static void
need_waitfunc(evContext ctx, void *uap, const void *tag) {
handler hand = (handler) uap;
(*hand)();
ns_panic(ns_log_default, 1, "handle_need() found no needs", NULL);
}
void
@@ -2678,8 +2675,6 @@ ns_need(enum need need) {
void
ns_need_unsafe(enum need need) {
needs |= (1 << need);
if (need == main_need_exit)
needs_exit = 1;
}
void
+6 -8
View File
@@ -1,6 +1,6 @@
#if !defined(lint) && !defined(SABER)
static const char sccsid[] = "@(#)ns_maint.c 4.39 (Berkeley) 3/2/91";
static const char rcsid[] = "$Id: ns_maint.c,v 8.105 2000/07/17 07:25:00 vixie Exp $";
static const char rcsid[] = "$Id: ns_maint.c,v 8.103 2000/04/23 02:18:58 vixie Exp $";
#endif /* not lint */
/*
@@ -586,12 +586,12 @@ qserial_answer(struct qinfo *qp) {
if (qs->serial != zp->z_serial)
ns_notice(ns_log_xfer_in,
"Zone \"%s\" (%s) SOA serial# (%lu) rcvd from [%s] is < ours (%lu)%s",
"Zone \"%s\" (%s) SOA serial# (%lu) rcvd from [%s] is < ours (%lu)%s",
zp->z_origin, p_class(zp->z_class),
(u_long) qs->serial,
qs->serial,
inet_ntoa(qs->ns_addr.sin_addr),
(u_long) zp->z_serial,
qp->q_naddr!=1 ? ": skipping" : "");
zp->z_serial, qp->q_naddr != 1 ?
": skipping" : "");
qs->serial = 0;
continue;
}
@@ -834,10 +834,8 @@ startxfer(struct zoneinfo *zp) {
return;
}
if ((pid = spawnxfer(argv, zp)) == -1) {
if ((pid = spawnxfer(argv, zp)) == -1)
unlink(tsig_name);
return;
}
xferstatus[i].xfer_state = XFER_RUNNING;
xferstatus[i].xfer_pid = pid; /* XXX - small race condition here if we
+10 -25
View File
@@ -1,6 +1,6 @@
#if !defined(lint) && !defined(SABER)
static const char sccsid[] = "@(#)ns_req.c 4.47 (Berkeley) 7/1/91";
static const char rcsid[] = "$Id: ns_req.c,v 8.119 2000/08/21 05:57:09 vixie Exp $";
static const char rcsid[] = "$Id: ns_req.c,v 8.113 2000/04/21 06:54:11 vixie Exp $";
#endif /* not lint */
/*
@@ -208,7 +208,6 @@ ns_req(u_char *msg, int msglen, int buflen, struct qstream *qsp,
key = find_key(buf, NULL);
if (key == NULL) {
error = ns_r_badkey;
hp->rcode = ns_r_notauth;
ns_debug(ns_log_default, 1,
"ns_req: TSIG verify failed - unknown key %s",
buf);
@@ -271,11 +270,7 @@ ns_req(u_char *msg, int msglen, int buflen, struct qstream *qsp,
* safely assume these are always 0 when a query
* comes in.
*/
#ifdef BIND_NOTIFY
if (hp->opcode != ns_o_notify)
#endif
hp->aa = 0;
hp->ra = 0;
hp->aa = hp->ra = 0;
ra = (NS_OPTION_P(OPTION_NORECURSE) == 0);
if (error == NOERROR)
@@ -366,7 +361,6 @@ ns_req(u_char *msg, int msglen, int buflen, struct qstream *qsp,
hp->ancount = htons(0);
hp->nscount = htons(0);
hp->arcount = htons(0);
cp = msg + HFIXEDSZ;
}
/*
@@ -464,17 +458,6 @@ req_notify(HEADER *hp, u_char **cpp, u_char *eom, u_char *msg,
char dnbuf[MAXDNAME];
struct zoneinfo *zp;
/* valid notify's are authoritative */
if (!hp->aa) {
ns_debug(ns_log_notify, 1,
"FORMERR Notify request without AA");
#ifdef not_yet
hp->rcode = ns_r_formerr;
return (Finish);
#endif
}
hp->aa = 0;
/* valid notify's have one question */
if (ntohs(hp->qdcount) != 1) {
ns_debug(ns_log_notify, 1,
@@ -573,7 +556,6 @@ req_notify(HEADER *hp, u_char **cpp, u_char *eom, u_char *msg,
}
noerror:
hp->rcode = ns_r_noerror;
hp->aa = 1;
return (Finish);
refuse:
hp->rcode = ns_r_refused;
@@ -605,6 +587,9 @@ req_query(HEADER *hp, u_char **cpp, u_char *eom, struct qstream *qsp,
struct databuf *dp;
DST_KEY *in_key = (in_tsig != NULL) ? in_tsig->key : NULL;
nameserIncr(from.sin_addr, nssRcvdQ);
nsp[0] = NULL;
@@ -742,7 +727,7 @@ req_query(HEADER *hp, u_char **cpp, u_char *eom, struct qstream *qsp,
nameserIncr(from.sin_addr, nssRcvdAXFR);
hp->rd = 0; /* Recursion not possible. */
}
*buflenp -= (*msglenp - HFIXEDSZ);
*buflenp -= *msglenp;
count = 0;
founddata = 0;
dname = dnbuf;
@@ -1161,7 +1146,7 @@ req_query(HEADER *hp, u_char **cpp, u_char *eom, struct qstream *qsp,
if (qsp == NULL)
return (Finish);
else {
if (!ixfr_found && type == ns_t_ixfr) {
if (!ixfr_found) {
qsp->flags |= STREAM_AXFRIXFR;
hp->qdcount = htons(1);
}
@@ -1424,13 +1409,13 @@ req_iquery(HEADER *hp, u_char **cpp, u_char *eom, int *buflenp,
GETSHORT(class, *cpp);
*cpp += INT32SZ; /* ttl */
GETSHORT(dlen, *cpp);
if (*cpp + dlen != eom) {
*cpp += dlen;
if (*cpp != eom) {
ns_debug(ns_log_default, 1,
"FORMERR IQuery message length off");
hp->rcode = ns_r_formerr;
return (Finish);
}
*cpp += dlen;
/*
* not all inverse queries are handled.
@@ -1775,7 +1760,7 @@ make_rr(const char *name, struct databuf *dp, u_char *buf,
/* Replacement */
ns_debug(ns_log_default, 1, "Replacement = %s", cp1);
n = dn_comp((char *)cp1, cp, buflen, comp_ptrs, edp);
n = dn_comp((char *)cp1, cp, buflen, dnptrs, edp);
ns_debug(ns_log_default, 1, "dn_comp's n = %u", n);
if (n < 0)
goto cleanup;
+2 -4
View File
@@ -1,6 +1,6 @@
#if !defined(lint) && !defined(SABER)
static const char sccsid[] = "@(#)ns_resp.c 4.65 (Berkeley) 3/3/91";
static const char rcsid[] = "$Id: ns_resp.c,v 8.144 2000/07/11 08:26:09 vixie Exp $";
static const char rcsid[] = "$Id: ns_resp.c,v 8.143 2000/05/09 07:38:38 vixie Exp $";
#endif /* not lint */
/*
@@ -614,8 +614,7 @@ ns_resp(u_char *msg, int msglen, struct sockaddr_in from, struct qstream *qsp)
*/
if (hp->opcode == NS_NOTIFY_OP) {
ns_info(ns_log_notify,
"Received NOTIFY answer (%sAA) from %s for \"%s %s %s\"",
hp->aa ? "" : "!",
"Received NOTIFY answer from %s for \"%s %s %s\"",
inet_ntoa(from.sin_addr),
*(qp->q_name) ? qp->q_name : ".",
p_class(qp->q_class), p_type(qp->q_type));
@@ -2368,7 +2367,6 @@ sysquery(const char *dname, int class, int type,
hp = (HEADER *) qp->q_msg;
hp->id = qp->q_nsid = htons(nsid_next());
hp->rd = (qp->q_addr[qp->q_curaddr].forwarder ? 1 : 0);
hp->aa = (opcode == NS_NOTIFY_OP);
/* First check for an already pending query for this data. */
for (oqp = nsqhead; oqp != NULL; oqp = oqp->q_link) {
+1 -4
View File
@@ -1,6 +1,6 @@
#if !defined(lint) && !defined(SABER)
static const char sccsid[] = "@(#)ns_main.c 4.55 (Berkeley) 7/1/91";
static const char rcsid[] = "$Id: ns_signal.c,v 8.13 2000/07/11 07:10:12 vixie Exp $";
static const char rcsid[] = "$Id: ns_signal.c,v 8.12 2000/04/21 06:54:12 vixie Exp $";
#endif /* not lint */
/*
@@ -245,9 +245,6 @@ init_signals(void) {
"sigaction failed in set_signal_handler(%d): %s",
sighandlers[sh].sig, strerror(errno));
}
/* Unblock all signals that we expect to handle. */
if (sigprocmask(SIG_UNBLOCK, &mask, NULL) < 0)
ns_panic(ns_log_os, 1, "sigblock failed: %s", strerror(errno));
}
void
+57 -77
View File
@@ -1,5 +1,5 @@
#if !defined(lint) && !defined(SABER)
static const char rcsid[] = "$Id: ns_update.c,v 8.81 2000/07/11 09:25:14 vixie Exp $";
static const char rcsid[] = "$Id: ns_update.c,v 8.78 2000/04/23 02:19:00 vixie Exp $";
#endif /* not lint */
/*
@@ -286,24 +286,16 @@ printupdatelog(struct sockaddr_in srcaddr,
if (fp == NULL)
return;
if (zp->z_maintain_ixfr_base == 1) {
ifp = open_ixfr_log(zp);
if (ifp == NULL) {
(void) close_transaction_log(zp, fp);
return;
}
ifp = open_ixfr_log(zp);
if (ifp == NULL) {
(void) close_transaction_log(zp, fp);
return;
}
else
ifp = NULL;
sprintf(time, "at %lu", (u_long)tt.tv_sec);
fprintf(fp, "[DYNAMIC_UPDATE] id %u from %s %s (named pid %ld):\n",
ntohs(hp->id), sin_ntoa(srcaddr), time, (long)getpid());
if (ifp)
fprintf(ifp,
"[DYNAMIC_UPDATE] id %u from %s %s (named pid %ld):\n",
ntohs(hp->id), sin_ntoa(srcaddr), time,
(long)getpid());
fprintf(ifp, "[DYNAMIC_UPDATE] id %u from %s %s (named pid %ld):\n",
ntohs(hp->id), sin_ntoa(srcaddr), time, (long)getpid());
for (rrecp = HEAD(*updlist); rrecp != NULL; rrecp = NEXT(rrecp, r_link)) {
INSIST(zp == &zones[rrecp->r_zone]);
switch (rrecp->r_section) {
@@ -311,11 +303,9 @@ printupdatelog(struct sockaddr_in srcaddr,
fprintf(fp, "zone:\torigin %s class %s serial %u\n",
zp->z_origin, p_class(zp->z_class),
old_serial);
if (ifp)
fprintf(ifp,
"zone:\torigin %s class %s serial %u\n",
zp->z_origin, p_class(zp->z_class),
old_serial);
fprintf(ifp, "zone:\torigin %s class %s serial %u\n",
zp->z_origin, p_class(zp->z_class),
old_serial);
break;
case S_PREREQ:
opcode = rrecp->r_opcode;
@@ -342,17 +332,15 @@ printupdatelog(struct sockaddr_in srcaddr,
while (dp != NULL) {
if (dp->d_rcode == 0 &&
!was_added(updlist, dp)) {
if (ifp) {
fprintf(ifp,
"update:\t{%s} %s. %u %s %s ",
"delete",
rrecp->r_dname,
dp->d_ttl,
p_class(dp->d_class),
p_type(dp->d_type));
(void) rdata_dump(dp, ifp);
fprintf(ifp, "\n");
}
fprintf(ifp,
"update:\t{%s} %s. %u %s %s ",
"delete",
rrecp->r_dname,
dp->d_ttl,
p_class(dp->d_class),
p_type(dp->d_type));
(void) rdata_dump(dp, ifp);
fprintf(ifp, "\n");
}
dp = dp->d_next;
}
@@ -365,15 +353,13 @@ printupdatelog(struct sockaddr_in srcaddr,
dp->d_type != T_SOA &&
(dp->d_mark & D_MARK_ADDED) != 0 &&
!was_deleted(updlist, dp)) {
if (ifp) {
fprintf(ifp, "update:\t{%s} %s. ",
opcodes[opcode], rrecp->r_dname);
fprintf(ifp, "%u ", rrecp->r_ttl);
fprintf(ifp, "%s ", p_class(zp->z_class));
fprintf(ifp, "%s ", p_type(rrecp->r_type));
(void) rdata_dump(dp, ifp);
fprintf(ifp, "\n");
}
fprintf(ifp, "update:\t{%s} %s. ",
opcodes[opcode], rrecp->r_dname);
fprintf(ifp, "%u ", rrecp->r_ttl);
fprintf(ifp, "%s ", p_class(zp->z_class));
fprintf(ifp, "%s ", p_type(rrecp->r_type));
(void) rdata_dump(dp, ifp);
fprintf(ifp, "\n");
}
/* Update log. */
fprintf(fp, "update:\t{%s} %s. ",
@@ -412,15 +398,13 @@ printupdatelog(struct sockaddr_in srcaddr,
dp->d_type == T_SOA &&
(dp->d_mark & D_MARK_ADDED) != 0 &&
!was_deleted(updlist, dp)) {
if (ifp) {
fprintf(ifp, "update:\t{%s} %s. ",
opcodes[opcode], rrecp->r_dname);
fprintf(ifp, "%u ", rrecp->r_ttl);
fprintf(ifp, "%s ", p_class(zp->z_class));
fprintf(ifp, "%s ", p_type(rrecp->r_type));
(void) rdata_dump(dp, ifp);
fprintf(ifp, "\n[END_DELTA]\n");
}
fprintf(ifp, "update:\t{%s} %s. ",
opcodes[opcode], rrecp->r_dname);
fprintf(ifp, "%u ", rrecp->r_ttl);
fprintf(ifp, "%s ", p_class(zp->z_class));
fprintf(ifp, "%s ", p_type(rrecp->r_type));
(void) rdata_dump(dp, ifp);
fprintf(ifp, "\n[END_DELTA]\n");
}
break;
default:
@@ -429,8 +413,7 @@ printupdatelog(struct sockaddr_in srcaddr,
}
fprintf(fp, "\n");
(void) close_transaction_log(zp, fp);
if (ifp)
(void) close_ixfr_log(zp, ifp);
(void) close_ixfr_log(zp, ifp);
}
static void
@@ -564,7 +547,7 @@ process_prereq(ns_updrec *ur, int *rcodep, u_int16_t zclass) {
*/
if (rdp && (rdp->d_mark & D_MARK_FOUND) != 0) {
/* Already processed. */
return (1);
return (1);
}
if (ttl != 0) {
ns_debug(ns_log_update, 1,
@@ -2979,35 +2962,32 @@ incr_serial(struct zoneinfo *zp) {
old_serial, serial, checked_ctime(&t));
if (close_transaction_log(zp, fp)<0)
return (-1);
if (zp->z_maintain_ixfr_base) {
ifp = open_ixfr_log(zp);
if (ifp == NULL)
return (-1);
dp = findzonesoa(zp);
if (dp) {
olddp = memget(DATASIZE(dp->d_size));
if (olddp != NULL) {
memcpy(olddp, dp, DATASIZE(dp->d_size));
cp = findsoaserial(olddp->d_data);
PUTLONG(old_serial, cp);
fprintf(ifp, "update: {delete} %s. %u %s %s ",
zp->z_origin, dp->d_ttl,
p_class(dp->d_class),
p_type(dp->d_type));
(void) rdata_dump(olddp, ifp);
fprintf(ifp, "\n");
memput(olddp, DATASIZE(dp->d_size));
}
fprintf(ifp, "update: {add} %s. %u %s %s ",
ifp = open_ixfr_log(zp);
if (ifp == NULL)
return (-1);
dp = findzonesoa(zp);
if (dp) {
olddp = memget(DATASIZE(dp->d_size));
if (olddp != NULL) {
memcpy(olddp, dp, DATASIZE(dp->d_size));
cp = findsoaserial(olddp->d_data);
PUTLONG(old_serial, cp);
fprintf(ifp, "update: {delete} %s. %u %s %s ",
zp->z_origin, dp->d_ttl,
p_class(dp->d_class), p_type(dp->d_type));
(void) rdata_dump(dp, ifp);
p_class(dp->d_class), p_type(dp->d_type));
(void) rdata_dump(olddp, ifp);
fprintf(ifp, "\n");
memput(olddp, DATASIZE(dp->d_size));
}
fprintf(ifp, "[END_DELTA]\n");
if (close_ixfr_log(zp, ifp) < 0)
return (-1);
fprintf(ifp, "update: {add} %s. %u %s %s ",
zp->z_origin, dp->d_ttl,
p_class(dp->d_class), p_type(dp->d_type));
(void) rdata_dump(dp, ifp);
fprintf(ifp, "\n");
}
fprintf(ifp, "[END_DELTA]\n");
if (close_ixfr_log(zp, ifp)<0)
return (-1);
/*
* This shouldn't happen, but we check to be sure.
+2 -3
View File
@@ -13,7 +13,7 @@
## ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
## SOFTWARE.
# $Id: Makefile,v 1.16 2000/07/11 06:41:34 vixie Exp $
# $Id: Makefile,v 1.15 1999/08/08 17:51:02 vixie Exp $
DESTDIR=
CC= cc
@@ -44,8 +44,7 @@ INSTALL_LIB=-o bin -g bin
PS=ps
LDFLAGS=
CFLAGS= ${CDEBUG}
CPPFLAGS= -I${PORTINCL} -I${INCL} ${DEFS}
CFLAGS= ${CDEBUG} -I${PORTINCL} -I${INCL} ${DEFS}
PROG= ndc
SRCS= ${PROG}.c
+3 -4
View File
@@ -13,7 +13,7 @@
## ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
## SOFTWARE.
# $Id: Makefile,v 8.25 2000/07/11 06:41:35 vixie Exp $
# $Id: Makefile,v 8.24 1999/10/13 01:14:46 vixie Exp $
DESTDIR=
CC= cc
@@ -42,9 +42,8 @@ INSTALL_EXEC=
INSTALL_LIB=-o bin -g bin
LDFLAGS=
DEFS= -D_PATH_HELPFILE=\"${DESTDIR}${DESTHELP}/nslookup.help\"
CFLAGS= ${CDEBUG}
CPPFLAGS= -I${PORTINCL} -I${INCL} ${DEFS}
DEFS= -D_PATH_HELPFILE=\"${DESTHELP}/nslookup.help\"
CFLAGS= ${CDEBUG} -I${PORTINCL} -I${INCL} ${DEFS}
PROG= nslookup
CSRCS= main.c getinfo.c debug.c send.c skip.c list.c subr.c
+2 -9
View File
@@ -54,7 +54,7 @@
#ifndef lint
static const char sccsid[] = "@(#)debug.c 5.26 (Berkeley) 3/21/91";
static const char rcsid[] = "$Id: debug.c,v 8.16 2000/07/11 05:59:32 vixie Exp $";
static const char rcsid[] = "$Id: debug.c,v 8.15 1999/10/13 16:39:16 vixie Exp $";
#endif /* not lint */
/*
@@ -622,15 +622,8 @@ Print_rr(const u_char *ocp, const u_char *msg, const u_char *eom, FILE *file) {
case T_KEY:
default: {
char buf[2048]; /* XXX need to malloc/realloc. */
char rrname[NS_MAXDNAME];
cp2 = p_fqnname(ocp, msg, NS_MAXCDNAME, rrname, sizeof rrname);
if (cp2 == NULL) {
fprintf(file, "(name truncated?)\n");
return (NULL); /* compression error */
}
if (ns_sprintrrf(msg, eom - msg, rrname, (ns_class)class,
if (ns_sprintrrf(msg, eom - msg, "?", (ns_class)class,
(ns_type)type, rrttl, cp1, dlen, NULL, NULL,
buf, sizeof buf) < 0) {
perror("ns_sprintrrf");
+5 -5
View File
@@ -54,7 +54,7 @@
#ifndef lint
static const char sccsid[] = "@(#)getinfo.c 5.26 (Berkeley) 3/21/91";
static const char rcsid[] = "$Id: getinfo.c,v 8.16 2000/07/11 04:36:26 vixie Exp $";
static const char rcsid[] = "$Id: getinfo.c,v 8.15 1999/10/13 16:39:16 vixie Exp $";
#endif /* not lint */
/*
@@ -651,11 +651,11 @@ GetHostInfoByName(nsAddrPtr, queryClass, queryType, name, hostPtr, isServer)
* - there is at least one dot, there is no trailing dot,
* and RES_DNSRCH is set.
*/
if ((n == 0 && (res.options & RES_DEFNAMES) != 0) ||
(n != 0 && *--cp != '.' && (res.options & RES_DNSRCH) != 0))
for (domain = res.dnsrch; *domain != NULL; domain++) {
if ((n == 0 && res.options & RES_DEFNAMES) ||
(n != 0 && *--cp != '.' && res.options & RES_DNSRCH))
for (domain = res.dnsrch; *domain; domain++) {
result = GetHostDomain(nsAddrPtr, queryClass, queryType,
name, *domain, hostPtr, isServer);
name, *domain, hostPtr, isServer);
/*
* If no server present, give up.
* If name isn't found in this domain,
+2 -3
View File
@@ -13,7 +13,7 @@
## ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
## SOFTWARE.
# $Id: Makefile,v 8.25 2000/07/11 06:41:35 vixie Exp $
# $Id: Makefile,v 8.24 1999/08/08 17:51:02 vixie Exp $
DESTDIR=
CC= cc
@@ -42,8 +42,7 @@ INSTALL_EXEC=
INSTALL_LIB=-o bin -g bin
LDFLAGS=
CFLAGS= ${CDEBUG}
CPPFLAGS= -I${PORTINCL} -I${INCL}
CFLAGS= ${CDEBUG} -I${PORTINCL} -I${INCL}
PROG= nsupdate
SRCS= ${PROG}.c
+4 -2
View File
@@ -1,5 +1,5 @@
#if !defined(lint) && !defined(SABER)
static const char rcsid[] = "$Id: nsupdate.c,v 8.24 2000/07/11 06:32:01 vixie Exp $";
static const char rcsid[] = "$Id: nsupdate.c,v 8.23 2000/02/04 07:51:04 vixie Exp $";
#endif /* not lint */
/*
@@ -168,6 +168,8 @@ main(argc, argv)
char *keyfile=NULL, *keyname=NULL, *p, *pp;
int file_major, file_minor, alg;
progname = argv[0];
while ((c = getopt(argc, argv, "dsvk:n:")) != -1) {
@@ -194,7 +196,7 @@ main(argc, argv)
*colon='\0';
break;
}
case 'n':
case 'n':
keyname=optarg;
break;
default:
+3 -3
View File
@@ -12,9 +12,9 @@
<A NAME="Syntax"><H3>Syntax</H3></A>
<PRE>
<VAR>address_match_list</VAR> = <VAR>address_match_element</VAR> [ <VAR>address_match_element</VAR> ... ]
<VAR>address_match_list</VAR> = 1*<VAR>address_match_element</VAR>
<VAR>address_match_element</VAR> = [ "!" ] ( <VAR><A HREF="docdef.html">ip_address</A></VAR> / <VAR><A HREF="docdef.html">ip_prefix</A></VAR> / <VAR><A HREF="acl.html">acl_name</A></VAR> / <VAR><A HREF="docdef.html">"key" key_id</A></VAR> / { <VAR>address_match_list</VAR> } ) ;
<VAR>address_match_element</VAR> = [ "!" ] (<VAR><A HREF="docdef.html">address_match_list</A></VAR> / <VAR><A HREF="docdef.html">ip_address</A></VAR> / <VAR><A HREF="docdef.html">ip_prefix</A></VAR> / <VAR><A HREF="acl.html">acl_name</A></VAR> / <VAR><A HREF="docdef.html">"key" key_id</A></VAR>) ";"
</PRE>
<HR>
@@ -94,7 +94,7 @@ fall through.
<HR>
<ADDRESS>
Last Updated: $Id: address_list.html,v 1.9 1999/12/03 02:20:42 gson Exp $
Last Updated: $Id: address_list.html,v 1.8 1999/09/15 20:28:00 cyarnell Exp $
</ADDRESS>
</BODY>
</HTML>
+3 -3
View File
@@ -11,9 +11,9 @@
<UL>
<LI>DNS Dynamic Updates
(<A HREF=http://www.ietf.org/rfc/rfc2136.txt>RFC 2136</A>)</LI>
(<A HREF=http://ds.internic.net/rfc/rfc2136.txt>RFC 2136</A>)</LI>
<LI>DNS Change Notification
(<A HREF=http://www.ietf.org/rfc/rfc1996.txt>RFC 1996</A>)</LI>
(<A HREF=http://ds.internic.net/rfc/rfc1996.txt>RFC 1996</A>)</LI>
<LI>Completely new configuration syntax</LI>
<LI>Flexible, categorized logging system</LI>
<LI>IP-address-based access control for queries, zone transfers, and
@@ -58,7 +58,7 @@ and generally kind hearted folk such as yourself.
<HR>
<ADDRESS>
Last Updated: $Id: index.html,v 1.6 1999/12/28 10:03:40 cyarnell Exp $
Last Updated: $Id: index.html,v 1.5 1998/11/24 01:44:43 marka Exp $
</ADDRESS>
</BODY>
+4 -4
View File
@@ -11,7 +11,7 @@
<P>
The Master File Format was initially defined in
<A HREF=http://www.ietf.org/rfc/rfc1035.txt>RFC 1035</A>
<A HREF=http://ds.internic.net/rfc/rfc1035.txt>RFC 1035</A>
and has subsequently been extended.
<P>
While the Master File Format is class independent all records in a
@@ -46,7 +46,7 @@ point.
set to that value otherwise the current <CODE>$ORIGIN</CODE> is used.
<I>NOTE: The behaviour when &lt;origin&gt; is specified differs from that
described in
<A HREF=http://www.ietf.org/rfc/rfc1035.txt>RFC 1035</A>.</I>
<A HREF=http://ds.internic.net/rfc/rfc1035.txt>RFC 1035</A>.</I>
<P>
The origin and current domain revert to the values they were prior to the
<CODE>$INCLUDE</CODE> once the file has been read.
@@ -57,7 +57,7 @@ Set the default Time To Live (TTL) for subsequent records with undefined
TTL's. Valid TTL's are of the range 0-2147483647.
<P>
<CODE>$TTL</CODE> is defined in
<A HREF=http://www.ietf.org/rfc/rfc2308.txt>RFC 2308</A>.
<A HREF=http://ds.internic.net/rfc/rfc2308.txt>RFC 2308</A>.
<H3>BIND Master File Extentions</H3>
<H4>$GENERATE</H4>
Syntax: <CODE>$GENERATE &lt;range&gt; &lt;lhs&gt; &lt;type&gt; &lt;rhs&gt;
@@ -67,7 +67,7 @@ Syntax: <CODE>$GENERATE &lt;range&gt; &lt;lhs&gt; &lt;type&gt; &lt;rhs&gt;
that only differ from each other by an iterator. <CODE>$GENERATE</CODE>
can be used to easily generate the sets of records required to support
sub /24 reverse delegations described in
<A HREF=http://www.ietf.org/rfc/rfc2317.txt>RFC 2317: Classless IN-ADDR.ARPA delegation</A>.
<A HREF=http://ds.internic.net/rfc/rfc2317.txt>RFC 2317: Classless IN-ADDR.ARPA delegation</A>.
<PRE>
$ORIGIN 0.0.192.IN-ADDR.ARPA.
+9 -7
View File
@@ -33,7 +33,7 @@ options {
[ rfc2308-type1 <VAR><A HREF="docdef.html">yes_or_no</A></VAR>; ]
[ use-id-pool <VAR><A HREF="docdef.html">yes_or_no</A></VAR>; ]
[ treat-cr-as-space <VAR><A HREF="docdef.html">yes_or_no</A></VAR>; ]
[ also-notify { <VAR><A HREF="docdef.html">ip_addr</A></VAR>; [ <VAR><A HREF="docdef.html">ip_addr</A></VAR>; ... ] }; ]
[ also-notify { <VAR><A HREF="docdef.html">ip_addr</A></VAR>; [ <VAR><A HREF="docdef.html">ip_addr</A></VAR>; ... ] };
[ forward ( only | first ); ]
[ forwarders { [ <VAR><A HREF="docdef.html">in_addr</A></VAR> ; [ <VAR><A HREF="docdef.html">in_addr</A></VAR> ; ... ] ] }; ]
[ check-names ( master | slave | response ) ( warn | fail | ignore); ]
@@ -65,7 +65,7 @@ options {
[ statistics-interval <VAR>number</VAR>; ]
[ <A HREF="#topology">topology</A> { <VAR>address_match_list</VAR> }; ]
[ <A HREF="#sortlist">sortlist</A> { <VAR>address_match_list</VAR> }; ]
[ rrset-order { <VAR>order_spec</VAR> ; [ <VAR>order_spec</VAR> ; ... ] }; ]
[ rrset-order { <VAR>order_spec</VAR> ; [ <VAR>order_spec</VAR> ; ... ] ] };
};
</PRE>
<HR>
@@ -189,10 +189,12 @@ becoming corrupted (at the cost of requiring more work from the client).
<DT><CODE>has-old-clients</CODE>
<DD>
Setting the option to <CODE>yes</CODE> is equivalent to setting the following
options: <CODE>auth-nxdomain yes;</CODE> and <CODE>rfc2308-type1 no;</CODE>.
The use of <CODE>has-old-clients</CODE> with <CODE>auth-nxdomain</CODE>
and <CODE>rfc2308-type1</CODE> is order dependent.
Setting the option to <CODE>yes</CODE> is equivalent to setting the follow
three options <CODE>auth-nxdomain yes;</CODE>, <CODE>maintain-ixfr-base
yes;</CODE> and <CODE>rfc2308-type1 no;</CODE>.
The use of <CODE>has-old-clients</CODE> with <CODE>auth-nxdomain</CODE>,
<CODE>maintain-ixfr-base</CODE> and <CODE>rfc2308-type1</CODE> is order
dependant.
<DT><CODE>host-statistics</CODE>
<DD>
@@ -806,7 +808,7 @@ request for the root servers to be accepted. Default 2.
<HR>
<ADDRESS>
Last Updated: $Id: options.html,v 1.40 2000/06/01 21:37:46 cyarnell Exp $
Last Updated: $Id: options.html,v 1.36 1999/10/13 20:57:05 cyarnell Exp $
</ADDRESS>
</BODY>
</HTML>
+4 -4
View File
@@ -23,10 +23,10 @@ zone <VAR><A HREF="docdef.html">domain_name</A></VAR> [ ( in | hs | hesiod | cha
[ allow-transfer { <VAR><A HREF="address_list.html">address_match_list</A></VAR> }; ]
[ dialup <VAR><A HREF="docdef.html">yes_or_no</A></VAR>; ]
[ notify <VAR><A HREF="docdef.html">yes_or_no</A></VAR>; ]
[ also-notify { <VAR><A HREF="docdef.html">ip_addr</A></VAR>; [ <VAR>ip_addr</VAR>; ... ] }; ]
[ also-notify { <VAR><A HREF="docdef.html">ip_addr</A></VAR>; [ <VAR>ip_addr</VAR>; ... ] };
[ ixfr-base <VAR><A HREF="docdef.html">path_name</A></VAR>; ]
[ pubkey <VAR><A HREF="docdef.html">number</A></VAR> <VAR><A HREF="docdef.html">number</A></VAR> <VAR><A HREF="docdef.html">number</A></VAR> <VAR>string</VAR>; ]
};
};
zone <VAR><A HREF="docdef.html">domain_name</A></VAR> [ ( in | hs | hesiod | chaos ) ] {
type ( slave | stub );
@@ -43,7 +43,7 @@ zone <VAR><A HREF="docdef.html">domain_name</A></VAR> [ ( in | hs | hesiod | cha
[ dialup <VAR><A HREF="docdef.html">yes_or_no</A></VAR>; ]
[ max-transfer-time-in <VAR>number</VAR>; ]
[ notify <VAR><A HREF="docdef.html">yes_or_no</A></VAR>; ]
[ also-notify { <VAR><A HREF="docdef.html">ip_addr</A></VAR>; [ <VAR>ip_addr</VAR>; ... ] }; ]
[ also-notify { <VAR><A HREF="docdef.html">ip_addr</A></VAR>; [ <VAR>ip_addr</VAR>; ... ] };
[ pubkey <VAR><A HREF="docdef.html">number</A></VAR> <VAR><A HREF="docdef.html">number</A></VAR> <VAR><A HREF="docdef.html">number</A></VAR> <VAR>string</VAR>; ]
};
@@ -238,7 +238,7 @@ string representing the key.
<HR>
<ADDRESS>
Last Updated: $Id: zone.html,v 1.24 2000/01/12 01:28:32 cyarnell Exp $
Last Updated: $Id: zone.html,v 1.23 1999/09/30 17:58:41 cyarnell Exp $
</ADDRESS>
</BODY>
</HTML>
+1 -1
View File
@@ -279,7 +279,7 @@ NSUPDATE_OUT = nsupdate.${SYS_OPS_OUT_EXT}
# Network library routines manual entries
#
LIB_NETWORK_BASE = gethostbyname inet_cidr resolver hesiod getnetent \
tsig getaddrinfo getnameinfo getipnodebyname
tsig getaddrinfo inet_cidr getipnodebyname
LIB_NETWORK_SRC_EXT = 3
LIB_NETWORK_SRC = gethostbyname.${LIB_NETWORK_SRC_EXT} \
inet_cidr.${LIB_NETWORK_SRC_EXT} \
+19 -34
View File
@@ -50,7 +50,7 @@
.\" SOFTWARE.
.\" -
.\" --Copyright--
.\" $Id: host.1,v 8.4 2000/02/29 03:50:47 vixie Exp $
.\" $Id: host.1,v 8.2 1997/03/14 02:29:44 vixie Exp $
.\" $FreeBSD$
.\"
.Dd December 15, 1994
@@ -194,10 +194,6 @@ Turn off recursion in the request.
This means that the name server will return only data it has in
its own database. It will not ask other servers for more
information.
.It Fl d
Turn on debugging. Network transactions are shown in detail.
.It Fl s
Chase signatures back to parent key (DNSSEC).
.It Fl t Ar querytype
Allows you to specify a particular
.Ar querytype
@@ -243,35 +239,24 @@ option is particularly useful for filtering information returned by
.Ic host ;
see the explanation of the
.Dq Fl l
option, below, for more information.
.It Fl a
.Dq all ;
this is equivalent to
.Dq Fl v Fl t Cm any .
.It Fl l
List a complete domain; e.g.:
.Pp
.D1 Ic host -l rutgers.edu
.Pp
will give a listing of all hosts in the rutgers.edu domain. The
.Dq Fl t
option is used to filter what information is presented, as you
would expect. The default is address information, which also
include PTR and NS records. The command
.Pp
.D1 Ic host -l -v -t any rutgers.edu
.Pp
will give a complete download of the zone data for rutgers.edu,
in the official master file format. (However the SOA record is
listed twice, for arcane reasons.)
.Pp
.Sy NOTE:
.Dq Fl l
is implemented by
doing a complete zone transfer and then filtering out the information
the you have asked for. This command should be used only if it
is absolutely necessary.
.El
option for more information.
.It Fl v
Use "verbose" format for printout. This
is the official domain master file format, which is documented
in the man page for
.Xr @INDOT@named @SYS_OPS_EXT@ .
Without this option, output still follows
this format in general terms, but some attempt is made to make it
more intelligible to normal users. Without
.Dq Fl v ,
any "a", "mx", and "cname" records
are written out as "has address", "mail is handled by", and
"is a nickname for" (respectively), and TTL and class fields are not shown.
.It Fl w
This causes
.Ic host
to wait forever for a response. Normally
it will time out after approximate one minute.
.Sh CUSTOMIZING HOST NAME LOOKUP
In general, if the name supplied by the user does not
have any dots in it, a default domain is appended to the end.
+1 -2
View File
@@ -332,7 +332,7 @@ An example SOA record is as follows:
86400 ) ; minimum
.Ed
.Pp
The SOA specifies a serial number, which should be incremented each time the
The SOA specifies a serial number, which should be changed each time the
master file is changed. Note that the serial number can be given as a
dotted number, but this is a
.Em very
@@ -416,7 +416,6 @@ Toggles logging of all incoming queries via
(requires server to have been built with the
.Li QRYLOG
option).
.El
.Sh FILES
.Bl -tag -width "/var/tmp/named_dump.db (_PATH_DUMPFILE) " -compact
.It Pa /etc/named.conf
+1 -7
View File
@@ -1281,8 +1281,7 @@ may also be specified in the
.Ic zone
statement, in which case it overrides the
.Ic options allow-query
statement. If not specified, the default is to allow queries
from all hosts.
statement. If not specified, the default is
.Bl -tag -width 1
.It Ic allow-recursion
@@ -1311,7 +1310,6 @@ Specifies a list of addresses that the server will not accept queries from
or use to resolve a query. Queries from these addresses will not be
responded to.
.El
.El
.Ss Interfaces
@@ -1759,8 +1757,6 @@ zone \fIdomain_name\fR [ ( in | hs | hesiod | chaos ) ] {
[ allow-update { \fIaddress_match_list\fR }; ]
[ allow-query { \fIaddress_match_list\fR }; ]
[ allow-transfer { \fIaddress_match_list\fR }; ]
[ forward ( only | first ); ]
[ forwarders { [ \fIip_addr\fR ; [ \fIip_addr\fR ; ... ] ] }; ]
[ dialup \fIyes_or_no\fR; ]
[ notify \fIyes_or_no\fR; ]
[ also-notify { \fIip_addr\fR; [ \fIip_addr\fR; ... ] };
@@ -1775,8 +1771,6 @@ zone \fIdomain_name\fR [ ( in | hs | hesiod | chaos ) ] {
[ allow-update { \fIaddress_match_list\fR }; ]
[ allow-query { \fIaddress_match_list\fR }; ]
[ allow-transfer { \fIaddress_match_list\fR }; ]
[ forward ( only | first ); ]
[ forwarders { [ \fIip_addr\fR ; [ \fIip_addr\fR ; ... ] ] }; ]
[ transfer-source \fIip_addr\fR; ]
[ max-transfer-time-in \fInumber\fR; ]
[ notify \fIyes_or_no\fR; ]
-3
View File
@@ -53,7 +53,6 @@
.\" --Copyright--
.\"
.\" @(#)nslookup.8 5.3 (Berkeley) 6/24/90
.\" $FreeBSD$
.\"
.Dd June 24, 1990
.Dt NSLOOKUP @SYS_OPS_EXT_U@
@@ -518,14 +517,12 @@ initial domain name and name server addresses
user's initial options
.It Pa /usr/share/misc/nslookup.help
summary of commands
.El
.Sh ENVIRONMENT
.Bl -tag -width "HOSTALIASESXXXX" -compact
.It Ev HOSTALIASES
file containing host aliases
.It Ev LOCALDOMAIN
overrides default domain
.El
.Sh SEE ALSO
.Xr @INDOT@named @SYS_OPS_EXT@ ,
.Xr resolver @LIB_NETWORK_EXT@ ,
+4 -7
View File
@@ -1,4 +1,4 @@
.\" $Id: nsupdate.8,v 8.5 2000/02/29 03:50:48 vixie Exp $
.\" $Id: nsupdate.8,v 8.4 1999/10/17 06:26:18 cyarnell Exp $
.\"
.\"Copyright (c) 1999 by Internet Software Consortium
.\"
@@ -47,7 +47,6 @@ Debug mode.
.It Fl v
Virtual circuit - use TCP to communication with server.
Default is UDP.
.El
.Sh INPUT FORMAT
.Ic Nsupdate
reads input records, one per line,
@@ -80,7 +79,7 @@ will be performed.
understands the following input record formats:
.Pp
.Bl -hang
.Bl -ohang
.It Ic prereq nxdomain Va domain-name
Requires that no RR of any type exists with name
@@ -179,7 +178,7 @@ $ nsupdate -k /var/named/keys:mykey
.Ed
.Sh DIAGNOSTICS
.Bl -hang
.Bl -ohang
.It Qq send error
Typically indicates that the authoritative nameservers could not be reached
@@ -197,11 +196,9 @@ being performed. The only way to determine if the update was performed
is to use debug mode
.Fl ( d )
and examine the status field in the nameserver's reply.
.El
.Sh FILES
.Bl -hang
.It Pa /etc/resolv.conf
.El
initial domain name and name server addresses
.Sh SEE ALSO
.Xr @INDOT@named @SYS_OPS_EXT@ ,
+32 -22
View File
@@ -16,17 +16,17 @@
.\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
.\"
.\" @(#)resolver.3 6.5 (Berkeley) 6/23/90
.\" $Id: resolver.3,v 8.12 2000/07/11 06:10:55 vixie Exp $
.\" $Id: resolver.3,v 8.11 1999/09/13 23:33:24 vixie Exp $
.\"
.Dd July 4, 2000
.Dd October 19, 1998
.Dt RESOLVER @LIB_NETWORK_EXT_U@
.Os BSD 4
.Sh NAME
.Nm res_ninit ,
.Nm res_ourserver_p ,
.Nm res_nisourserver ,
.Nm fp_resstat ,
.Nm res_npquery ,
.Nm res_hostalias ,
.Nm res_pquery ,
.Nm res_nquery ,
.Nm res_nsearch ,
.Nm res_nquerydomain ,
@@ -36,15 +36,16 @@
.Nm res_nmkupdate ,
.Nm res_nclose ,
.Nm res_nsendsigned ,
.Nm res_nsendupdate ,
.Nm res_findzonecut ,
.Nm dn_comp ,
.Nm dn_expand ,
.Nm hstrerror ,
.Nm res_init ,
.Nm res_isourserver ,
.Nm fp_nquery ,
.Nm p_query ,
.Nm hostalias ,
.Nm p_nquery ,
.Mm p_query ,
.Mm hostalias ,
.Nm res_query ,
.Nm res_search ,
.Nm res_querydomain ,
@@ -60,10 +61,10 @@
.Fd #include <arpa/nameser.h>
.Fd #include <resolv.h>
.Fn res_ninit "res_state statp"
.Fn res_ourserver_p "const res_state statp" "const struct sockaddr_in *addr"
.Fn res_nisourserver "const res_state statp" "const struct sockaddr_in *addr"
.Fn fp_resstat "const res_state statp" "FILE *fp"
.Fn res_npquery "const res_state statp" "const u_char *msg" "int msglen" "FILE *fp"
.Fn res_hostalias "const res_state statp" "const char *name" "char *buf" "size_t buflen"
.Fn res_pquery "const res_state statp" "const u_char *msg" "int msglen" "FILE *fp"
.Fn res_nquery "res_state statp" "const char *dname" "int class" "int type" "u_char *answer" "int anslen"
.Fn res_nsearch "res_state statp" "const char *dname" "int class" "int type" "u_char * answer" "int anslen"
.Fn res_nquerydomain "res_state statp" "const char *name" "const char *domain" "int class" "int type" "u_char *answer" "int anslen"
@@ -74,6 +75,7 @@
.Fn res_nclose "res_state statp"
.Fn res_nsendsigned "res_state statp" "const u_char *msg" "int msglen" "ns_tsig_key *key" "u_char *answer" "int anslen"
.Fn res_findzonecut "res_state statp" "const char *dname" "ns_class class" "int options" "char *zname" "size_t zsize" "struct in_addr *addrs" "int naddrs"
.Fn res_nsendupdate "res_state statp" "ns_updrec *rrecp_in" "ns_tsig_key *key" "char *zname" "struct in_addr addr"
.Fn dn_comp "const char *exp_dn" "u_char *comp_dn" "int length" "u_char **dnptrs, **lastdnptr"
.Fn dn_expand "const u_char *msg, *eomorig, *comp_dn" "char *exp_dn" "int length"
.Fn hstrerror "int err"
@@ -85,7 +87,7 @@
.Fd #include <resolv.h>
.Fn res_init "void"
.Fn res_isourserver "const struct sockaddr_in *addr"
.Fn fp_nquery "const u_char *msg" "int msglen" "FILE *fp"
.Fn p_nquery "const u_char *msg" "int msglen" "FILE *fp"
.Fn p_query "const u_char *msg" "FILE *fp"
.Fn hostalias "const char *name"
.Fn res_query "const char *dname" "int class, type" "u_char *answer" "int anslen"
@@ -109,7 +111,7 @@ should be set to all zeros prior to the first call to any of these functions.
The functions
.Fn res_init ,
.Fn res_isourserver ,
.Fn fp_nquery ,
.Fn p_nquery ,
.Fn p_query ,
.Fn hostalias ,
.Fn res_query ,
@@ -371,9 +373,11 @@ MUST be big enough to receive a maximum UDP response from the server or
parts of the answer will be silently discarded.
The default maximum UDP response size is 512 bytes.
.Pp
The function
.Fn res_ourserver_p
returns true when
The functions
.Fn res_nisourserver
/
.Fn res_isourserver
return true when
.Fa inp
is one of the servers in
.Fa statp->nsaddr_list
@@ -381,7 +385,9 @@ is one of the servers in
.Fa _res.nsaddr_list .
.Pp
The functions
.Fn fp_nquery
.Fn res_npquery
/
.Fn p_nquery
/
.Fn p_query
print out the query and any answer in
@@ -390,7 +396,7 @@ on
.Fa fp .
.Fn p_query
is equivalent to
.Fn fp_nquery
.Fn p_nquery
with
.Fa msglen
set to 512.
@@ -423,18 +429,22 @@ The functions
take a list of ns_updrec
.Fa rrecp_in .
Identifies the containing zone for each record and groups the records
according to containing zone maintaining in zone order then sends and update
request to the servers for these zones. The number of zones updated is
returned or -1 on error. Note that
.Fn res_nupdate
will perform TSIG authenticated dynamic update operations if the key is not
NULL.
according to containing zone maintaining in zone order then sends and
update request to the servers for these zones.
The number of zones updated is returned or -1 on error.
.Pp
The function
.Fn res_findzonecut
discovers the closest enclosing zone cut for a specified domain name,
and finds the IP addresses of the zone's master servers.
.Pp
The function
.Fn res_nsendupdate
is used to perform TSIG authenticated dynamic update operations.
.Fn res_nsendupdate
sends a dynamic update to the specified IP address, authenticating the update
if the key is not NULL.
.Pp
The functions
.Fn res_nmkupdate
/
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
+9 -9
View File
@@ -16,7 +16,7 @@
*/
/*
* $Id: assertions.h,v 8.3 2000/07/17 07:53:59 vixie Exp $
* $Id: assertions.h,v 8.2 1999/01/08 19:23:01 vixie Exp $
*/
#ifndef ASSERTIONS_H
@@ -73,8 +73,8 @@ char *assertion_type_to_text(assertion_type type);
((__assertion_failed)(__FILE__, __LINE__, assert_require, \
#cond, 1), 0)))
#else
#define REQUIRE(cond) ((void) (cond))
#define REQUIRE_ERR(cond) ((void) (cond))
#define REQUIRE(cond) ((void) 0)
#define REQUIRE_ERR(cond) ((void) 0)
#endif /* CHECK_REQUIRE */
#if CHECK_ENSURE != 0
@@ -87,8 +87,8 @@ char *assertion_type_to_text(assertion_type type);
((__assertion_failed)(__FILE__, __LINE__, assert_ensure, \
#cond, 1), 0)))
#else
#define ENSURE(cond) ((void) (cond))
#define ENSURE_ERR(cond) ((void) (cond))
#define ENSURE(cond) ((void) 0)
#define ENSURE_ERR(cond) ((void) 0)
#endif /* CHECK_ENSURE */
#if CHECK_INSIST != 0
@@ -101,8 +101,8 @@ char *assertion_type_to_text(assertion_type type);
((__assertion_failed)(__FILE__, __LINE__, assert_insist, \
#cond, 1), 0)))
#else
#define INSIST(cond) ((void) (cond))
#define INSIST_ERR(cond) ((void) (cond))
#define INSIST(cond) ((void) 0)
#define INSIST_ERR(cond) ((void) 0)
#endif /* CHECK_INSIST */
#if CHECK_INVARIANT != 0
@@ -115,8 +115,8 @@ char *assertion_type_to_text(assertion_type type);
((__assertion_failed)(__FILE__, __LINE__, assert_invariant, \
#cond, 1), 0)))
#else
#define INVARIANT(cond) ((void) (cond))
#define INVARIANT_ERR(cond) ((void) (cond))
#define INVARIANT(cond) ((void) 0)
#define INVARIANT_ERR(cond) ((void) 0)
#endif /* CHECK_INVARIANT */
#endif /* ASSERTIONS_H */
+2 -2
View File
@@ -13,7 +13,7 @@
# ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
# SOFTWARE.
# $Id: Makefile,v 8.23 2000/07/11 06:41:36 vixie Exp $
# $Id: Makefile,v 8.22 1999/06/08 01:42:57 vixie Exp $
SUBDIRS = resolv irs isc bsd inet nameser dst cylink dnssafe
@@ -51,7 +51,7 @@ MARGS = "SYSTYPE=${SYSTYPE}" "SHELL=${SHELL}" "A=${A}" "O=${O}" \
"RANLIB=:" "AR=${AR}" "ARPREF=${ARPREF}" "ARSUFF=${ARSUFF}" \
"INCL=../${INCL}" "PORTINCL=../${PORTINCL}" "EXE=${EXE}" \
"LIBBIND=../${LIBBIND}" "LIBPORT=../${LIBPORT}" \
"INSTALL=${INSTALL}" "TOP=../${TOP}" \
"INSTALL=${INSTALL}" "CPPFLAGS=${CPPFLAGS}" "TOP=../${TOP}" \
"REENTRANT=${REENTRANT}" "INSTALL_LIB=${INSTALL_LIB}" \
"INSTALL_EXEC=${INSTALL_EXEC}" "BOUNDS=${BOUNDS}"
+2 -3
View File
@@ -13,7 +13,7 @@
# ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
# SOFTWARE.
# $Id: Makefile,v 1.17 2000/07/11 06:41:39 vixie Exp $
# $Id: Makefile,v 1.16 2000/02/29 03:38:21 vixie Exp $
# these are only appropriate for BSD 4.4 or derivatives, and are used in
# development. normal builds will be done in the top level directory and
@@ -32,8 +32,7 @@ INCL = ${TOP}/include
PORTINCL = ${TOP}/port/${SYSTYPE}/include
LIBBIND = ${TOP}/lib/libbind.${A}
LIBBINDR = ../${TOP}/lib/libbind_r.${A}
CFLAGS= ${CDEBUG}
CPPFLAGS= -I${PORTINCL} -I${INCL}
CFLAGS= ${CDEBUG} -I${PORTINCL} -I${INCL}
LD_LIBFLAGS= -x -r
AR= ar cru
RANLIB= ranlib
+1 -3
View File
@@ -1,5 +1,5 @@
#ifndef LINT
static const char rcsid[] = "$Header: /proj/cvs/isc/bind/src/lib/dst/prandom.c,v 1.9 2000/07/17 07:36:53 vixie Exp $";
static const char rcsid[] = "$Header: /proj/cvs/isc/bind/src/lib/dst/prandom.c,v 1.8 1999/10/13 16:39:24 vixie Exp $";
#endif
/*
* Portions Copyright (c) 1995-1998 by Trusted Information Systems, Inc.
@@ -20,7 +20,6 @@ static const char rcsid[] = "$Header: /proj/cvs/isc/bind/src/lib/dst/prandom.c,v
#include "port_before.h"
#include <assert.h>
#include <stdio.h>
#include <sys/types.h>
#include <stdlib.h>
@@ -204,7 +203,6 @@ do_time(dst_work *work)
zone = (struct timezone *) tmp;
mtime = (struct timeval *)(tmp + sizeof(struct timezone));
gettimeofday(mtime, zone);
assert(mtime->tv_usec >= 0 && mtime->tv_usec < 1000000);
cnt = sizeof(tmp);
my_digest(work, tmp, sizeof(tmp));
+1 -2
View File
@@ -1,5 +1,5 @@
#ifdef RSAREF
static const char rcsid[] = "$Header: /proj/cvs/isc/bind/src/lib/dst/rsaref_link.c,v 1.7 2000/07/17 07:36:53 vixie Exp $";
static const char rcsid[] = "$Header: /proj/cvs/isc/bind/src/lib/dst/rsaref_link.c,v 1.6 1999/10/13 16:39:24 vixie Exp $";
/*
* Portions Copyright (c) 1995-1998 by Trusted Information Systems, Inc.
@@ -706,7 +706,6 @@ dst_rsaref_init_random_struct(R_RANDOM_STRUCT * randomstruct)
* This must be the FIRST CALL
*/
gettimeofday(&tv, 0);
assert(tv.tv_usec >= 0 && tv.tv_usec < 1000000);
R_RandomUpdate(randomstruct, (u_char *) &tv,
sizeof(struct timeval));
+2 -3
View File
@@ -13,7 +13,7 @@
# ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
# SOFTWARE.
# $Id: Makefile,v 8.20 2000/07/11 06:41:40 vixie Exp $
# $Id: Makefile,v 8.19 2000/02/29 03:38:22 vixie Exp $
# these are only appropriate for BSD 4.4 or derivatives, and are used in
# development. normal builds will be done in the top level directory and
@@ -32,8 +32,7 @@ INCL = ${TOP}/include
PORTINCL = ${TOP}/port/${SYSTYPE}/include
LIBBIND = ${TOP}/lib/libbind.${A}
LIBBINDR = ../${TOP}/lib/libbind_r.${A}
CFLAGS= ${CDEBUG}
CPPFLAGS= -I${PORTINCL} -I${INCL}
CFLAGS= ${CDEBUG} -I${PORTINCL} -I${INCL}
LD_LIBFLAGS= -x -r
AR= ar cru
RANLIB= ranlib
+2 -3
View File
@@ -13,7 +13,7 @@
# ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
# SOFTWARE.
# $Id: Makefile,v 8.20 2000/07/11 06:41:40 vixie Exp $
# $Id: Makefile,v 8.19 2000/02/29 03:38:22 vixie Exp $
# these are only appropriate for BSD 4.4 or derivatives, and are used in
# development. normal builds will be done in the top level directory and
@@ -32,8 +32,7 @@ INCL = ${TOP}/include
PORTINCL = ${TOP}/port/${SYSTYPE}/include
LIBBIND = ${TOP}/lib/libbind.${A}
LIBBINDR = ../${TOP}/lib/libbind_r.${A}
CFLAGS= ${CDEBUG}
CPPFLAGS= -I${PORTINCL} -I${INCL}
CFLAGS= ${CDEBUG} -I${PORTINCL} -I${INCL}
# -D__BIND_NOSTATIC -Wimplicit
LD_LIBFLAGS= -x -r
AR= ar cru
+3 -7
View File
@@ -16,7 +16,7 @@
*/
#if !defined(LINT) && !defined(CODECENTER)
static const char rcsid[] = "$Id: gen_gr.c,v 1.22 2000/07/11 05:51:56 vixie Exp $";
static const char rcsid[] = "$Id: gen_gr.c,v 1.21 1999/10/13 16:39:29 vixie Exp $";
#endif
/* Imports */
@@ -325,7 +325,7 @@ static void
grmerge(struct irs_gr *this, const struct group *src, int preserve) {
struct pvt *pvt = (struct pvt *)this->private;
char *cp, **m, **p;
int n, ndst, nnew, memadj;
int n, ndst, nnew;
if (!preserve) {
pvt->group.gr_gid = src->gr_gid;
@@ -377,7 +377,6 @@ grmerge(struct irs_gr *this, const struct group *src, int preserve) {
/* No harm done, no work done. */
return;
}
memadj = cp - pvt->membuf;
pvt->membuf = cp;
cp += pvt->membufsize;
pvt->membufsize += n;
@@ -392,10 +391,7 @@ grmerge(struct irs_gr *this, const struct group *src, int preserve) {
strcpy(cp, *m);
cp += strlen(cp) + 1;
}
if (preserve) {
pvt->group.gr_name += memadj;
pvt->group.gr_passwd += memadj;
} else {
if (!preserve) {
pvt->group.gr_name = cp;
strcpy(cp, src->gr_name);
cp += strlen(src->gr_name) + 1;
+2 -1
View File
@@ -16,7 +16,7 @@
*/
#if defined(LIBC_SCCS) && !defined(lint)
static const char rcsid[] = "$Id: gethostent_r.c,v 8.5 2000/07/11 05:46:35 vixie Exp $";
static const char rcsid[] = "$Id: gethostent_r.c,v 8.4 1999/01/18 07:46:52 vixie Exp $";
#endif /* LIBC_SCCS and not lint */
#include <port_before.h>
@@ -143,6 +143,7 @@ copy_hostent(struct hostent *he, struct hostent *hptr, HOST_R_COPY_ARGS) {
memcpy(cp, he->h_addr_list[i], n);
hptr->h_addr_list[i] = cp;
cp += n;
i++;
}
hptr->h_addr_list[i] = NULL;
ptr++;
+2 -3
View File
@@ -13,7 +13,7 @@
# ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
# SOFTWARE.
# $Id: Makefile,v 8.26 2000/07/11 06:41:41 vixie Exp $
# $Id: Makefile,v 8.25 2000/02/29 03:38:23 vixie Exp $
# these are only appropriate for BSD 4.4 or derivatives, and are used in
# development. normal builds will be done in the top level directory and
@@ -32,8 +32,7 @@ INCL = ${TOP}/include
PORTINCL = ${TOP}/port/${SYSTYPE}/include
LIBBIND = ${TOP}/lib/libbind.${A}
LIBBINDR = ../${TOP}/lib/libbind_r.${A}
CFLAGS= ${CDEBUG}
CPPFLAGS= -I${PORTINCL} -I${INCL}
CFLAGS= ${CDEBUG} -I${PORTINCL} -I${INCL}
# -Wimplicit
LD_LIBFLAGS= -x -r
AR= ar cru
+1 -3
View File
@@ -20,7 +20,7 @@
*/
#if !defined(LINT) && !defined(CODECENTER)
static const char rcsid[] = "$Id: ev_timers.c,v 1.26 2000/07/17 07:36:54 vixie Exp $";
static const char rcsid[] = "$Id: ev_timers.c,v 1.25 1999/10/07 20:44:04 vixie Exp $";
#endif
/* Import. */
@@ -30,7 +30,6 @@ static const char rcsid[] = "$Id: ev_timers.c,v 1.26 2000/07/17 07:36:54 vixie E
#include <errno.h>
#include <isc/assertions.h>
#include <isc/eventlib.h>
#include "eventlib_p.h"
@@ -111,7 +110,6 @@ evNowTime() {
if (gettimeofday(&now, NULL) < 0)
return (evConsTime(0, 0));
INSIST(now.tv_usec >= 0 && now.tv_usec < 1000000);
return (evTimeSpec(now));
}
+5 -4
View File
@@ -20,7 +20,7 @@
*/
#if !defined(LINT) && !defined(CODECENTER)
static const char rcsid[] = "$Id: ev_waits.c,v 8.11 2000/07/20 18:17:52 vixie Exp $";
static const char rcsid[] = "$Id: ev_waits.c,v 8.10 2000/02/04 07:25:50 vixie Exp $";
#endif
#include "port_before.h"
@@ -49,7 +49,7 @@ static evWaitList * evGetWaitList(evContext_p *, const void *, int);
*/
int
evWaitFor(evContext opaqueCtx, const void *tag,
evWaitFunc func, void *uap, evWaitID *id)
evWaitFunc func, void *uap, evWaitID *id)
{
evContext_p *ctx = opaqueCtx.opaque;
evWait *new;
@@ -60,10 +60,11 @@ evWaitFor(evContext opaqueCtx, const void *tag,
new->uap = uap;
new->tag = tag;
new->next = NULL;
if (wl->last != NULL)
if (wl->last != NULL) {
wl->last->next = new;
else
} else {
wl->first = new;
}
wl->last = new;
if (id != NULL)
id->opaque = new;
+2 -3
View File
@@ -15,7 +15,7 @@
# SOFTWARE.
#
# $Id: Makefile,v 8.20 2000/07/11 06:41:42 vixie Exp $
# $Id: Makefile,v 8.19 2000/02/29 03:38:23 vixie Exp $
# these are only appropriate for BSD 4.4 or derivatives, and are used in
# development. normal builds will be done in the top level directory and
@@ -34,8 +34,7 @@ INCL = ${TOP}/include
PORTINCL = ${TOP}/port/${SYSTYPE}/include
LIBBIND = ${TOP}/lib/libbind.${A}
LIBBINDR = ../${TOP}/lib/libbind_r.${A}
CFLAGS= ${CDEBUG}
CPPFLAGS= -I${PORTINCL} -I${INCL}
CFLAGS= ${CDEBUG} -I${PORTINCL} -I${INCL}
LD_LIBFLAGS= -x -r
AR= ar cru
RANLIB= ranlib
+2 -3
View File
@@ -13,7 +13,7 @@
# ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
# SOFTWARE.
# $Id: Makefile,v 8.34 2000/07/11 06:41:42 vixie Exp $
# $Id: Makefile,v 8.33 2000/02/29 03:38:24 vixie Exp $
# these are only appropriate for BSD 4.4 or derivatives, and are used in
# development. normal builds will be done in the top level directory and
@@ -32,8 +32,7 @@ INCL = ${TOP}/include
PORTINCL = ${TOP}/port/${SYSTYPE}/include
LIBBIND = ${TOP}/lib/libbind.${A}
LIBBINDR = ../${TOP}/lib/libbind_r.${A}
CFLAGS= ${CDEBUG}
CPPFLAGS= -I${PORTINCL} -I${INCL}
CFLAGS= ${CDEBUG} -I${PORTINCL} -I${INCL}
# -D__BIND_NOSTATIC
LD_LIBFLAGS= -x -r
AR= ar cru
+3 -8
View File
@@ -1293,9 +1293,7 @@ elf_i386_relocate_section (output_bfd, info, input_bfd, input_section,
sections against symbols defined externally
in shared libraries. We can't do anything
with them here. */
|| ((input_section->flags & SEC_DEBUGGING) != 0
&& (h->elf_link_hash_flags
& ELF_LINK_HASH_DEF_DYNAMIC) != 0))))
|| (input_section->flags & SEC_DEBUGGING) != 0)))
{
/* In these cases, we don't need the relocation
value. We check specially because in some
@@ -1317,17 +1315,14 @@ elf_i386_relocate_section (output_bfd, info, input_bfd, input_section,
}
else if (h->root.type == bfd_link_hash_undefweak)
relocation = 0;
else if (info->shared && !info->symbolic
&& !info->no_undefined
&& ELF_ST_VISIBILITY (h->other) == STV_DEFAULT)
else if (info->shared && !info->symbolic && !info->no_undefined)
relocation = 0;
else
{
if (! ((*info->callbacks->undefined_symbol)
(info, h->root.root.string, input_bfd,
input_section, rel->r_offset,
(!info->shared || info->no_undefined
|| ELF_ST_VISIBILITY (h->other)))))
(!info->shared || info->no_undefined))))
return false;
relocation = 0;
}
-100
View File
@@ -1,103 +1,3 @@
2000-09-07 Larry Jones <[email protected]>
* Makefile.in: Use @bindir@, @libdir@, @infodir@, and @mandir@
from autoconf.
* acconfig.h: Copy HAVE_CRYPT, HAVE_GETSPNAM, REGEX_MALLOC, and
_REGEX_RE_COMP from config.h.in to here, where they should have
been in the first place.
* config.h.in: Regenerated.
2000-08-30 Larry Jones <[email protected]>
* NEWS: Note additional history enhancements.
2000-08-01 Larry Jones <[email protected]>
* configure.in, config.h.in: Add check for getpassphrase (Solaris).
* configure: Regenerated.
2000-07-11 Larry Jones <[email protected]>
* configure.in, config.h.in: Add checks for mknod() and st_rdev
since some systems (notably Plan 9) don't have them.
* configure: Regenerated.
2000-07-10 Larry Jones <[email protected]>
* NEWS: Note the new "version" command.
2000-07-06 Larry Jones <[email protected]>
* NEWS: Note that admin -t works in client/server.
2000-06-19 Larry Jones <[email protected]>
* configure.in (AC_DEFINE): Define REGEX_MALLOC and _REGEX_RE_COMP
to configure lib/regex.c the way we want without messing with the
code.
* config.h.in: Ditto.
* configure: Regenerated.
2000-05-16 Jim Kingdon <[email protected]>
* TODO (186): Remove paragraph about Eric Raymond's interest.
This is still on the future projects on his site, it just seems to
brief (and too long ago updated) that I don't really see the need
to mention it.
2000-05-05 Larry Jones <[email protected]>
* TESTS: Add notes about required tools and where to get them.
2000-05-02 Donald Sharp <[email protected]>
and Larry Jones <[email protected]>
* NEWS: Note history output format change.
2000-02-17 Larry Jones <[email protected]>
* NEWS: Note that PreservePermissions is disabled.
* configure.in: Don't define PRESERVE_PERMISSIONS_SUPPORT.
* configure: Regenerated.
2000-02-01 Larry Jones <[email protected]>
* configure.in: Try again to handle systems that need both libsocket
and libnsl.
* configure: Regenerated.
1999-12-09 Larry Jones <[email protected]>
* configure.in: Correctly handle systems that need both libsocket
and libnsl.
* configure: Regenerated.
1999-12-06 Larry Jones <[email protected]>
* configure.in: Update to autoconf 2.13; use new AC_SEARCH_LIBS
to handle getspnam, connect, gethostbyname, and crypt correctly;
use new AC_FUNC_FNMATCH instead of doing it by hand.
* configure: Regenerated with autoconf 2.13.
1999-12-06 Larry Jones <[email protected]>
* INSTALL (Tested platforms): Update info.
1999-11-04 Jim Kingdon <http://developer.redhat.com/>
* README (Installation): Yet another prep.ai.mit.edu -> gnu.org
change (can't believe we still haven't gotten them all).
1999-11-04 Karl Fogel <[email protected]>
* NEWS: added item about anon cvs no longer needing password.
1999-10-28 Larry Jones <[email protected]>
* TESTS: Add note about not running as root. Remove note about
Solaris sort since sanity.sh was changed to avoid the problem.
1999-07-12 Larry Jones <[email protected]>
* TESTS: Remove suspicion that setting LC_COLLATE has fixed the
Loaded 100 of 3606 files, more files were not shown because too many files have changed in this diff. Show more