FCGI-Daemon

 view release on metacpan or  search on metacpan

lib/FCGI/Daemon.pm  view on Meta::CPAN

                                        die_timeout=>28,
                                        pid_fname=>$o{pidfile}
                                      });
    print "Opening socket $o{sockfile}\n";
    my $rqst=FCGI::Request(\*STDIN,\*STDOUT,\*STDERR,\%req_env,
             FCGI::OpenSocket($o{sockfile},$o{prefork}*$o{queue}),
             FCGI::FAIL_ACCEPT_ON_INTR())
        or die "Error: Unable to create FCGI::Request...";

    if(defined $o{gid_num} and defined $o{uid_num}){                # if run as root
        chown $o{uid_num},$o{gid_num},$o{sockfile}                  # chown SOCKfile
            or dieif($OS_ERROR,'Unable to chown SOCKfile');
    }

    $o{fcgi_pm}->pm_manage();   # from now on we are worker process

    # drop privileges if run as root
    if(defined $o{gid_num} and defined $o{uid_num}){
       my $gid = getgrnam($o{gid});
       $EFFECTIVE_GROUP_ID = "$gid $gid";
       dieif($OS_ERROR,'Unable to effective group_id to '.$o{gid});
       $REAL_GROUP_ID = $gid;



( run in 1.989 second using v1.01-cache-2.11-cpan-71847e10f99 )