| #!/sbin/runscript |
| # Copyright 1999-2015 Gentoo Foundation |
| # Distributed under the terms of the GNU General Public License v2 |
| # $Id$ |
| |
| description='The Shoreline Firewall Lite, more commonly known as "Shorewall Lite", is' |
| description="${description} a high-level tool for configuring Netfilter." |
| |
| extra_commands="clear" |
| extra_started_commands="reset" |
| |
| description_clear="Clear will remove all rules and chains installed by" |
| description_clear="${description_clear} Shorewall Lite. The firewall is" |
| description_clear="${description_clear} then wide open and unprotected." |
| |
| description_reset="All the packet and byte counters in the firewall are reset." |
| |
| command="/usr/sbin/shorewall-lite" |
| |
| depend() { |
| provide firewall |
| after ulogd |
| } |
| |
| status() { |
| local _retval |
| ${command} status 1>/dev/null |
| _retval=$? |
| if [ ${_retval} = '0' ]; then |
| einfo 'status: started' |
| mark_service_started "${SVCNAME}" |
| return 0 |
| else |
| einfo 'status: stopped' |
| mark_service_stopped "${SVCNAME}" |
| return 3 |
| fi |
| } |
| |
| start() { |
| ebegin "Starting shorewall-lite" |
| ${command} ${OPTIONS} start ${STARTOPTIONS} 1>/dev/null |
| eend $? |
| } |
| |
| stop() { |
| ebegin "Stopping shorewall-lite" |
| ${command} ${OPTIONS} stop ${STOPOPTIONS} 1>/dev/null |
| eend $? |
| } |
| |
| restart() { |
| ebegin "Restarting shorewall-lite" |
| ${command} status 1>/dev/null |
| if [ $? != 0 ] ; then |
| svc_start |
| else |
| ${command} ${OPTIONS} restart ${RESTARTOPTIONS} 1>/dev/null |
| fi |
| eend $? |
| } |
| |
| clear() { |
| ebegin "Clearing all shorewall-lite rules and setting policy to ACCEPT" |
| ${command} ${OPTIONS} clear 1>/dev/null |
| eend $? |
| } |
| |
| reset() { |
| ebegin "Resetting the packet and byte counters in shorewall-lite" |
| ${command} ${OPTIONS} reset 1>/dev/null |
| eend $? |
| } |