diff options
Diffstat (limited to 'main/ipset/ipset.initd')
-rw-r--r-- | main/ipset/ipset.initd | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/main/ipset/ipset.initd b/main/ipset/ipset.initd index ee1668939b..2678c007e8 100644 --- a/main/ipset/ipset.initd +++ b/main/ipset/ipset.initd @@ -95,7 +95,9 @@ reload() { fi echo create $new $(set_file $name | head -n 1) done + ) | ipset restore + ( for name in $(set_files); do local new=$name set_exists _init_$name && new=_init_$name @@ -105,15 +107,15 @@ reload() { for name in $swap; do echo swap $name _init_$name done + ) | ipset restore - for name in $(set_lists); do - [ -f $DIR/$name ] || echo destroy $name - done + for name in $(set_lists); do + [ -f $DIR/$name ] || echo destroy $name + done | ipset restore - for name in $(sets); do - [ -f $DIR/$name ] || echo destroy $name - done - ) | ipset restore + for name in $(sets); do + [ -f $DIR/$name ] || echo destroy $name + done | ipset restore eend $STATUS } |