Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl Monk, Perl Meditation
 
PerlMonks  

Re: Unix sockets

by MarkM (Curate)
on Sep 22, 2003 at 04:47 UTC ( #293082=note: print w/ replies, xml ) Need Help??


in reply to Unix sockets

My first bet would be that you are not watching for EINTR as a result of $sock->accept. The first time through the loop, the connection is accepted and a new process is spawned to handle the connection. Once this process dies, the caller receives SIGCHLD, which causes accept() to be interrupted, which should result in $! == POSIX::EINTR(). If this is the case, the accept() should be restarted within your code.

On an unrelated note, there are a few error cases that you don't check, such as the initial fork() in start_daemon() returning undef, etc.

Cheers,
mark


Comment on Re: Unix sockets

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://293082]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others avoiding work at the Monastery: (12)
As of 2015-07-02 09:53 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (33 votes), past polls