[main]
@type = oneshot
@version = @vers@
@description = "Restore iptables rules"
@depends = ( mount-rw )
@user = ( root )

[start]
@execute =
(
    if { 66-yeller -cdp local-iptables -1 /dev/console restore iptables configuration }
    if -nt {

        execl-toc -e ${script_conf}
        iptables-restore ${script_conf}

    }
    66-yeller -fcdp local-iptables -1 /dev/console crashed!
)

[stop]
@execute =
(#!/usr/bin/bash

    exec 2>&1

    66-yeller -cdp local-iptables -1 /dev/console flush iptables configuration

    if ! type -p iptables &>/dev/null; then
      66-yeller -fcdp local-iptables -1 /dev/console unable to find iptables program
      exit 111
    fi

    while read -r table; do
        tables+=("/usr/share/iptables/empty-$table.rules")
    done <"/proc/net/ip_tables_names"

    if (( ${#tables[*]} )); then
        cat "${tables[@]}" | iptables-restore
    fi
)

[environment]
script_conf=!/etc/iptables/iptables.rules

[logger]
@destination = @live_dir@/log/local-iptables
