X-Git-Url: https://git.distorted.org.uk/~mdw/firewall/blobdiff_plain/17a45245166c336172d7843e70a089f6e70e0b90..32110b35da9d3ed1ce9668d3f17c28100a878687:/functions.m4 diff --git a/functions.m4 b/functions.m4 index 3cd570d..1cd0db5 100644 --- a/functions.m4 +++ b/functions.m4 @@ -109,11 +109,19 @@ clearchain () { makeset () { set -e name=$1; shift - if ipset -nL | grep -q "^Name: $name$"; then - : - else - ipset -N "$name" "$@" - fi + v=$(ipset --version) + createp=t + case "$v" in + "ipset v4"*) + if ipset -nL | grep -q "^Name: $name\$"; then createp=nil; fi + ;; + *) + if ipset -n -L | grep -q "^$name\$"; then createp=nil; fi + ;; + esac + case $createp in + t) ipset -N "$name" "$@" ;; + esac } ## errorchain CHAIN ACTION ARGS ...