]> git.ipfire.org Git - thirdparty/iptables.git/commitdiff
libxt_physdev: restore inversion support
authorJan Engelhardt <jengelh@medozas.de>
Sun, 21 Aug 2011 10:27:06 +0000 (12:27 +0200)
committerJan Engelhardt <jengelh@medozas.de>
Sun, 21 Aug 2011 10:37:20 +0000 (12:37 +0200)
Bug origin is in commit v1.4.11~26^2~4.

References: Dave Täht via netfilter-devel on 2011-08-20 14:40:11 -0700
References: <CAA93jw6mpDL6rLXM+9SpAhafkDdKoSfhAxU8UM87vUqjuzjYJw@mail.gmail.com>
Signed-off-by: Jan Engelhardt <jengelh@medozas.de>
extensions/libxt_physdev.c
tests/options-most.rules

index 8f57fe9f235e588e7ef60edd419f20b7d6858af2..a11faf40b7c80d39e5efacc4e51bc66ab95d2732 100644 (file)
@@ -27,11 +27,12 @@ static const struct xt_option_entry physdev_opts[] = {
         .flags = XTOPT_INVERT | XTOPT_PUT, XTOPT_POINTER(s, physindev)},
        {.name = "physdev-out", .id = O_PHYSDEV_OUT, .type = XTTYPE_STRING,
         .flags = XTOPT_INVERT | XTOPT_PUT, XTOPT_POINTER(s, physoutdev)},
-       {.name = "physdev-is-in", .id = O_PHYSDEV_IS_IN, .type = XTTYPE_NONE},
+       {.name = "physdev-is-in", .id = O_PHYSDEV_IS_IN, .type = XTTYPE_NONE,
+        .flags = XTOPT_INVERT},
        {.name = "physdev-is-out", .id = O_PHYSDEV_IS_OUT,
-        .type = XTTYPE_NONE},
+        .type = XTTYPE_NONE, .flags = XTOPT_INVERT},
        {.name = "physdev-is-bridged", .id = O_PHYSDEV_IS_BRIDGED,
-        .type = XTTYPE_NONE},
+        .type = XTTYPE_NONE, .flags = XTOPT_INVERT},
        XTOPT_TABLEEND,
 };
 #undef s
index 37aeabf885461531bdbffe636a6361ecac7a625e..c243649928887552a6520076f65745165727e3dd 100644 (file)
 -A matches
 -A matches -m length --length 5:65535
 -A matches
+-A matches -m physdev ! --physdev-is-in ! --physdev-is-out ! --physdev-is-bridged
+-A matches
 -A matches -p tcp -m tcpmss --mss 1
 -A matches
 -A matches -p tcp -m tcpmss --mss :2