Ignorovane SIGCHLD a problem s returncodem

Vancl Miroslav (QRIS) Miroslav.Vancl na qris.cz
Úterý Srpen 14 09:14:25 CEST 2007


>Ladislav Vaiz napsal:
>
>No a nemůžete nastavit pro SIGCHLD SIG_DFL? Pokud by to radiusu vadilo, tak
ho můžete zase vrátit zpátky.
>Láďa

Prominte, zapomnel jsem rict, ze nastaveni osetreni signalu CHLD na DEFAULT
jsem samozrejme a neuspesne zkousel:

...
  my $cmd="/bin/false";
  $SIG{'CHLD'}='DEFAULT';
  $SIG{'CLD'}='DEFAULT';
  my @output=`$cmd; echo RC=$?`;
  my $rc=$?;
  &radiusd::radlog(1, "rc=$rc");
  &radiusd::radlog(1, "ERR=$!");
  my $line=$output[$#output];
  chomp $line;
  if ($line=~/^RC=(\d+)$/) { $rc=$1 };
  &radiusd::radlog(1, "RC=$rc");
  while ($line=shift @output) {
    &radiusd::radlog(1, "output:$line");
  }
...

V logu se pak objevi:

...
  Processing the authenticate section of radiusd.conf
modcall: entering group Auth-Type for request 0
perl_pool: item 0x824d3c8 asigned new request. Handled so far: 1
found interpetator at address 0x824d3c8
rlm_perl: rc=-1
rlm_perl: ERR=No child processes
rlm_perl: RC=0
rlm_perl: output:RC=0
...


Diky

M. Vancl



Další informace o konferenci Linux