Daemon-Control
view release on metacpan or search on metacpan
lib/Daemon/Control.pm view on Meta::CPAN
$self->trace( "Set UID => $uid" );
$self->uid( $uid );
}
# Set the uid, triggered from getting the gid if the group has changed.
sub _set_gid_from_name {
my ( $self ) = @_;
# Grab the GID if we have a UID but no GID.
if ( !defined $self->group && defined $self->uid ) {
my ( $gid ) = ( (getpwuid( $self->uid ))[3] );
$self->gid( $gid );
$self->trace( "Implicit GID => $gid" );
return $gid;
}
return unless defined $self->group;
my $gid = getgrnam( $self->group );
die "Error: Couldn't get gid for non-existent group " . $self->group
unless defined $gid;
lib/Daemon/Control.pm view on Meta::CPAN
if ( $new_pid == 0 ) { # Our double fork.
if ( $self->gid ) {
setgid( $self->gid );
$self->trace( "setgid(" . $self->gid . ")" );
}
if ( $self->uid ) {
setuid( $self->uid );
$ENV{USER} = $self->user || getpwuid($self->uid);
$ENV{HOME} = ((getpwuid($self->uid))[7]);
$self->trace( "setuid(" . $self->uid . ")" );
$self->trace( "\$ENV{USER} => " . $ENV{USER} );
$self->trace( "\$ENV{HOME} => " . $ENV{HOME} );
}
if ( $self->umask ) {
umask( $self->umask);
$self->trace( "umask(" . $self->umask . ")" );
}
( run in 0.254 second using v1.01-cache-2.11-cpan-8d75d55dd25 )