diff options
| author | Gaurav Sinha <gaurav.sinha@vyatta.com> | 2012-11-17 00:57:57 -0800 |
|---|---|---|
| committer | Gaurav Sinha <gaurav.sinha@vyatta.com> | 2012-11-17 00:57:57 -0800 |
| commit | 69de682b364d7bce7aefecb00a4e06eceaeb834d (patch) | |
| tree | dde806a59dcac15d5ff08f8e90f2ae969b537255 /lib | |
| parent | 3d248225eecc99e3e39c497f3a4bd76d5d3aac96 (diff) | |
| download | vyatta-cfg-firewall-69de682b364d7bce7aefecb00a4e06eceaeb834d.tar.gz vyatta-cfg-firewall-69de682b364d7bce7aefecb00a4e06eceaeb834d.zip | |
Add signal handler to handle CTRL+C to avoid commit blockade on lock file
Diffstat (limited to 'lib')
| -rwxr-xr-x | lib/Vyatta/IpTables/IpSet.pm | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/lib/Vyatta/IpTables/IpSet.pm b/lib/Vyatta/IpTables/IpSet.pm index 94fb78d..1005c32 100755 --- a/lib/Vyatta/IpTables/IpSet.pm +++ b/lib/Vyatta/IpTables/IpSet.pm @@ -55,6 +55,15 @@ my $logger = 'logger -t IpSet.pm -p local0.warn --'; my $addr_range_mask = 24; my $lockfile = "/opt/vyatta/config/.lock"; +# remove lock file to avoid commit blockade on interrupt +# like CTRL+C. +sub INT_handler { + my $rc = system("sudo rm -f $lockfile >>/dev/null"); + exit(0); +} + +$SIG{'INT'} = 'INT_handler'; + sub new { my ($that, $name, $type) = @_; |
