summaryrefslogtreecommitdiffstats
path: root/userspace/ebtables2
diff options
context:
space:
mode:
authorBart De Schuymer <bdschuym@pandora.be>2007-09-21 17:16:46 +0000
committerBart De Schuymer <bdschuym@pandora.be>2007-09-21 17:16:46 +0000
commit8beec6edd64b5508ff75376cb828ca24b0889458 (patch)
treee7f00e578c1b1846d93d97ef53a9c77d49b9c425 /userspace/ebtables2
parent7d8ef28fe1a5944b2e7ed3ce4f3f23e5584324b2 (diff)
fix policy setting of standard chains
Diffstat (limited to 'userspace/ebtables2')
-rw-r--r--userspace/ebtables2/ebtables-restore.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/userspace/ebtables2/ebtables-restore.c b/userspace/ebtables2/ebtables-restore.c
index 9433e5e..ea02960 100644
--- a/userspace/ebtables2/ebtables-restore.c
+++ b/userspace/ebtables2/ebtables-restore.c
@@ -75,7 +75,7 @@ int main(int argc_, char *argv_[])
} else if (table_nr == -1)
ebtrest_print_error("no table specified");
if (*cmdline == ':') {
- int policy;
+ int policy, chain_nr;
char *ch;
if (!(ch = strchr(cmdline, ' ')))
@@ -93,8 +93,10 @@ int main(int argc_, char *argv_[])
/* No need to check chain name for consistency, since
* we're supposed to be reading an automatically generated
* file. */
- if (ebt_get_chainnr(&replace[table_nr], cmdline+1) == -1)
+ if ((chain_nr = ebt_get_chainnr(&replace[table_nr], cmdline+1)) == -1)
ebt_new_chain(&replace[table_nr], cmdline+1, policy);
+ else
+ replace[table_nr].chains[chain_nr]->policy = policy;
continue;
}
argv[1] = cmdline;