From 78f9b76dae8b0d8fbde51c1d4fe0cd1ac13a3d01 Mon Sep 17 00:00:00 2001
From: Tom Eastep <teastep@shorewall.net>
Date: Fri, 1 Jun 2012 11:47:58 -0700
Subject: [PATCH] Move mutex handling to the main program.

Signed-off-by: Tom Eastep <teastep@shorewall.net>
---
 Shorewall/Perl/Shorewall/Providers.pm | 3 ---
 Shorewall/Perl/prog.footer            | 4 +++-
 2 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/Shorewall/Perl/Shorewall/Providers.pm b/Shorewall/Perl/Shorewall/Providers.pm
index 15b3a47de..f88d121b3 100644
--- a/Shorewall/Perl/Shorewall/Providers.pm
+++ b/Shorewall/Perl/Shorewall/Providers.pm
@@ -1236,8 +1236,6 @@ sub process_providers( $ ) {
 enable_provider() {
     g_interface=$1;
 
-    mutex_on
-
     case $g_interface in
 EOF
 
@@ -1273,7 +1271,6 @@ EOF
             ;;
     esac
 
-    mutex_off
 }
 
 #
diff --git a/Shorewall/Perl/prog.footer b/Shorewall/Perl/prog.footer
index 0f1fbb004..4dde335b9 100644
--- a/Shorewall/Perl/prog.footer
+++ b/Shorewall/Perl/prog.footer
@@ -348,7 +348,9 @@ case "$COMMAND" in
 	[ $# -eq 1 ] && exit 0
 	shift
 	[ $# -ne 1 ] && usage 2
-	updown $1
+	mutex_on
+	( updown $1 )
+	mutex_off
 	status=0
 	;;
     enable)