I just tested your code on Linux 2.0.36 / Perl 5.005_02 and it worked just fine (the server program does not exit).

Here are a few ideas in no particular order:

You may want to try using lsof to see what the process is doing (lsof is an awesome utility that lets you look at what files, network ports, etc...a process has open. Also works the other way around.. what processes have a partifular file, network port, etc... open).

How does it behave if you connect 2 clients to it? Does the server program exit when the first client disconnects or only after both disconnect? If you disconnect one of them can you connect a third one at that point?

Are you running the most current version of IO::Socket

Try setting your SIGCHLD handler to:

$SIG{CHLD}='IGNORE';

In reply to Re: SIGCHLD interrupting accept call? by lhoward
in thread SIGCHLD interrupting accept call? by ZZamboni

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.