#!/bin/sh # DHCP relay agent # # chkconfig: 345 80 20 # description: DHCP relay agent # Source function library. . /etc/rc.d/init.d/functions # Source networking configuration. . /etc/sysconfig/network # Demon specified configuration. OPTIONS="" . /etc/sysconfig/dhcp-relay # Check that networking is up. if is_yes "${NETWORKING}"; then if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then msg_network_down "DHCP realay" exit 1 fi else exit 0 fi if [ -n "DHCP_RELAY_INTERFACES" ]; then for iface in $DHCP_RELAY_INTERFACES ; do OPTIONS="$OPTIONS -i $iface" done fi RETVAL=0 # See how we were called. case "$1" in start) # Check if the service is already running? if [ ! -f /var/lock/subsys/dhcp-relay ]; then msg_starting "DHCP relay" daemon dhcrelay $OPTIONS $DHCP_SERVERS_IP RETVAL=$? [ $RETVAL -eq 0 ] && touch /var/lock/subsys/dhcp-relay else msg_already_running "DHCP relay" fi ;; stop) if [ -f /var/lock/subsys/dhcp-relay ]; then msg_stopping "DHCP relay" killproc dhcrelay rm -f /var/lock/subsys/dhcp-relay else msg_not_running "DHCP relay" fi ;; restart|force-reload) $0 stop $0 start exit $? ;; status) status dhcrelay exit $? ;; *) msg_usage "$0 {start|stop|restart|force-reload|status}" exit 3 esac exit $RETVAL