summaryrefslogtreecommitdiffstats
path: root/ip6tables.c
diff options
context:
space:
mode:
authorJan Engelhardt <jengelh@medozas.de>2010-11-15 14:39:35 +0100
committerJan Engelhardt <jengelh@medozas.de>2010-11-15 14:39:35 +0100
commit710a132ce9fbecedbf9447f2b2a134f2359a583c (patch)
tree4e4590c9449f9f3c272f1a8d18216b64f7d99b66 /ip6tables.c
parente84f131b5f992577119bd3679241f69ec394e0a7 (diff)
Revert "Revert "libxtables: change option precedence order to be intuitive""
This reverts commit e84f131b5f992577119bd3679241f69ec394e0a7. Solution follows.
Diffstat (limited to 'ip6tables.c')
-rw-r--r--ip6tables.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/ip6tables.c b/ip6tables.c
index 15067da2..150893d4 100644
--- a/ip6tables.c
+++ b/ip6tables.c
@@ -147,7 +147,6 @@ void ip6tables_exit_error(enum xtables_exittype status, const char *msg, ...) __
struct xtables_globals ip6tables_globals = {
.option_offset = 0,
.program_version = IPTABLES_VERSION,
- .opts = original_opts,
.orig_opts = original_opts,
.exit_err = ip6tables_exit_error,
};
@@ -1561,7 +1560,7 @@ int do_command6(int argc, char *argv[], char **table, struct ip6tc_handle **hand
target->t->u.user.revision = target->revision;
if (target->init != NULL)
target->init(target->t);
- opts = xtables_merge_options(opts,
+ opts = xtables_merge_options(ip6tables_globals.orig_opts, opts,
target->extra_opts,
&target->option_offset);
if (opts == NULL)
@@ -1615,7 +1614,7 @@ int do_command6(int argc, char *argv[], char **table, struct ip6tc_handle **hand
m->init(m->m);
if (m != m->next)
/* Merge options for non-cloned matches */
- opts = xtables_merge_options(opts, m->extra_opts, &m->option_offset);
+ opts = xtables_merge_options(ip6tables_globals.orig_opts, opts, m->extra_opts, &m->option_offset);
}
break;
@@ -1762,7 +1761,7 @@ int do_command6(int argc, char *argv[], char **table, struct ip6tc_handle **hand
if (m->init != NULL)
m->init(m->m);
- opts = xtables_merge_options(opts,
+ opts = xtables_merge_options(ip6tables_globals.orig_opts, opts,
m->extra_opts, &m->option_offset);
optind--;