--- Server.pm~ 2003-03-07 15:51:35.000000000 +0100 +++ Server.pm 2003-04-25 13:59:12.000000000 +0200 @@ -475,8 +475,10 @@ } }; if( $@ ){ - if( $< == 0 || $> == 0 ){ + if( $> == 0 ){ $self->fatal( $@ ); + } elsif( $< == 0){ + $self->log(2,"NOTICE: Effective UID changed, but Real UID is 0: $@"); }else{ $self->log(2,$@); } --- Server/Daemonize.pm~ 2002-09-24 20:55:15.000000000 +0200 +++ Server/Daemonize.pm 2003-04-25 13:58:16.000000000 +0200 @@ -204,8 +204,7 @@ die "Couldn't become uid \"$uid\"\n"; } my $result = POSIX::setuid( $uid ); - if( ! defined($result) - || $result != $uid ){ # assuming this is true for all systems + if( ! defined($result) ){ die "Couldn't POSIX::setuid to \"$uid\" [$!]\n"; } return 1;