in reply to IO::Socket::INET::Daemon and Parallel::ForkManager working togheter

Dear all , thanks for the sugestions ... finally I got I workaround with this.
I will take IO::Socket out and use ncat linux and a pipe command instead.
Currently Im running the script like this:
ncat -l 1000 | ./accounting_processor_ver2.pl

And the accounting processor is:

#!/usr/bin/perl -slw use strict; use Regexp::Common qw/ net number /; use IO::Socket::INET::Daemon; use Parallel::ForkManager; use Net::Ping; use DBI; use YAML::Tiny; my $pm = Parallel::ForkManager->new(10); while(<>){ my $pid = $pm->start() and next; print "starting fork $$\n"; fork_work($_); print "deleting fork $$\n"; $pm->finish; # Terminates the child process } sub fork_work { my $line = shift @_; if($line =~ m/$RE{net}{IPv4}{-keep}/){ $ip = $1; }else{ print "not a good line:",$line; return 0; } my $ping_result = 0; my $p = new Net::Ping('icmp',1); for(my $a=0 ; $a < 1 ; $a++){ # print "attempt $a for $ip\n"; if ($p->ping($ip)){ $ping_result = 1; last; } } if ($ping_result){ #print "$ip is ALIVE\n"; return 0; }
  • Comment on Re: IO::Socket::INET::Daemon and Parallel::ForkManager working togheter
  • Download Code