diff options
author | Jan Engelhardt <jengelh@medozas.de> | 2008-06-13 17:59:29 +0200 |
---|---|---|
committer | Patrick McHardy <kaber@trash.net> | 2008-06-13 17:59:29 +0200 |
commit | 6a0cd58f7e444137eb757695f917e46eb14201c8 (patch) | |
tree | 5d9e94b94f38c0fad6fc6568625abbaf97d9c7e9 | |
parent | 1564189568fb63292c7f586563d4fda430a40de3 (diff) |
iprange: kernel flags were not set
The --src-range and --dst-range parameters did not set the IPRANGE_*
flags in struct xt_iprange_mtinfo.
Reported-by: Maxim Britov <maxim.britov@gmail.com>
Signed-off-by: Jan Engelhardt <jengelh@medozas.de>
Signed-off-by: Patrick McHardy <kaber@trash.net>
-rw-r--r-- | extensions/libxt_iprange.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/extensions/libxt_iprange.c b/extensions/libxt_iprange.c index 70fcc573..8c8521e9 100644 --- a/extensions/libxt_iprange.c +++ b/extensions/libxt_iprange.c @@ -119,6 +119,9 @@ iprange_mt4_parse(int c, char **argv, int invert, unsigned int *flags, if (ia == NULL) param_act(P_BAD_VALUE, "iprange", "--src-ip", end + 1); memcpy(&info->src_max.in, ia, sizeof(*ia)); + info->flags |= IPRANGE_SRC; + if (invert) + info->flags |= IPRANGE_SRC_INV; *flags |= F_SRCIP; return true; @@ -135,6 +138,9 @@ iprange_mt4_parse(int c, char **argv, int invert, unsigned int *flags, if (ia == NULL) param_act(P_BAD_VALUE, "iprange", "--dst-ip", end + 1); memcpy(&info->dst_max.in, ia, sizeof(*ia)); + info->flags |= IPRANGE_DST; + if (invert) + info->flags |= IPRANGE_DST_INV; *flags |= F_DSTIP; return true; } |