summaryrefslogtreecommitdiffstats
path: root/extensions/libip6t_DNAT.c
diff options
context:
space:
mode:
authorPhil Sutter <phil@nwl.cc>2022-03-17 11:17:13 +0100
committerPhil Sutter <phil@nwl.cc>2022-04-08 18:00:42 +0200
commit070a8626f2c01971d88bcfbcce10c914d552c9a4 (patch)
treeecc5b65bd0a39aa7cc6b8115860f6ce8c205e8da /extensions/libip6t_DNAT.c
parent08c14fa6370bdf986476477075d43b4bcc0d26aa (diff)
Revert "libipt_[SD]NAT: avoid false error about multiple destinations specified"
This reverts commit f25b2355e889290879c8cecad3dd24ec0c384fb8. The workaround is not needed anymore since commit 30b178b9bf11e ("extensions: *NAT: Kill multiple IPv4 range support"). While being at it, drop the same hidden flag logic from libip6t_[SD]NAT extensions as well and just don't set XTOPT_MULTI so guided option parser will reject multiple parameters automatically. Signed-off-by: Phil Sutter <phil@nwl.cc>
Diffstat (limited to 'extensions/libip6t_DNAT.c')
-rw-r--r--extensions/libip6t_DNAT.c9
1 files changed, 1 insertions, 8 deletions
diff --git a/extensions/libip6t_DNAT.c b/extensions/libip6t_DNAT.c
index f1ad8143..d51994c0 100644
--- a/extensions/libip6t_DNAT.c
+++ b/extensions/libip6t_DNAT.c
@@ -19,10 +19,8 @@ enum {
O_TO_DEST = 0,
O_RANDOM,
O_PERSISTENT,
- O_X_TO_DEST,
F_TO_DEST = 1 << O_TO_DEST,
F_RANDOM = 1 << O_RANDOM,
- F_X_TO_DEST = 1 << O_X_TO_DEST,
};
static void DNAT_help(void)
@@ -45,7 +43,7 @@ static void DNAT_help_v2(void)
static const struct xt_option_entry DNAT_opts[] = {
{.name = "to-destination", .id = O_TO_DEST, .type = XTTYPE_STRING,
- .flags = XTOPT_MAND | XTOPT_MULTI},
+ .flags = XTOPT_MAND},
{.name = "random", .id = O_RANDOM, .type = XTTYPE_NONE},
{.name = "persistent", .id = O_PERSISTENT, .type = XTTYPE_NONE},
XTOPT_TABLEEND,
@@ -183,12 +181,7 @@ static void _DNAT_parse(struct xt_option_call *cb,
xtables_option_parse(cb);
switch (cb->entry->id) {
case O_TO_DEST:
- if (cb->xflags & F_X_TO_DEST) {
- xtables_error(PARAMETER_PROBLEM,
- "DNAT: Multiple --to-destination not supported");
- }
parse_to(cb->arg, portok, range, rev);
- cb->xflags |= F_X_TO_DEST;
break;
case O_PERSISTENT:
range->flags |= NF_NAT_RANGE_PERSISTENT;