aboutsummaryrefslogtreecommitdiff
path: root/src/ebtables/ebtables.rc
diff options
context:
space:
mode:
Diffstat (limited to 'src/ebtables/ebtables.rc')
-rwxr-xr-xsrc/ebtables/ebtables.rc31
1 files changed, 31 insertions, 0 deletions
diff --git a/src/ebtables/ebtables.rc b/src/ebtables/ebtables.rc
new file mode 100755
index 0000000..a845449
--- /dev/null
+++ b/src/ebtables/ebtables.rc
@@ -0,0 +1,31 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+. /etc/conf.d/${0##*/}
+
+case "$1" in
+ start)
+ stat_busy 'Loading ebtables rules'
+ ebtables-restore < "$CONFIG_FILE" &&
+ add_daemon ${0##*/} && stat_done || stat_die
+ ;;
+ stop)
+ [[ $SAVE_ON_STOP =~ [yY][eE][sS] ]] && $0 save
+ status 'Clearing ebtables rules' ebtables -F && rm_daemon ${0##*/} || exit 1
+ ;;
+ restart)
+ $0 stop
+ $0 start
+ ;;
+ save)
+ stat_busy 'Saving ebtables rules'
+ ebtables-save > "$CONFIG_FILE" && stat_done || stat_die
+ ;;
+ *)
+ echo "usage: ${0##*/} {start|stop|restart|save}" >&2
+ exit 1
+ ;;
+esac
+
+# vim:set ts=2 sw=2 ft=sh et: