diff options
Diffstat (limited to 'net-firewall/iptables/files/iptables-1.2.9-r1.init')
-rw-r--r-- | net-firewall/iptables/files/iptables-1.2.9-r1.init | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/net-firewall/iptables/files/iptables-1.2.9-r1.init b/net-firewall/iptables/files/iptables-1.2.9-r1.init new file mode 100644 index 000000000000..67af39b880b7 --- /dev/null +++ b/net-firewall/iptables/files/iptables-1.2.9-r1.init @@ -0,0 +1,71 @@ +#!/sbin/runscript +# Copyright 1999-2004 Gentoo Technologies, Inc. +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-firewall/iptables/files/iptables-1.2.9-r1.init,v 1.1 2004/04/25 16:30:36 aliz Exp $ + +opts="start stop save reload" + +depend() { + before net + need logger +} + +checkrules() { + if [ ! -f ${IPTABLES_SAVE} ] + then + eerror "Not starting iptables. First create some rules then run" + eerror "/etc/init.d/iptables save" + return 1 + fi +} + +start() { + checkrules || return 1 + ebegin "Loading iptables state and starting firewall" + einfo "Restoring iptables ruleset" + /sbin/iptables-restore ${SAVE_RESTORE_OPTIONS} < ${IPTABLES_SAVE} + eend $? +} + +stop() { + ebegin "Stopping firewall" + for a in `cat /proc/net/ip_tables_names`; do + /sbin/iptables -F -t $a + /sbin/iptables -X -t $a + + if [ $a == nat ]; then + /sbin/iptables -t nat -P PREROUTING ACCEPT + /sbin/iptables -t nat -P POSTROUTING ACCEPT + /sbin/iptables -t nat -P OUTPUT ACCEPT + elif [ $a == mangle ]; then + /sbin/iptables -t mangle -P PREROUTING ACCEPT + /sbin/iptables -t mangle -P INPUT ACCEPT + /sbin/iptables -t mangle -P FORWARD ACCEPT + /sbin/iptables -t mangle -P OUTPUT ACCEPT + /sbin/iptables -t mangle -P POSTROUTING ACCEPT + elif [ $a == filter ]; then + /sbin/iptables -t filter -P INPUT ACCEPT + /sbin/iptables -t filter -P FORWARD ACCEPT + /sbin/iptables -t filter -P OUTPUT ACCEPT + fi + done + eend $? +} + +reload() { + ebegin "Flushing firewall" + for a in `cat /proc/net/ip_tables_names`; do + /sbin/iptables -F -t $a + /sbin/iptables -X -t $a + done; + eend $? + + start +} + +save() { + ebegin "Saving iptables state" + /sbin/iptables-save ${SAVE_RESTORE_OPTIONS} > ${IPTABLES_SAVE} + eend $? +} + |