aboutsummaryrefslogtreecommitdiffstats
path: root/main/ipset/ipset.initd
diff options
context:
space:
mode:
Diffstat (limited to 'main/ipset/ipset.initd')
-rw-r--r--main/ipset/ipset.initd16
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
}