diff options
author | rusty <rusty> | 2000-07-07 02:17:46 +0000 |
---|---|---|
committer | rusty <rusty> | 2000-07-07 02:17:46 +0000 |
commit | 8f1f2b652ae1b117b0afae628b1ba14e0b6a047f (patch) | |
tree | 5260d43bd7f75fb621c30023cdf684d8b0ca91da | |
parent | 0f1f3c916e99c9a0b23ba47b10c6b2096d1d0794 (diff) |
Don't reverse matches on command line (matters for -m limit).
-rw-r--r-- | iptables.c | 10 |
1 files changed, 7 insertions, 3 deletions
@@ -916,6 +916,8 @@ merge_options(struct option *oldopts, struct option *newopts, void register_match(struct iptables_match *me) { + struct iptables_match **i; + if (strcmp(me->version, program_version) != 0) { fprintf(stderr, "%s: match `%s' v%s (I'm v%s).\n", program_name, me->name, me->version, program_version); @@ -934,9 +936,11 @@ register_match(struct iptables_match *me) exit(1); } - /* Prepend to list. */ - me->next = iptables_matches; - iptables_matches = me; + /* Append to list. */ + for (i = &iptables_matches; *i; i = &(*i)->next); + me->next = NULL; + *i = me; + me->m = NULL; me->mflags = 0; |