summaryrefslogtreecommitdiffstats
path: root/extensions/libxt_NFQUEUE.c
diff options
context:
space:
mode:
authorPatrick McHardy <kaber@trash.net>2011-05-25 05:34:04 +0200
committerPatrick McHardy <kaber@trash.net>2011-05-25 05:34:04 +0200
commit790845385fb84ce8e79a96e91fc6c4f7df60713d (patch)
tree3a0269859e66b8703af172f8e0debe846db124a6 /extensions/libxt_NFQUEUE.c
parent17f7937f79af4d260c60cb800e56fc0df0a48b37 (diff)
parentdb50b83bc3cd634beb71f38978ad7d035c88ff11 (diff)
Merge branch 'master' of git://dev.medozas.de/iptables
Diffstat (limited to 'extensions/libxt_NFQUEUE.c')
-rw-r--r--extensions/libxt_NFQUEUE.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/extensions/libxt_NFQUEUE.c b/extensions/libxt_NFQUEUE.c
index a86c88a3..e47b586c 100644
--- a/extensions/libxt_NFQUEUE.c
+++ b/extensions/libxt_NFQUEUE.c
@@ -13,6 +13,8 @@ enum {
O_QUEUE_NUM = 0,
O_QUEUE_BALANCE,
O_QUEUE_BYPASS,
+ F_QUEUE_NUM = 1 << O_QUEUE_NUM,
+ F_QUEUE_BALANCE = 1 << O_QUEUE_BALANCE,
};
static void NFQUEUE_help(void)
@@ -41,9 +43,10 @@ static void NFQUEUE_help_v2(void)
#define s struct xt_NFQ_info
static const struct xt_option_entry NFQUEUE_opts[] = {
{.name = "queue-num", .id = O_QUEUE_NUM, .type = XTTYPE_UINT16,
- .flags = XTOPT_PUT, XTOPT_POINTER(s, queuenum)},
+ .flags = XTOPT_PUT, XTOPT_POINTER(s, queuenum),
+ .excl = F_QUEUE_BALANCE},
{.name = "queue-balance", .id = O_QUEUE_BALANCE,
- .type = XTTYPE_UINT16RC},
+ .type = XTTYPE_UINT16RC, .excl = F_QUEUE_NUM},
{.name = "queue-bypass", .id = O_QUEUE_BYPASS, .type = XTTYPE_NONE},
XTOPT_TABLEEND,
};
@@ -81,14 +84,11 @@ static void NFQUEUE_parse_v2(struct xt_option_call *cb)
{
struct xt_NFQ_info_v2 *info = cb->data;
- xtables_option_parse(cb);
+ NFQUEUE_parse_v1(cb);
switch (cb->entry->id) {
case O_QUEUE_BYPASS:
info->bypass = 1;
break;
- default:
- NFQUEUE_parse_v1(cb);
- break;
}
}