summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
071fce0)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
our @EXPORT = qw(initialisation_complete);
use Carp;
our @EXPORT = qw(initialisation_complete);
use Carp;
use Fcntl qw(F_GETFL F_SETFL O_NONBLOCK);
use Fcntl qw(F_GETFL F_SETFL O_NONBLOCK);
+use POSIX;
+use Sys::Syslog;
# Returns in the executor process
sub become_monitor () {
# Returns in the executor process
sub become_monitor () {
- my $child = fork // fail("fork executor: $!");or
+ my $child = fork // fail("fork executor: $!");
if (!$child) {
#---- executor ----
open ::STDIN , "<& $call_fds[0]" or fail("dup for fd0");
if (!$child) {
#---- executor ----
open ::STDIN , "<& $call_fds[0]" or fail("dup for fd0");
foreach (@env_params) {
$_ eq ($_+0) or croak "$env_name contains $_, not a number";
}
foreach (@env_params) {
$_ eq ($_+0) or croak "$env_name contains $_, not a number";
}
- open LISTEN, "<>&=$env_params[0]" or croak "listen fd: $!";
- open CALL, "<>&=$env_params[1]" or croak "listen fd: $!";
+ open LISTEN, "+>&=$env_params[0]" or croak "listen fd: $!";
+ open CALL, "+>&=$env_params[1]" or croak "listen fd: $!";
@call_fds = ($env_params[2], $env_params[3], 2);
if (!$opts{no_openlog}) {
@call_fds = ($env_params[2], $env_params[3], 2);
if (!$opts{no_openlog}) {
$opts{log_facility} // 'log_user');
}
$opts{log_facility} // 'log_user');
}
- open NULL, "<>/dev/null" or croak "open /dev/null: $!";
+ open NULL, "+>/dev/null" or croak "open /dev/null: $!";
#---- fork for server ----
#---- fork for server ----