diff options
Diffstat (limited to 'meta-networking/recipes-filter/conntrack-tools/files/init')
-rw-r--r-- | meta-networking/recipes-filter/conntrack-tools/files/init | 87 |
1 files changed, 87 insertions, 0 deletions
diff --git a/meta-networking/recipes-filter/conntrack-tools/files/init b/meta-networking/recipes-filter/conntrack-tools/files/init new file mode 100644 index 000000000..bce2075a7 --- /dev/null +++ b/meta-networking/recipes-filter/conntrack-tools/files/init | |||
@@ -0,0 +1,87 @@ | |||
1 | #!/bin/sh | ||
2 | # | ||
3 | # /etc/init.d/conntrackd | ||
4 | # | ||
5 | # Maximilian Wilhelm <max@rfc2324.org> | ||
6 | # -- Mon, 06 Nov 2006 18:39:07 +0100 | ||
7 | # | ||
8 | # Roman I Khimov <khimov@altell.ru> | ||
9 | # -- Tue, 27 Oct 2009 14:34:00 +0300 | ||
10 | |||
11 | ### BEGIN INIT INFO | ||
12 | # Provides: conntrackd | ||
13 | # Required-Start: $remote_fs $syslog | ||
14 | # Required-Stop: $remote_fs $syslog | ||
15 | # Default-Start: 2 3 4 5 | ||
16 | # Default-Stop: 0 1 6 | ||
17 | # Description: Starts conntrackd | ||
18 | # short-description: Starts conntrackd | ||
19 | ### END INIT INFO | ||
20 | |||
21 | export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin | ||
22 | |||
23 | NAME="conntrackd" | ||
24 | DAEMON="/usr/sbin/conntrackd" | ||
25 | CONFIG="/etc/conntrackd/conntrackd.conf" | ||
26 | PIDFILE="/var/run/${NAME}.pid" | ||
27 | |||
28 | |||
29 | # Gracefully exit if there is no daemon (debian way of life) | ||
30 | if [ ! -x "${DAEMON}" ]; then | ||
31 | exit 0 | ||
32 | fi | ||
33 | |||
34 | # Check for config file | ||
35 | if [ ! -f /etc/conntrackd/conntrackd.conf ]; then | ||
36 | echo "Error: There is no config file for $NAME" >&2 | ||
37 | exit 1; | ||
38 | fi | ||
39 | |||
40 | case "$1" in | ||
41 | start) | ||
42 | echo -n "Starting $NAME: " | ||
43 | for i in nf_conntrack_netlink nf_conntrack_netbios_ns nf_conntrack_proto_dccp nf_conntrack_tftp \ | ||
44 | nf_conntrack_sane nf_conntrack_pptp nf_conntrack_irc nf_conntrack_amanda nf_conntrack_h323 \ | ||
45 | nf_conntrack_proto_udplite nf_conntrack_proto_gre nf_conntrack_proto_sctp nf_conntrack_ftp \ | ||
46 | nf_conntrack_sip; do | ||
47 | modprobe $i >/dev/null 2>/dev/null & | ||
48 | done | ||
49 | start-stop-daemon --start --quiet --make-pidfile --pidfile "/var/run/${NAME}.pid" --background --exec "${DAEMON}" | ||
50 | RET=$? | ||
51 | if [ "$?" = "0" ]; then | ||
52 | sleep 2 | ||
53 | # Sync with other server | ||
54 | conntrackd -n | ||
55 | echo "done." | ||
56 | else | ||
57 | echo "FAILED!" | ||
58 | fi | ||
59 | exit $RET | ||
60 | ;; | ||
61 | stop) | ||
62 | echo -n "Stopping $NAME:" | ||
63 | start-stop-daemon --stop --quiet --oknodo --pidfile "/var/run/${NAME}.pid" && echo "done." || echo "FAILED!" | ||
64 | ;; | ||
65 | status) | ||
66 | echo -n "conntrackd " | ||
67 | start-stop-daemon -q -K -t -x $DAEMON | ||
68 | RET=$? | ||
69 | if [ "$RET" = "0" ]; then | ||
70 | PID=`cat $PIDFILE` | ||
71 | echo "($PID) is running" | ||
72 | else | ||
73 | echo "is not running" | ||
74 | exit $RET | ||
75 | fi | ||
76 | ;; | ||
77 | restart) | ||
78 | $0 stop | ||
79 | $0 start | ||
80 | ;; | ||
81 | |||
82 | *) | ||
83 | echo "Usage: /etc/init.d/conntrackd {start|stop|restart}" | ||
84 | exit 1 | ||
85 | esac | ||
86 | |||
87 | exit 0 | ||