lilalo
changeset 53:eab4f7df854c
Исправлены глюки с обнаружением себя(l3-agent) в FreeBSD. Год задаётся как параметр year
author | devi |
---|---|
date | Wed Dec 21 19:31:00 2005 +0200 (2005-12-21) |
parents | f9447da96f15 |
children | f1ba68510fed |
files | l3-agent |
line diff
1.1 --- a/l3-agent Wed Dec 21 14:39:44 2005 +0200 1.2 +++ b/l3-agent Wed Dec 21 19:31:00 2005 +0200 1.3 @@ -799,6 +799,7 @@ 1.4 1.5 my $year = 2005; 1.6 #$year = 2004 if ( $cl->{day} > 330 ); 1.7 + $year = $Config{year} if $Config{year}; 1.8 # timelocal( $sec, $min, $hour, $mday,$mon,$year); 1.9 $cl->{time} = timelocal_nocheck($cl->{sec},$cl->{min},$cl->{hour},$cl->{day},0,$year); 1.10 1.11 @@ -961,15 +962,18 @@ 1.12 if (open(PIDFILE, $Config{agent_pidfile})) { 1.13 my $pid = <PIDFILE>; 1.14 close(PIDFILE); 1.15 - if ($^O eq 'linux' && (! -e "/proc/$pid" || !`grep $Config{"l3-agent"} /proc/$pid/cmdline && grep "uid:.*\b$<\b" /proc/$pid/status`)) { 1.16 + if ($^O eq 'linux' && $pid &&(! -e "/proc/$pid" || !`grep $Config{"l3-agent"} /proc/$pid/cmdline && grep "uid:.*\b$<\b" /proc/$pid/status`)) { 1.17 print "Removing stale pidfile\n"; 1.18 unlink $Config{agent_pidfile} 1.19 or die "Can't remove stale pidfile ". $Config{agent_pidfile}. " : $!"; 1.20 } 1.21 - elsif ($^O eq 'freebsd' && !`ps axo uid,pid,command | grep '$<.*$pid.*$Config{"l3-agent"}' 2> /dev/null`) { 1.22 + elsif ($^O eq 'freebsd' && $pid && `ps axo uid,pid,command | grep '$<.*$pid.*$Config{"l3-agent"}' 2> /dev/null`) { 1.23 + print "Removing stale pidfile\n"; 1.24 + unlink $Config{agent_pidfile} 1.25 + or die "Can't remove stale pidfile ". $Config{agent_pidfile}. " : $!"; 1.26 } 1.27 elsif ($^O eq 'linux' || $^O eq 'freebsd' ) { 1.28 - print "l3-agent is already running\n"; 1.29 + print "l3-agent is already running: pid=$pid; pidfile=$Config{agent_pidfile}\n"; 1.30 exit(0); 1.31 } 1.32 else {