fix check mode with -cf in DHCPDARGS; check /var/lib/dhcpd/dhcpd.leases

instead of /var/lib/dhcp/dhcpd.leases
This commit is contained in:
jvdias 2005-11-15 17:11:05 +00:00
parent 0212e15230
commit baae35b9dc

View File

@ -17,25 +17,38 @@
[ ${NETWORKING} = "no" ] && exit 0 [ ${NETWORKING} = "no" ] && exit 0
[ -f /usr/sbin/dhcpd ] || exit 0 [ -f /usr/sbin/dhcpd ] || exit 0
CF='/etc/dhcpd.conf'
if [[ "$DHCPDARGS" = *-cf* ]]; then cfOption()
CF=`echo $DHCPDARGS | sed 's/^.*-cf[\ \ ]*//;s/[\ \ ].*$//';`; { let i=0;
fi; for a in $*;
[ -f "$CF" ] || exit 0 do ((++i));
if [ ! -f /var/lib/dhcp/dhcpd.leases ] ; then if [ $a = -cf ]; then
touch /var/lib/dhcp/dhcpd.leases ((++i));
[ -x /sbin/restorecon ] && [ -d /selinux ] && /sbin/restorecon /var/lib/dhcp/dhcpd.leases eval 'echo $'$i;
elif [[ $a = -cf* ]]; then
echo ${a#-cf};
fi;
done;
}
CF=`cfOption $DHCPDARGS`
if [ -z "$CF" ]; then
CF='/etc/dhcpd.conf';
fi fi
[ -f "$CF" ] || exit 0
if [ ! -f /var/lib/dhcpd/dhcpd.leases ] ; then
mkdir -p /var/lib/dhcpd
touch /var/lib/dhcpd/dhcpd.leases
[ -x /sbin/restorecon ] && [ -d /selinux ] && /sbin/restorecon /var/lib/dhcp/dhcpd.leases >/dev/null 2>&1
fi
RETVAL=0 RETVAL=0
prog="dhcpd" prog="dhcpd"
configtest() configtest()
{ {
CFA='' /usr/sbin/dhcpd -q -t -cf $CF
if [[ "$DHCPDARGS" = *-cf* ]]; then
CFA=`echo $DHCPDARGS | sed 's/^.*-cf[\ \ ]*/-cf/;s/[\ \ ].*$//;s/-cf/-cf /'`;
fi;
/usr/sbin/dhcpd -q -t $CFA
return $? return $?
} }
@ -98,7 +111,7 @@ case "$1" in
RETVAL=$? RETVAL=$?
fi fi
;; ;;
configtest) configtest|check|testconfig|test)
configtest configtest
RETVAL=$? RETVAL=$?
;; ;;