]> git.pld-linux.org Git - packages/ipset.git/blob - ipset.init
- rebuild for kernel-3.10.15-1
[packages/ipset.git] / ipset.init
1 #!/bin/sh
2 #
3 # chkconfig: 2345 07 93
4 # description: Automates administration of IP sets.
5 #
6 # config: /etc/sysconfig/ipset
7 #
8 # $Id$
9
10 IPSET_CONFIG=/etc/sysconfig/ipset
11 if [ ! -f $IPSET_CONFIG ]; then
12         case "$1" in
13         start|restart|try-restart|reload|force-reload)
14                 exit 0
15         ;;
16         esac
17 fi
18
19 . /etc/rc.d/init.d/functions
20
21 start() {
22         if [ ! -f $IPSET_CONFIG ]; then
23                 return
24         fi
25
26         show "Applying ipset rules"
27         /usr/sbin/ipset -X
28         /usr/sbin/ipset -R < $IPSET_CONFIG
29         RETVAL=$?
30         if [ $RETVAL = 0 ]; then
31                 ok
32         else
33                 fail
34         fi
35         touch /var/lock/subsys/ipset
36 }
37
38 stop() {
39         if [ ! -f /var/lock/subsys/ipset ]; then
40                 return
41         fi
42
43         show "Resetting ipset rules"
44         /usr/sbin/ipset -X && ok || fail
45         rm -f /var/lock/subsys/ipset
46 }
47
48 save() {
49         show "Saving current rules to %s" $IPSET_CONFIG
50         /usr/sbin/ipset -S > $IPSET_CONFIG.tmp
51         RETVAL=$?
52         if [ $RETVAL = 0 ]; then
53                 cat $IPSET_CONFIG.tmp > $IPSET_CONFIG
54                 chmod 600 $IPSET_CONFIG
55                 ok
56         else
57                 fail
58         fi
59         rm -f $IPSET_CONFIG.tmp
60 }
61
62 status() {
63         /usr/sbin/ipset -L --sorted --numeric
64         RETVAL=$?
65 }
66
67 RETVAL=0
68 case "$1" in
69   start)
70         start
71         ;;
72   stop)
73         stop
74         ;;
75   restart|try-restart|reload|force-reload)
76         start
77         ;;
78   save)
79         save
80         ;;
81   status)
82         status
83         ;;
84   *)
85         msg_usage "$0 {start|stop|restart|try-restart|reload|force-reload|save|status}"
86         exit 3
87 esac
88
89 exit $RETVAL
This page took 0.034734 seconds and 3 git commands to generate.