62 lines
997 B
Plaintext
62 lines
997 B
Plaintext
|
#!/bin/sh /etc/rc.common
|
||
|
|
||
|
START=19
|
||
|
USE_PROCD=1
|
||
|
QUIET=""
|
||
|
|
||
|
validate_firewall_redirect()
|
||
|
{
|
||
|
uci_validate_section firewall redirect "${1}" \
|
||
|
'proto:or(uinteger, string)' \
|
||
|
'src:string' \
|
||
|
'src_ip:cidr' \
|
||
|
'src_dport:or(port, portrange)' \
|
||
|
'dest:string' \
|
||
|
'dest_ip:cidr' \
|
||
|
'dest_port:or(port, portrange)' \
|
||
|
'target:or("SNAT", "DNAT")'
|
||
|
}
|
||
|
|
||
|
validate_firewall_rule()
|
||
|
{
|
||
|
uci_validate_section firewall rule "${1}" \
|
||
|
'proto:or(uinteger, string)' \
|
||
|
'src:string' \
|
||
|
'dest:string' \
|
||
|
'src_port:or(port, portrange)' \
|
||
|
'dest_port:or(port, portrange)' \
|
||
|
'target:string'
|
||
|
}
|
||
|
|
||
|
service_triggers() {
|
||
|
procd_add_reload_trigger firewall
|
||
|
|
||
|
procd_open_validate
|
||
|
validate_firewall_redirect
|
||
|
validate_firewall_rule
|
||
|
procd_close_validate
|
||
|
}
|
||
|
|
||
|
restart() {
|
||
|
fw3 restart
|
||
|
}
|
||
|
|
||
|
start_service() {
|
||
|
fw3 ${QUIET} start
|
||
|
}
|
||
|
|
||
|
stop_service() {
|
||
|
fw3 flush
|
||
|
}
|
||
|
|
||
|
reload_service() {
|
||
|
fw3 reload
|
||
|
}
|
||
|
|
||
|
boot() {
|
||
|
# Be silent on boot, firewall might be started by hotplug already,
|
||
|
# so don't complain in syslog.
|
||
|
QUIET=-q
|
||
|
start
|
||
|
}
|