From d7aeda5ed45ac7ca959f12180690caa371b5b14b Mon Sep 17 00:00:00 2001 From: Pablo Neira Ayuso Date: Mon, 8 Jul 2013 19:34:12 +0200 Subject: ip{6}tables-restore: fix breakage due to new locking approach Since (93587a0 ip[6]tables: Add locking to prevent concurrent instances), ip{6}tables-restore does not work anymore: iptables-restore < x Another app is currently holding the xtables lock. Perhaps you want to use the -w option? do_command{6}(...) is called from ip{6}tables-restore for every iptables command contained in the rule-set file. Thus, hitting the lock error after the second command. Fix it by bypassing the locking in the ip{6}tables-restore path. Signed-off-by: Pablo Neira Ayuso --- include/ip6tables.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'include/ip6tables.h') diff --git a/include/ip6tables.h b/include/ip6tables.h index 37d2e0a3..5f1c5b65 100644 --- a/include/ip6tables.h +++ b/include/ip6tables.h @@ -8,7 +8,7 @@ /* Your shared library should call one of these. */ extern int do_command6(int argc, char *argv[], char **table, - struct xtc_handle **handle); + struct xtc_handle **handle, bool restore); extern int for_each_chain6(int (*fn)(const xt_chainlabel, int, struct xtc_handle *), int verbose, int builtinstoo, struct xtc_handle *handle); extern int flush_entries6(const xt_chainlabel chain, int verbose, struct xtc_handle *handle); -- cgit v1.2.3