tag 310600 + patch thanks On Tue, May 24, 2005 at 04:38:13PM +0200, Igor Genibel wrote: > Package: ldirectord > Severity: important > > Hi Simon, > > we are faced to a serious problem that crashes ldirectord > Here is the log extract: > [Tue May 24 06:06:57 2005|ldirectord] Linux Director Daemon terminated on > signal: Timeout at /usr/share/perl/5.8/Net/FTP.pm line 490 > [Tue May 24 06:09:53 2005|ldirectord] ldirectord is stopped for > /etc/ha.d/ldirectord.cf > [Tue May 24 06:09:53 2005|ldirectord] Exiting with exit_status 1: > Initialisation Error
Hi, I think the attached patch will resolve this problem. -- Horms
--- ldirectord 2005-05-12 23:22:58.000000000 +0900 +++ /tmp/ldirectord 2005-06-17 17:58:16.000000000 +0900 @@ -452,18 +446,24 @@ sub ld_init { # install signal handlers (this covers TERM) - my $i; - for $i (keys %SIG) { - $SIG{"$i"} = \&ld_handler_term; - } + #require Net::LDAP; + $SIG{'INT'} = \&ld_handler_term; + $SIG{'QUIT'} = \&ld_handler_term; + $SIG{'ILL'} = \&ld_handler_term; + $SIG{'ABRT'} = \&ld_handler_term; + $SIG{'FPE'} = \&ld_handler_term; + $SIG{'SEGV'} = \&ld_handler_term; + $SIG{'TERM'} = \&ld_handler_term; + + $SIG{'BUS'} = \&ld_handler_term; + $SIG{'SYS'} = \&ld_handler_term; + $SIG{'XCPU'} = \&ld_handler_term; + $SIG{'XFSZ'} = \&ld_handler_term; + + $SIG{'IOT'} = \&ld_handler_term; + $SIG{'ENT'} = \&ld_handler_term; - # except CHLD, USR1, USR2 and __WARN__ - $SIG{'CHLD'} = "DEFAULT"; - $SIG{'USR1'} = "DEFAULT"; - $SIG{'USR2'} = "DEFAULT"; - $SIG{'__WARN__'} = "DEFAULT"; - # handle PIPE separately as it probably should be ignored # This used to call a signal handler, that logged a message # However, this typically goes to syslog and if syslog # is playing up a loop will occur.