[svn:modperl-modules] rev 191 - Apache-Watchdog-RunAway/trunk
[email protected] 21 Mar 2005 17:36:45 -0000
| Newsgroups | perl.modperl.modules.svn |
|---|---|
| Message-ID | <[email protected]> |
Author: stas
Date: Mon Mar 21 09:36:45 2005
New Revision: 191
Modified:
Apache-Watchdog-RunAway/trunk/RunAway.pm
Log:
untaint proc id used in stop_monitor (now runs under -T)
Modified: Apache-Watchdog-RunAway/trunk/RunAway.pm
==============================================================================
--- Apache-Watchdog-RunAway/trunk/RunAway.pm (original)
+++ Apache-Watchdog-RunAway/trunk/RunAway.pm Mon Mar 21 09:36:45 2005
@@ -73,7 +73,8 @@
open $fh, $Apache::Watchdog::RunAway::LOCK_FILE
or die "Cannot open $Apache::Watchdog::RunAway::LOCK_FILE: $!";
chomp (my $pid = <$fh>);
- $pid = 0 unless $pid =~ /^\d+$/;
+ # untaint
+ $pid = $pid =~ /^(\d+)$/ ? $1 : 0;
close $fh;
return $pid;
@@ -122,8 +123,13 @@
defined (my $watchdog_pid = fork) or die "Cannot fork: $!\n";
- start_monitor() unless $watchdog_pid;
-
+ if ($watchdog_pid) {
+ return $watchdog_pid;
+ }
+ else {
+ start_monitor();
+ CORE::exit();
+ }
}