]>
Commit | Line | Data |
---|---|---|
332ceb62 | 1 | #!/bin/sh |
a5333732 | 2 | # DHCP relay agent |
332ceb62 | 3 | # |
31822625 | 4 | # chkconfig: 345 80 20 |
a5333732 | 5 | # description: DHCP relay agent |
332ceb62 | 6 | |
7 | # Source function library. | |
8 | . /etc/rc.d/init.d/functions | |
9 | ||
3b314dfa JR |
10 | # Source networking configuration. |
11 | . /etc/sysconfig/network | |
12 | ||
13 | # Demon specified configuration. | |
9ce40d98 | 14 | OPTIONS="" |
3b314dfa | 15 | . /etc/sysconfig/dhcp-relay |
332ceb62 | 16 | |
3b314dfa | 17 | # Check that networking is up. |
dfbb7f59 | 18 | if is_yes "${NETWORKING}"; then |
d91f786f | 19 | if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then |
dfbb7f59 | 20 | msg_network_down "DHCP realay" |
21 | exit 1 | |
22 | fi | |
23 | else | |
24 | exit 0 | |
3b314dfa | 25 | fi |
332ceb62 | 26 | |
9ce40d98 JK |
27 | if [ -n "DHCP_RELAY_INTERFACES" ]; then |
28 | for iface in $DHCP_RELAY_INTERFACES ; do | |
29 | OPTIONS="$OPTIONS -i $iface" | |
30 | done | |
dde046a6 | 31 | fi |
32 | ||
73135f0a | 33 | start() { |
6dfd82ed | 34 | if [ ! -f /var/lock/subsys/dhcp-relay ]; then |
a5333732 | 35 | msg_starting "DHCP relay" |
038c238a | 36 | daemon /sbin/dhcrelay $OPTIONS $DHCP_SERVERS_IP |
a5333732 | 37 | RETVAL=$? |
6dfd82ed | 38 | [ $RETVAL -eq 0 ] && touch /var/lock/subsys/dhcp-relay |
a5333732 | 39 | else |
badf1526 | 40 | msg_already_running "DHCP relay" |
13f26ef2 | 41 | fi |
73135f0a JB |
42 | } |
43 | ||
44 | stop() { | |
915cd150 | 45 | if [ -f /var/lock/subsys/dhcp-relay ]; then |
46 | msg_stopping "DHCP relay" | |
47 | killproc dhcrelay | |
48 | rm -f /var/lock/subsys/dhcp-relay | |
49 | else | |
50 | msg_not_running "DHCP relay" | |
51 | fi | |
73135f0a JB |
52 | } |
53 | ||
54 | condrestart() { | |
55 | if [ -f /var/lock/subsys/dhcp-relay ]; then | |
56 | stop | |
57 | start | |
58 | else | |
59 | msg_not_running "DHCP relay" | |
60 | RETVAL=$1 | |
61 | fi | |
62 | } | |
63 | ||
64 | RETVAL=0 | |
65 | # See how we were called. | |
66 | case "$1" in | |
67 | start) | |
68 | start | |
332ceb62 | 69 | ;; |
73135f0a JB |
70 | stop) |
71 | stop | |
72 | ;; | |
73 | restart) | |
74 | stop | |
75 | start | |
76 | ;; | |
77 | try-restart) | |
78 | condrestart 0 | |
79 | ;; | |
80 | force-reload) | |
81 | condrestart 7 | |
332ceb62 | 82 | ;; |
83 | status) | |
ddd9a79d | 84 | status dhcrelay |
915cd150 | 85 | exit $? |
332ceb62 | 86 | ;; |
87 | *) | |
73135f0a | 88 | msg_usage "$0 {start|stop|restart|try-restart|force-reload|status}" |
915cd150 | 89 | exit 3 |
332ceb62 | 90 | esac |
91 | ||
a5333732 | 92 | exit $RETVAL |