summaryrefslogtreecommitdiffstats
path: root/xtables.c
diff options
context:
space:
mode:
authorJan Engelhardt <jengelh@medozas.de>2009-11-03 19:55:11 +0100
committerJan Engelhardt <jengelh@medozas.de>2009-11-03 21:53:55 +0100
commitbf97128c7262f17a02fec41cdae75b472ba77f88 (patch)
treeadcda9a81323584f04529024c12590f2d41de5e3 /xtables.c
parent2be22fb36dd1268baecb42ddf35b7a40a6de21d7 (diff)
libxtables: hand argv to xtables_check_inverse
In going to fix NF bug #611, "argv" is needed in xtables_check_inverse to set "optarg" to the right spot in case of an intrapositional negation. References: http://bugzilla.netfilter.org/show_bug.cgi?id=611 Signed-off-by: Jan Engelhardt <jengelh@medozas.de>
Diffstat (limited to 'xtables.c')
-rw-r--r--xtables.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/xtables.c b/xtables.c
index 35a87e88..63c5db77 100644
--- a/xtables.c
+++ b/xtables.c
@@ -1643,7 +1643,7 @@ void xtables_save_string(const char *value)
* Do not use in new code.
*/
int xtables_check_inverse(const char option[], int *invert,
- int *my_optind, int argc)
+ int *my_optind, int argc, char **argv)
{
if (option == NULL || strcmp(option, "!") != 0)
return false;
@@ -1657,6 +1657,7 @@ int xtables_check_inverse(const char option[], int *invert,
"Multiple `!' flags not allowed");
*invert = true;
if (my_optind != NULL) {
+ optarg = argv[*my_optind];
++*my_optind;
if (argc && *my_optind > argc)
xt_params->exit_err(PARAMETER_PROBLEM,