aports/main/shorewall/shorewall.initd

71 lines
1.5 KiB
Plaintext

#!/sbin/openrc-run
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/net-firewall/shorewall/files/shorewall.initd,v 1.4 2013/07/13 14:09:09 constanze Exp $
command=/usr/sbin/shorewall
extra_commands="check clear"
extra_started_commands="refresh reset safe_restart"
depend() {
need net
provide firewall
after ulogd
}
start() {
checkpath -d -m 755 /var/lock/subsys
ebegin "Starting shorewall"
$command -f start 1>/dev/null
eend $?
}
stop() {
ebegin "Stopping shorewall"
$command stop 1>/dev/null
eend $?
}
safe_restart() {
ebegin "Safely restarting shorewall"
$command safe-restart 1>/dev/null
eend $?
}
clear() {
# clear will remove all the rules and bring the system to an unfirewalled
# state. (21 Nov 2004 eldad)
ebegin "Clearing all shorewall rules and setting policy to ACCEPT"
$command clear
eend $?
}
reset() {
# reset the packet and byte counters in the firewall
ebegin "Resetting the packet and byte counters in the shorewall"
$command reset
eend $?
}
refresh() {
# refresh the rules involving the broadcast addresses of firewall
# interfaces, the black list, traffic control rules and
# ECN control rules
ebegin "Refreshing shorewall rules"
$command refresh
eend $?
}
check() {
# perform cursory validation of the zones, interfaces, hosts, rules
# and policy files. CAUTION: does not parse and validate the generated
# iptables commands.
ebegin "Checking configuration files"
$command check
eend $?
}