Compare commits

..

2 Commits

Author SHA1 Message Date
Karel Klíč
4884aae2d1 Fixed #593278 2010-05-19 14:50:59 +00:00
Jesse Keating
dadb615cb9 Initialize branch F-13 for ypbind 2010-02-17 03:34:48 +00:00
13 changed files with 331 additions and 704 deletions

1
.cvsignore Normal file
View File

@ -0,0 +1 @@
ypbind-mt-1.31.tar.bz2

11
.gitignore vendored
View File

@ -1,11 +0,0 @@
ypbind-mt-1.32.tar.bz2
/ypbind-mt-1.33.tar.bz2
/ypbind-mt-1.35.tar.bz2
/ypbind-mt-1.36.tar.bz2
/ypbind-mt-1.37.1.tar.bz2
/ypbind-mt-1.37.2.tar.bz2
/ypbind-mt-1.38.tar.bz2
/ypbind-mt-2.4.tar.gz
/ypbind-mt-2.5.tar.gz
/ypbind-mt-2.6.1.tar.gz
/ypbind-mt-2.7.2.tar.gz

21
Makefile Normal file
View File

@ -0,0 +1,21 @@
# Makefile for source rpm: ypbind
# $Id: Makefile,v 1.2 2007/10/15 19:38:38 notting Exp $
NAME := ypbind
SPECFILE = $(firstword $(wildcard *.spec))
define find-makefile-common
for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$d/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done
endef
MAKEFILE_COMMON := $(shell $(find-makefile-common))
ifeq ($(MAKEFILE_COMMON),)
# attempt a checkout
define checkout-makefile-common
test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2
endef
MAKEFILE_COMMON := $(shell $(checkout-makefile-common))
endif
include $(MAKEFILE_COMMON)

1
branch Normal file
View File

@ -0,0 +1 @@
F-13

67
nis.sh
View File

@ -19,86 +19,95 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>. # along with this program. If not, see <http://www.gnu.org/licenses/>.
# #
# Author(s): David Cantrell <dcantrell@redhat.com> # Author(s): David Cantrell <dcantrell@redhat.com>
#
CONF=/etc/yp.conf CONF=/etc/yp.conf
SAVECONF=${SAVEDIR}/${CONF##*/}.predhclient.${interface}
fix_context() { fixContext() {
if [ -x /sbin/restorecon ]; then if [ -x /sbin/restorecon ]; then
/sbin/restorecon ${1} >/dev/null 2>&1 /sbin/restorecon ${1} >/dev/null 2>&1
fi fi
} }
save_config_file() { save_config_file() {
origfile="${1}"
savefile="${SAVEDIR}/${origfile##*/}.predhclient.${interface}"
if [ ! -d ${SAVEDIR} ]; then if [ ! -d ${SAVEDIR} ]; then
mkdir -p ${SAVEDIR} mkdir -p ${SAVEDIR}
fi fi
if [ -e ${CONF} ]; then if [ -e ${origfile} ]; then
# cp+rm instead of mv: preserve SELinux context # cp+rm instead of mv: preserve SELinux context
# rhbz#509240 # rhbz#509240
# Do not rely on restorecon. # Do not rely on restorecon.
cp -c ${CONF} ${SAVECONF} cp -c ${origfile} ${savefile}
rm ${CONF} rm ${origfile}
else else
echo > ${SAVECONF} echo > ${savefile}
# Try restorecon
fix_context ${SAVECONF}
fi fi
fixContext ${savefile}
} }
nis_config() { nis_config() {
if [ ! "${PEERNIS}" = "no" ]; then if [ ! "${PEERNIS}" = "no" ]; then
if [ -n "${new_nis_domain}" ]; then if [ -n "${new_nis_domain}" ]; then
domainname "${new_nis_domain}" domainname "${new_nis_domain}"
save_config_file save_config_file ${CONF}
let contents=0
echo '# generated by /sbin/dhclient-script' > ${CONF} echo '# generated by /sbin/dhclient-script' > ${CONF}
fix_context ${CONF} fixContext ${CONF}
if [ -n "${new_nis_servers}" ]; then if [ -n "${new_nis_servers}" ]; then
for i in ${new_nis_servers} ; do for i in ${new_nis_servers} ; do
echo "domain ${new_nis_domain} server ${i}" >> ${CONF} echo "domain ${new_nis_domain} server ${i}" >> ${CONF}
let contents=contents+1
done done
else else
echo "domain ${new_nis_domain} broadcast" >> ${CONF} echo "domain ${new_nis_domain} broadcast" >> ${CONF}
let contents=contents+1
fi fi
if [ ${contents} -gt 0 ]; then
if [ -x /etc/rc.d/init.d/ypbind ] &&
[ -r /var/run/ypbind.pid ]; then
service ypbind restart >/dev/null 2>&1
fi
fi
elif [ -n "${new_nis_servers}" ]; then elif [ -n "${new_nis_servers}" ]; then
save_config_file save_config_file ${CONF}
echo '# generated by /sbin/dhclient-script' > ${CONF} echo '# generated by /sbin/dhclient-script' > ${CONF}
fix_context ${CONF} fixContext ${CONF}
let contents=0
for i in ${new_nis_servers} ; do for i in ${new_nis_servers} ; do
echo "ypserver ${i}" >> ${CONF} echo "ypserver ${i}" >> ${CONF}
let contents=contents+1
done done
if [ $contents -gt 0 ]; then
if [ -x /etc/rc.d/init.d/ypbind ] &&
[ -r /var/run/ypbind.pid ]; then
service ypbind restart >/dev/null 2>&1
fi
fi fi
# dimainname or servers changed, restart ypbind
if [ "${old_nis_domain}" != "${new_nis_domain}" ] \
|| [ "${old_nis_servers}" != "${new_nis_servers}" ]
then
service ypbind condrestart >/dev/null 2>&1
fi fi
fi fi
} }
nis_restore() { nis_restore() {
if [ ! "${PEERNIS}" = "no" ]; then if [ ! "${PEERNIS}" = "no" ]; then
if [ -f ${SAVECONF} ]; then if [ -f ${SAVEDIR}/${CONF}.predhclient.${interface} ]; then
rm -f ${CONF} rm -f ${CONF}
# cp+rm instead of mv: preserve SELinux context # cp+rm instead of mv: preserve SELinux context
# rhbz#509240 # rhbz#509240
cp -c ${SAVECONF} ${CONF} cp -c ${SAVEDIR}/${CONF}.predhclient.${interface} ${CONF}
rm ${SAVECONF} rm ${SAVEDIR}/${CONF}.predhclient.${interface}
fix_context ${CONF} # Restorecon again to be sure. fixContext ${CONF}
service ypbind condrestart >/dev/null 2>&1 if [ -x /etc/rc.d/init.d/ypbind ] && [ -r /var/run/ypbind.pid ]; then
service ypbind restart >/dev/null 2>&1
fi
fi fi
fi fi
} }
# Local Variables:
# indent-tabs-mode: nil
# sh-basic-offset: 4
# show-trailing-whitespace: t
# End:

View File

@ -1 +1 @@
SHA512 (ypbind-mt-2.7.2.tar.gz) = 415013ea003bb3d6162b1dac76462d13d1264a2a0dd3c4de057cf7239b9706a76d1f14ee1e3dcfba697aa48e25e3a972772c8210d87bbf847344e4a6c708a5b4 99383456e3a02cdc0863ecb24b8399e0 ypbind-mt-1.31.tar.bz2

View File

@ -1,6 +1,5 @@
diff -up ./po/Makevars.gettextdomain ./po/Makevars --- ypbind-mt-1.11/po/Makevars.fixit Tue Jun 11 07:19:05 2002
--- ./po/Makevars.gettextdomain 2004-01-14 20:25:25.000000000 +0100 +++ ypbind-mt-1.11/po/Makevars Tue Jun 11 07:19:07 2002
+++ ./po/Makevars 2013-05-06 19:07:24.961484803 +0200
@@ -1,7 +1,7 @@ @@ -1,7 +1,7 @@
# Makefile variables for PO directory in any package using GNU gettext. # Makefile variables for PO directory in any package using GNU gettext.

View File

@ -1,148 +0,0 @@
diff -up ypbind-mt-2.5/man/ypbind.8.xml.helpman ypbind-mt-2.5/man/ypbind.8.xml
--- ypbind-mt-2.5/man/ypbind.8.xml.helpman 2018-06-04 15:30:38.000000000 +0200
+++ ypbind-mt-2.5/man/ypbind.8.xml 2018-06-07 16:16:56.967024495 +0200
@@ -39,21 +39,33 @@
<refsynopsisdiv id='synopsis'>
<cmdsynopsis>
<command>ypbind</command>
- <arg choice='opt'>-c </arg>
- <group choice='opt'><arg choice='plain'>-d </arg><arg choice='plain'>-debug </arg></group>
- <arg choice='opt'>-verbose </arg>
- <group choice='opt'><arg choice='plain'>-n </arg><arg choice='plain'>-forground </arg></group>
- <arg choice='opt'>-broadcast </arg>
- <arg choice='opt'>-broken-server </arg>
- <arg choice='opt'>-ypset </arg>
- <arg choice='opt'>-ypsetme </arg>
- <arg choice='opt'>-no-ping </arg>
+ <group choice='opt'>
+ <arg choice='plain'>-broadcast </arg>
+ <arg choice='plain'>-ypset </arg>
+ <arg choice='plain'>-ypsetme </arg>
+ </group>
<arg choice='opt'>-f <replaceable>configfile</replaceable></arg>
+ <arg choice='opt'>-no-ping </arg>
+ <arg choice='opt'>-broken-server </arg>
<arg choice='opt'>-local-only </arg>
- <arg choice='opt'>-ping-interval <replaceable>ping-interval</replaceable></arg>
+
+ <group choice='opt'>
+ <arg choice='plain'>-ping-interval <replaceable>ping-interval</replaceable></arg>
+ <arg choice='plain'>-i <replaceable>ping-interval</replaceable></arg>
+ </group>
+
+ <group choice='opt'><arg choice='plain'>-d </arg><arg choice='plain'>-debug </arg></group>
+ <group choice='opt'><arg choice='plain'>-v </arg><arg choice='plain'>-verbose </arg></group>
+ <group choice='opt'><arg choice='plain'>-n </arg><arg choice='plain'>-foreground </arg></group>
+ <arg choice='opt'>-p <replaceable>port</replaceable></arg>
</cmdsynopsis>
<cmdsynopsis>
<command>ypbind</command>
+ <arg choice='plain'>-c </arg>
+ <arg choice='opt'>-f <replaceable>configfile</replaceable></arg>
+ </cmdsynopsis>
+ <cmdsynopsis>
+ <command>ypbind</command>
<arg choice='plain'>--version </arg>
</cmdsynopsis>
</refsynopsisdiv>
@@ -88,6 +100,8 @@
<para>Unless the option
<option>-debug</option>
+or
+<option>-foreground</option>
is used, ypbind detaches itself from the controlling terminal and puts
itself into background.
<command>ypbind</command>
@@ -132,6 +146,57 @@ If the file does not exist or if there a
<command>ypbind</command>
exit.</para>
+<para>
+In Fedora we use systemd for starting services. We need to finish starting
+process of <command>ypbind</command> service not before service is fully
+started, which means <command>ypbind</command> daemon is prepared to answer.
+There is a test script <filename>/usr/libexec/ypbind-post-waitbind</filename>
+used in ypbind.service, that waits for <command>ypbind</command> daemon to be
+fully connected to NIS server and waits by default up to 45s. Sometimes this
+is not enough, because network set up can take longer than 45s during boot, so
+starting ypbind.service fails. User can increase the timeout by setting an
+environment variable NISTIMEOUT in <filename>/etc/sysconfig/ypbind</filename>.
+For example NISTIMEOUT=180 means <command>ypbind</command> will wait up to 180
+seconds for binding to a NIS server. Another option is to enable
+NetworkManager-wait- online.service, which will make <command>ypbind</command>
+to wait until network is properly set up.
+</para>
+
+<para>
+In case something needs to be changed in the ypbind.service, it is adviced not
+to change the ypbind.service directly, but rather to create a new file under
+<filename>/etc/systemd/system/ypbind.service.d/</filename>, i.e. if we need to
+start <command>ypbind</command> before service foo.service, we can create file
+<filename>/etc/systemd/system/ypbind.service.d/wait-foo.conf</filename> with
+the following content:
+</para>
+
+<para>
+<programlisting>
+[Service]
+Before=foo.service
+</programlisting>
+</para>
+<para>
+If you need to pass other arguments to <command>ypbind</command> daemon withing
+systemd unit file, you can set these arguments as OTHER_YPBIND_OPTS environment
+variable in <filename>/etc/sysconfig/ypbind</filename>. For example in order to
+set a fixed port <command>ypbind</command> should run on, you can specify
+OTHER_YPBIND_OPTS="-p 876" in <filename>/etc/sysconfig/ypbind</filename>.
+</para>
+
+<para>
+DHCP client by defualt changes <filename>/etc/yp.conf</filename> in case DHCP
+server sends NIS configuration in the respond. In that case
+<filename>/etc/dhcp/dhclient.d/nis.sh</filename> changes
+<filename>/etc/yp.conf</filename> according such configuration and creates a
+back-up copy of the original configuration file into
+<filename>/var/lib/dhclient/nis.conf.predhclient.$interface</filename>. In
+order to disable changing <filename>/etc/yp.conf</filename> by DHCP client, add
+PEERNIS=no into <filename>/etc/sysconfig/network</filename>.
+</para>
+
+
</refsect1>
<refsect1 id='options'>
@@ -256,6 +321,15 @@ With this options another frequency in s
</listitem>
</varlistentry>
<varlistentry>
+ <term><option>-p</option> port</term>
+ <listitem>
+<para>Lets
+<command>ypbind</command>
+listen on a specified port number, rather than asking portmapper to assingn a
+port for it.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
<term><option>--version</option></term>
<listitem>
<para>Prints the version number</para>
diff -up ypbind-mt-2.5/man/yp.conf.5.xml.helpman ypbind-mt-2.5/man/yp.conf.5.xml
--- ypbind-mt-2.5/man/yp.conf.5.xml.helpman 2018-06-07 16:29:01.853560699 +0200
+++ ypbind-mt-2.5/man/yp.conf.5.xml 2018-06-07 16:33:59.302833043 +0200
@@ -97,6 +97,14 @@
first the given servers before falling back to broadcasting
for a running server.
</para>
+ <para>
+ Content of <filename>/etc/yp.conf</filename> can be changed by DHCP client,
+ for more info see
+ <citerefentry>
+ <refentrytitle>ypbind</refentrytitle>
+ <manvolnum>8</manvolnum>
+ </citerefentry>.
+ </para>
</refsect1>
<refsect1 id='see_also'>

View File

@ -1,57 +0,0 @@
#!/bin/sh
#
# ypbind-domain
#
# description: This is part of former ypbind init script, which is used
# to fix problems with the init scripts continuing even when
# we are really not bound yet to a server, and then things
# that need NIS fail.
#
# NISTIMEOUT should be a multiple of 15 since
# ypwhich has a hardcoded 15sec timeout
[ -z "$NISTIMEOUT" ] && NISTIMEOUT=45
logger -t ypbind $"Binding NIS service"
timeout=$NISTIMEOUT
firsttime=1
rpcbound=0
SECONDS=0
retval=0
while [ $SECONDS -lt $timeout ] || [ $firsttime -eq 1 ] ; do
firsttime=0
if /usr/sbin/rpcinfo -p | LC_ALL=C fgrep -q ypbind
then
rpcbound=1
/usr/bin/ypwhich > /dev/null 2>&1
retval=$?
if [ $retval -eq 0 ]; then
break;
fi
fi
sleep 2
done
logger -t ypbind "Binding took $SECONDS seconds"
if [ $retval -eq 0 ]; then
if [ $rpcbound -eq 0 ]; then
logger -t ypbind \
"NIS domain: `domainname`, ypbind not registered with rpcbind."
else
logger -t ypbind \
"NIS domain: `domainname`, NIS server: `ypwhich 2> /dev/null`"
fi
else
logger -t ypbind \
"NIS server for domain `domainname` is not responding."
logger -t ypbind \
"Killing ypbind with PID $MAINPID."
kill -s 15 $MAINPID || :
logger -t ypbind \
"Try increase NISTIMEOUT in /etc/sysconfig/ypbind"
fi
exit $retval

View File

@ -1,44 +0,0 @@
#!/bin/sh
#
# ypbind-domain
#
# description: This is part of former ypbind init script, which is used
# to setup proper domainname before starting ypbind daemon
# itself. If $NISDOMAIN is not defined, it reads config file.
#
TIMEOUT=5
DOMAINNAME=`domainname`
if [ "$DOMAINNAME" = "(none)" -o "$DOMAINNAME" = "" ]; then
echo -n $"Setting NIS domain: "
seconds=0
while [ $seconds -lt $TIMEOUT ]; do
if [ -n "$NISDOMAIN" ]; then
domainname $NISDOMAIN
echo $"'$NISDOMAIN' (environment variable)"
break
else # See if the domain is set in config file
NISDOMAIN=`awk '{ if ($1 == "domain") {print $2; exit} }' /etc/yp.conf`
if [ -n "$NISDOMAIN" ]; then
domainname $NISDOMAIN
echo $"'$NISDOMAIN' (/etc/yp.conf)"
break
else
seconds=$(($seconds+1))
sleep 1
fi
fi
done
# Give up if NISDOMAIN is still not set
[ -z "$NISDOMAIN" ] && logger -t ypbind $"domain not found" && exit 1
fi
#/etc/rpc check
grep ypbind /etc/rpc > /dev/null 2>&1
if [ $? -ne 0 ]; then
logger -t ypbind $"Error: Missing ypbind entry in /etc/rpc."
exit 1
fi
echo

216
ypbind.init Executable file
View File

@ -0,0 +1,216 @@
#!/bin/sh
#
# ypbind: Starts the ypbind daemon
#
# Version: @(#) /etc/init.d/ypbind.init 1.3
#
# chkconfig: - 27 73
# description: This is a daemon which runs on NIS/YP clients and binds them \
# to a NIS domain. It must be running for systems based on glibc \
# to work as NIS clients, but it should not be enabled on systems \
# which are not using NIS.
# processname: ypbind
# config: /etc/yp.conf
#
# See https://fedoraproject.org/wiki/Packaging:SysVInitScript for
# the guidelines document.
OTHER_YPBIND_OPTS=""
# Source function library.
[ -f /etc/rc.d/init.d/functions ] || exit 0
. /etc/rc.d/init.d/functions
# getting the YP domain name
[ -e /etc/sysconfig/network ] && . /etc/sysconfig/network
# Check for and source configuration file otherwise set defaults
[ -f /etc/sysconfig/ypbind ] && . /etc/sysconfig/ypbind
# NISTIMEOUT should be a multiple of 15 since
# ypwhich has a hardcoded 15sec timeout
[ -z "$NISTIMEOUT" ] && NISTIMEOUT=45
# Check that networking is configured.
[ "${NETWORKING}" = "no" ] && exit 0
exec="/sbin/ypbind"
prog="ypbind"
lockfile=/var/lock/subsys/$prog
selinux_on() {
[ -x /usr/sbin/selinuxenabled ] && /usr/sbin/selinuxenabled || return
#echo $"Turning on allow_ypbind SELinux boolean"
setsebool allow_ypbind=1
}
selinux_off() {
[ -x /usr/sbin/selinuxenabled ] && /usr/sbin/selinuxenabled || return
allow_ypbind=0
. /etc/selinux/config
if [ -e /etc/selinux/${SELINUXTYPE}/modules/active/booleans.local ]; then
. /etc/selinux/${SELINUXTYPE}/modules/active/booleans.local
fi
if [ $allow_ypbind == 0 ]; then
#echo $"Turning off allow_ypbind SELinux boolean"
setsebool allow_ypbind=$allow_ypbind
fi
}
start() {
[ $UID -eq 0 ] || exit 4
[ -x $exec ] || exit 5
DOMAINNAME=`domainname`
if [ "$DOMAINNAME" = "(none)" -o "$DOMAINNAME" = "" ]; then
echo -n $"Setting NIS domain: "
if [ -n "$NISDOMAIN" ]; then
action $"domain is '$NISDOMAIN' " domainname $NISDOMAIN
else # See if the domain is set in config file
NISDOMAIN=`grep "domain" /etc/yp.conf | grep -v ^# | \
awk '{print $2}'`
if [ -n "$NISDOMAIN" ]; then
action $"domain is '$NISDOMAIN' " \
domainname $NISDOMAIN
else
action $"domain not found" /bin/false
logger -t ypbind $"domain not found"
return 1
fi
fi
fi
echo -n $"Starting NIS service: "
selinux_on
daemon $exec $OTHER_YPBIND_OPTS
retval=$?
echo
if [ $retval -ne 0 ]; then
#selinux_off
logger -t ypbind "failed to start!"
return $retval
fi
echo -n $"Binding NIS service: "
# the following fixes problems with the init scripts continuing
# even when we are really not bound yet to a server, and then things
# that need NIS fail.
timeout=10
firsttime=1
SECONDS=0
while [ $SECONDS -lt $timeout ]; do
if /usr/sbin/rpcinfo -p | LC_ALL=C fgrep -q ypbind
then
if [ $firsttime -eq 1 ]; then
# reset timeout
timeout=$NISTIMEOUT
firsttime=0
fi
/usr/bin/ypwhich > /dev/null 2>&1
retval=$?
if [ $retval -eq 0 ]; then
break;
fi
fi
sleep 2
echo -n "."
done
if [ $retval -eq 0 ]; then
logger -t ypbind \
"NIS domain: `domainname`, NIS server: `ypwhich 2> /dev/null`"
touch $lockfile
success
else
logger -t ypbind \
"NIS server for domain `domainname` is not responding."
failure
#selinux_off
retval=100
fi
echo
return $retval
}
stop() {
[ $UID -eq 0 ] || exit 4
[ -x $exec ] || exit 5
echo -n $"Shutting down NIS service: "
killproc $prog
retval=$?
echo
if [ $retval -eq 0 ]; then
rm -f $lockfile
# if we used brute force (like kill -9) we don't want those around
if [ x$(domainname) != x ]; then
rm -f /var/yp/binding/$(domainname)*
fi
fi
#selinux_off
return $retval
}
restart() {
stop
start
}
reload() {
echo -n $"Reloading NIS service: "
killproc $prog -HUP
retval=$?
echo
return $retval
}
force_reload() {
restart
}
rh_status() {
# run checks to determine if the service is running or use generic status
status $prog
}
rh_status_q() {
rh_status >/dev/null 2>&1
}
usage() {
echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"
}
# See how we were called.
case "$1" in
start)
rh_status_q && exit 0
$1
retval=$?
if [ $retval -eq 100 ]; then stop; exit 1; fi
exit $retval
;;
stop)
rh_status_q || exit 0
$1
;;
restart)
$1
;;
reload)
rh_status_q || exit 7
$1
;;
force-reload)
force_reload
;;
status)
rh_status
;;
condrestart|try-restart)
rh_status_q || exit 0
restart
;;
usage)
$1
;;
*)
usage
exit 2
esac
exit $?

View File

@ -1,22 +0,0 @@
# For details how to adjust this file or change daemon settings, please, read ypbind(8).
[Unit]
Description=NIS/YP (Network Information Service) Clients to NIS Domain Binder
Requires=rpcbind.service
Wants=nss-user-lookup.target network-online.target
After=syslog.target rpcbind.service ypserv.service
Before=systemd-user-sessions.service
Before=nss-user-lookup.target
[Service]
Type=notify
NotifyAccess=all
EnvironmentFile=-/etc/sysconfig/network
EnvironmentFile=-/etc/sysconfig/ypbind
ExecStartPre=/usr/libexec/ypbind-pre-setdomain
ExecStartPre=-/bin/bash -c 'selinuxenabled && /usr/sbin/setsebool allow_ypbind=1'
ExecStart=/usr/sbin/ypbind -n $OTHER_YPBIND_OPTS
ExecStartPost=/usr/libexec/ypbind-post-waitbind
PrivateTmp=true
[Install]
WantedBy=multi-user.target

View File

@ -1,39 +1,25 @@
Summary: The NIS daemon which binds NIS clients to an NIS domain Summary: The NIS daemon which binds NIS clients to an NIS domain
Name: ypbind Name: ypbind
Epoch: 3 Version: 1.31
Version: 2.7.2 Release: 3%{?dist}
Release: 9%{?dist}
License: GPLv2 License: GPLv2
Source0: https://github.com/thkukuk/ypbind-mt/archive/v%{version}.tar.gz#/ypbind-mt-%{version}.tar.gz Group: System Environment/Daemons
Source0: ftp://ftp.us.kernel.org/pub/linux/utils/net/NIS/ypbind-mt-%{version}.tar.bz2
Url: http://www.linux-nis.org/nis/ypbind-mt/index.html Url: http://www.linux-nis.org/nis/ypbind-mt/index.html
#Source1: ypbind.init Source1: ypbind.init
Source2: nis.sh Source2: nis.sh
Source3: ypbind.service
Source4: ypbind-pre-setdomain
Source5: ypbind-post-waitbind
# Fedora-specific patch. Renaming 'ypbind' package to proper
# 'ypbind-mt' would allow us to drop it.
Patch1: ypbind-1.11-gettextdomain.patch Patch1: ypbind-1.11-gettextdomain.patch
# Not sent to upstream.
Patch2: ypbind-2.5-helpman.patch Requires(post): chkconfig
# This is for /bin/systemctl Requires(preun): chkconfig
Requires(post): systemd # This is for /sbin/service
Requires(preun): systemd Requires(preun): initscripts
Requires(postun): systemd Requires(postun): initscripts
Requires: rpcbind Requires: rpcbind, yp-tools
Requires: yp-tools >= 4.2.2-2 Epoch: 3
# New nss_nis package in F25+ Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
Requires: nss_nis
BuildRequires: make
BuildRequires: gcc
BuildRequires: dbus-glib-devel, docbook-style-xsl BuildRequires: dbus-glib-devel, docbook-style-xsl
BuildRequires: systemd
BuildRequires: systemd-devel
BuildRequires: autoconf, automake
BuildRequires: gettext-devel
BuildRequires: libtirpc-devel
BuildRequires: libnsl2-devel
BuildRequires: libxslt
%description %description
The Network Information Service (NIS) is a system that provides The Network Information Service (NIS) is a system that provides
@ -55,377 +41,53 @@ also need to install the ypserv package to a machine on your network.
%prep %prep
%setup -q -n ypbind-mt-%{version} %setup -q -n ypbind-mt-%{version}
%patch1 -p1 -b .gettextdomain %patch1 -p1 -b .gettextdomain
%patch2 -p1 -b .helpman
autoreconf -fiv
%build %build
%ifarch s390 s390x %configure --sbindir=/sbin --enable-dbus-nm
export CFLAGS="$RPM_OPT_FLAGS -fPIC" make
%else
export CFLAGS="$RPM_OPT_FLAGS -fpic"
%endif
export LDFLAGS="$LDFLAGS -pie -Wl,-z,relro,-z,now"
#export CFLAGS="$CFLAGS -H"
%configure
%make_build
%install %install
%make_install rm -rf $RPM_BUILD_ROOT
make install DESTDIR=$RPM_BUILD_ROOT
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/yp/binding mkdir -p $RPM_BUILD_ROOT/%{_initrddir} $RPM_BUILD_ROOT/var/yp/binding $RPM_BUILD_ROOT/etc/dhcp/dhclient.d/
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/dhcp/dhclient.d install -m 644 etc/yp.conf $RPM_BUILD_ROOT/etc/yp.conf
mkdir -p $RPM_BUILD_ROOT%{_unitdir} install -m 755 %{SOURCE1} $RPM_BUILD_ROOT/%{_initrddir}/ypbind
mkdir -p $RPM_BUILD_ROOT%{_libexecdir} install -m 755 %{SOURCE2} $RPM_BUILD_ROOT/etc/dhcp/dhclient.d/nis.sh
install -m 644 etc/yp.conf $RPM_BUILD_ROOT%{_sysconfdir}/yp.conf
install -m 755 %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/dhcp/dhclient.d/nis.sh
install -m 644 %{SOURCE3} $RPM_BUILD_ROOT%{_unitdir}/ypbind.service
install -m 755 %{SOURCE4} $RPM_BUILD_ROOT%{_libexecdir}/ypbind-pre-setdomain
install -m 755 %{SOURCE5} $RPM_BUILD_ROOT%{_libexecdir}/ypbind-post-waitbind
%{find_lang} %{name} %{find_lang} %{name}
%clean
rm -rf $RPM_BUILD_ROOT
%post %post
%systemd_post %{name}.service /sbin/chkconfig --add ypbind
%preun %preun
%systemd_preun %{name}.service if [ $1 = 0 ] ; then
/sbin/service ypbind stop >/dev/null 2>&1
/sbin/chkconfig --del ypbind
fi
%postun %postun
%systemd_postun_with_restart %{name}.service if [ "$1" -ge "1" ] ; then
/sbin/service ypbind condrestart >/dev/null 2>&1 || :
fi
%files -f %{name}.lang %files -f %{name}.lang
%{_sbindir}/* %defattr(-,root,root)
/sbin/ypbind
%{_mandir}/*/* %{_mandir}/*/*
%{_libexecdir}/* %{_initrddir}/*
%{_unitdir}/* /etc/dhcp/dhclient.d/*
%{_sysconfdir}/dhcp/dhclient.d/* %config(noreplace) /etc/yp.conf
%config(noreplace) %{_sysconfdir}/yp.conf %dir /var/yp/binding
%dir %{_localstatedir}/yp/binding
%doc README NEWS %doc README NEWS
%license COPYING
%changelog %changelog
* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 3:2.7.2-9 * Wed May 19 2010 Karel Klic <kklic@redhat.com> - 3:1.31-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Sat Jan 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 3:2.7.2-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Fri Nov 12 2021 Björn Esser <besser82@fedoraproject.org> - 3:2.7.2-7
- Rebuild(libnsl2)
* Tue Sep 28 2021 Marek Kulik <mkulik@redhat.com> - 3:2.7.2-6
- Fix setsebool message in logs, resolves: #1882069
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3:2.7.2-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 3:2.7.2-4
- Rebuilt for updated systemd-rpm-macros
See https://pagure.io/fesco/issue/2583.
* Thu Jan 28 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3:2.7.2-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3:2.7.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Mon Apr 20 2020 Filip Januš <fjanus@redhat.com> - 2.7.2-1
- Update version to 2.7.2
- Resolves: #1796030
- Removing obsolete patches
* Fri Jan 31 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3:2.6.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Tue Jul 30 2019 Matej Mužila <mmuzila@redhat.com> - 3:2.6.1-1
- Update to version 2.6.1
- Resolves: #1668439
* Sat Jul 27 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3:2.5-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Sun Feb 03 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3:2.5-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3:2.5-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Thu Jun 07 2018 Matej Mužila <mmuzila@redhat.com> - 3:2.5-2
- Fix man pages
* Tue Jun 05 2018 Matej Mužila <mmuzila@redhat.com> - 3:2.5-1
- Update to version 2.5
* Mon Apr 30 2018 Petr Kubat <pkubat@redhat.com> - 3:2.4-8
- Add the runtime dependency on nss_nis back
* Fri Feb 09 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 3:2.4-7
- Escape macros in %%changelog
* Tue Jan 16 2018 Petr Kubat <pkubat@redhat.com> - 3:2.4-6
- Temporarily remove nss_nis dependency as it got removed from glibc (#1534599)
* Thu Sep 21 2017 Matej Mužila <mmuzila@redhat.com> - 3:2.4-5
- Add "Wants" dependency on network-online.target
- Remove "After" dependency on NetworkManager-wait-online.service
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3:2.4-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3:2.4-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Mon May 29 2017 Matej Mužila <mmuzila@gmail.com> - 3:2.4-2
- Require yp-tools >= 4.2.2-2
* Fri May 19 2017 Matej Mužila <mmuzila@redhat.com> - 3:2.4-1
- Update to version 2.4 supporting IPv6
* Wed Mar 29 2017 Petr Kubat <pkubat@redhat.com> - 3:1.38-10
- Wait a while for dhcp to set up the domain (#1170400)
* Mon Mar 20 2017 Petr Kubat <pkubat@redhat.com> - 3:1.38-9
- Add a Wants dependency on nss-user-lookup.target (#1282440)
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3:1.38-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Wed Nov 23 2016 Ralf Corsépius <corsepiu@fedoraproject.org> - 3:1.38-7
- Remove check for libsystemd-daemon from ypbind-systemdso.patch (RHBZ#1396893).
- Add check for systemd/sd-daemon.h to ypbind-systemdso.patch.
- Spec file cosmetics.
- Add %%license tag.
* Mon Nov 07 2016 Petr Kubat <pkubat@redhat.com> - 3:1.38-6
- Add runtime dependency on nss_nis
* Fri Feb 05 2016 Fedora Release Engineering <releng@fedoraproject.org> - 3:1.38-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Mon Jan 25 2016 Matej Muzila <mmuzila@redhat.com> 3:1.38-4
- Do not restart ypbind on dhcp renew if nis domain or nis servers
haven't changed
Resolves: rhbz#1301708
* Mon Nov 16 2015 Matej Muzila <mmuzila@redhat.com> 3:1.38-3
- Load ypbind.service before nss-user-lookup.target
Resolves: rhbz#1282440
* Fri Jun 19 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3:1.38-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Tue Oct 21 2014 Matej Mužila <mmuzila@redhat.com> - 3:1.38-1
- Update to 1.38
* Mon Aug 18 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3:1.37.2-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Fri Aug 15 2014 Honza Horak <hhorak@redhat.com> - 3:1.37.2-2
- link with systemd.so
* Fri Aug 15 2014 Honza Horak <hhorak@redhat.com> - 3:1.37.2-1
- Update to 1.37.2
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3:1.37.1-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Mon Nov 18 2013 Honza Horak <hhorak@redhat.com> - 3:1.37.1-9
- Replace autoreconf with autoconf
* Mon Nov 18 2013 Honza Horak <hhorak@redhat.com> - 3:1.37.1-8
- DHCP changes documented
Related: #1031093
* Thu Aug 29 2013 Honza Horak <hhorak@redhat.com> - 3:1.37.1-7
- Add network-online.target dependency
Resolves: #1002295
* Mon Aug 19 2013 Honza Horak <hhorak@redhat.com> - 3:1.37.1-6
- Improve systemd documentation
* Mon Jul 29 2013 Honza Horak <hhorak@redhat.com> - 3:1.37.1-5
- Remove SysV init conversion and systemd macros compatible code
- Require systemd instead systemd-units
- Remove systemd-sysv
* Thu May 09 2013 Honza Horak <hhorak@redhat.com> - 3:1.37.1-3
- Enable PrivateTmp feature, just for the case
* Tue May 07 2013 Honza Horak <hhorak@redhat.com> - 3:1.37.1-2
- Syncing help and man pages
* Mon May 06 2013 Honza Horak <hhorak@redhat.com> - 3:1.37.1-1
- Update to new version 1.37.1
* Tue Jan 29 2013 Honza Horak <hhorak@redhat.com> - 3:1.36-10
- Make re-bind interval a tune-able option
- Fixed bogus dates in changelog
* Wed Dec 19 2012 Honza Horak <hhorak@redhat.com> - 3:1.36-9
- Check presence of ypbind in /etc/rpc
Related: #888778
* Fri Nov 30 2012 Honza Horak <hhorak@redhat.com> - 3:1.36-8
- Build with full relro
* Thu Oct 04 2012 Honza Horak <hhorak@redhat.com> - 3:1.36-7
- Run %%triggerun regardless of systemd_post variable definition
* Mon Sep 24 2012 Honza Horak <hhorak@redhat.com> - 3:1.36-6
- Use sdnotify to inform systemd that daemon is ready
- Minor spec file cleanup
- Use new systemd macros
Resolves: #850375
- Add After: NetworkManager-wait-online.service
Related: #846767
* Thu Aug 23 2012 Honza Horak <hhorak@redhat.com> - 3:1.36-5
- Enhance ypbind(8) with info about NISTIMEOUT
- Add suggestion about extending NISTIMEOUT if ypbind timeouts
* Mon Jul 23 2012 Honza Horak <hhorak@redhat.com> - 3:1.36-4
- Add SIGPIPE to proper signal set
Related: #842228
- Fixed sending TERM signal in ypbind-post-waitbind
* Sun Jul 22 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3:1.36-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Wed Jul 11 2012 Honza Horak <hhorak@redhat.com> - 3:1.36-2
- Minor spec file fixes
- Helper scripts moved to /usr/libexec
* Wed Jul 11 2012 Honza Horak <hhorak@redhat.com> - 3:1.36-1
- Update to new version 1.36
* Tue Jul 10 2012 Honza Horak <hhorak@redhat.com> - 3:1.35-5
- consider all 127.0.0.0/8 as localhost addresses
Related: #829487
* Mon Jul 09 2012 Honza Horak <hhorak@redhat.com> - 3:1.35-4
- don't go offline when one of NIS servers is localhost
Related: #829487
* Fri Jun 01 2012 Honza Horak <hhorak@redhat.com> - 3:1.35-3
- fixed kill call in ypbind-post-waitbind script
* Wed Apr 18 2012 Honza Horak <hhorak@redhat.com> - 3:1.35-2
- NetworkManager signal name changed
Resolves: #812501
* Mon Mar 26 2012 Honza Horak <hhorak@redhat.com> - 3:1.35-1
- Update to new version with only minor changes
* Tue Jan 24 2012 Honza Horak <hhorak@redhat.com> - 3:1.33-11
- Don't fail when killing ypbind after unsuccessfull start fails
- Let ypbind start before systemd-user-sessions.service
Resolves: #783447
* Thu Jan 12 2012 Honza Horak <hhorak@redhat.com> - 3:1.33-10
- Fail to start ypbind service if domainname is not set
* Wed Nov 16 2011 Honza Horak <hhorak@redhat.com> - 3:1.33-9
- Fixed ypbind-post-waitbind to stop the service when binding is not success
* Tue Nov 15 2011 Honza Horak <hhorak@redhat.com> - 3:1.33-8
- Fixed ypbind-post-waitbind to handle long rpcinfo requests
Resolves: #624688
* Mon Sep 26 2011 Honza Horak <hhorak@redhat.com> - 3:1.33-7
- Don't turn off allow_ypbind SELinux boolean
Resolves: #741141
* Thu Sep 15 2011 Honza Horak <hhorak@redhat.com> - 3:1.33-6
- Fixed systemd unit file
- Log messages when starting ypbind service made more verbose
* Tue Aug 02 2011 Honza Horak <hhorak@redhat.com> - 3:1.33-5
- Fixed rpmlint errors
- Fixed systemd unit files packaging
* Mon Jun 13 2011 Honza Horak <hhorak@redhat.com> - 3:1.33-4
- Changed -n option for staying in foreground to not overlap
with config-file option
* Tue Jun 07 2011 Honza Horak <hhorak@redhat.com> - 3:1.33-3
- Fixed ypbind.service when selinux is disabled
* Tue May 10 2011 Honza Horak <hhorak@redhat.com> - 3:1.33-2
- Added /etc/sysconfig/network to systemd service file
* Tue May 10 2011 Honza Horak <hhorak@redhat.com> - 3:1.33-1
- Update to new version
* Fri Apr 29 2011 Honza Horak <hhorak@redhat.com> - 3:1.32-11
- Removed NM_DBUS_VPN_SIGNAL_STATE_CHANGE, use own constant
NM_DBUS_SIGNAL_STATE_CHANGED.
(rhbz#696629)
* Thu Apr 28 2011 Honza Horak <hhorak@redhat.com> - 3:1.32-10
- Made EnvironmentFile in systemd definition optional
(rhbz#632620)
* Thu Apr 14 2011 Honza Horak <hhorak@redhat.com> - 3:1.32-9
- Add native systemd unit file.
(rhbz#693873)
* Thu Apr 14 2011 Honza Horak <hhorak@redhat.com> - 3:1.32-8
- Added rpcbind to LSB header in SysV init file.
* Wed Apr 06 2011 Honza Horak <hhorak@redhat.com> - 3:1.32-7
- Added LSB init service definition in ypbind.init.
- Fix D-Bus response codes to correspond with NetworkManager.
(rhbz#693873)
* Fri Mar 18 2011 Honza Horak <hhorak@redhat.com> - 3:1.32-6
- Added the -typo2 patch which fixes a spelling error in a man pages.
(rhbz#664870)
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3:1.32-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Mon Nov 29 2010 Karel Klic <kklic@redhat.com> - 3:1.32-4
- Added the -typo patch which fixes a spelling error in a message.
* Fri Nov 19 2010 Karel Klic <kklic@redhat.com> - 3:1.32-3
- ypbind.init: More effective syntax for #601296.
* Fri Nov 19 2010 Karel Klic <kklic@redhat.com> - 3:1.32-2
- Modified the chkconfig priorities from 27/73 to 24/76, to move
ypbind before netfs. This is useful for hosts that mount NFS file
systems that reside on a server which is resolvable through NIS.
* Thu Jul 8 2010 Karel Klic <kklic@redhat.com> - 3:1.32-1
- Update to new version which contains the -matches.patch
* Wed Jun 23 2010 Karel Klic <kklic@redhat.com> - 3:1.31-7
- Added -matches.patch removing matches when dereferencing
DBus connection.
* Tue Jun 8 2010 Karel Klic <kklic@redhat.com> - 3:1.31-6
- ypbind.init: take the first domainname in yp.conf and use
only that (rhbz#601296)
* Fri May 21 2010 Karel Klic <kklic@redhat.com> - 3:1.31-5
- Moved /sbin/ypbind to /usr/sbin/ypbind, as the package
depends on several utilities from /usr (selinuxenabled,
rpcinfo, ypwhich), and /usr/lib/libdbus-glib-1.so
- Removed trailing whitespaces from ChangeLog
* Wed May 19 2010 Karel Klic <kklic@redhat.com> - 3:1.31-4
- Update SELinux context of /etc/yp.conf in nis.sh (rhbz#593278) - Update SELinux context of /etc/yp.conf in nis.sh (rhbz#593278)
- nis.sh: use condrestart instead of pidfile checking - Use cp+rm instead of mv in nis.sh (#509240)
- nis.sh: various simplifications
- Removed BuildRoot tag
- Removed %%clean section
* Wed Feb 24 2010 Karel Klic <kklic@redhat.com> - 3:1.31-3
- Added COPYING file to the package
* Thu Jan 21 2010 Karel Klic <kklic@redhat.com> - 3:1.31-2 * Thu Jan 21 2010 Karel Klic <kklic@redhat.com> - 3:1.31-2
- Rewrote initscript to become closer to Packaging:SysVInitScript - Rewrote initscript to become closer to Packaging:SysVInitScript
@ -440,7 +102,7 @@ install -m 755 %{SOURCE5} $RPM_BUILD_ROOT%{_libexecdir}/ypbind-post-waitbind
the documentation, and it is also removed from the usage the documentation, and it is also removed from the usage
string in this version string in this version
* Thu Nov 19 2009 Karel Klic <kklic@redhat.com> - 3:1.29.91-2 * Fri Nov 19 2009 Karel Klic <kklic@redhat.com> - 3:1.29.91-2
- Added signalstate patch, which fixes compilation with - Added signalstate patch, which fixes compilation with
NetworkManaged-devel headers installed. Resolves #537064. NetworkManaged-devel headers installed. Resolves #537064.
@ -522,7 +184,7 @@ install -m 755 %{SOURCE5} $RPM_BUILD_ROOT%{_libexecdir}/ypbind-post-waitbind
* Mon Sep 17 2007 Steve Dickson <steved@redhat.com> - 3:1.20.4-2 * Mon Sep 17 2007 Steve Dickson <steved@redhat.com> - 3:1.20.4-2
- Fixed a couple of typos in initscript (bz 281951) - Fixed a couple of typos in initscript (bz 281951)
* Thu May 3 2007 Steve Dickson <steved@redhat.com> - 3:1.20.4-1 * Wed May 3 2007 Steve Dickson <steved@redhat.com> - 3:1.20.4-1
- updated to latest upstream version ypbind-mt-1.20.4 - updated to latest upstream version ypbind-mt-1.20.4
* Tue Apr 17 2007 Steve Dickson <steved@redhat.com> - 3:1.19-9 * Tue Apr 17 2007 Steve Dickson <steved@redhat.com> - 3:1.19-9
@ -668,7 +330,7 @@ install -m 755 %{SOURCE5} $RPM_BUILD_ROOT%{_libexecdir}/ypbind-post-waitbind
* Sun Jun 24 2001 Elliot Lee <sopwith@redhat.com> * Sun Jun 24 2001 Elliot Lee <sopwith@redhat.com>
- Bump release + rebuild. - Bump release + rebuild.
* Mon Jun 4 2001 Preston Brown <pbrown@redhat.com> * Fri Jun 4 2001 Preston Brown <pbrown@redhat.com>
- small fixes for initscript. Sometimes had trouble on slower systems (#37463) - small fixes for initscript. Sometimes had trouble on slower systems (#37463)
* Sat Mar 3 2001 Preston Brown <pbrown@redhat.com> * Sat Mar 3 2001 Preston Brown <pbrown@redhat.com>