<< | Thread Index | >> ]    [ << | Date Index | >> ]

Subject: Re: Race condition on cipe startup
From: Olaf Titz <olaf,AT,bigred,DOT,inka,DOT,de>
Date: Thu, 27 Mar 2003 22:17:09 +0100
In-reply-to: <200303262002.57449.rsmckown@yahoo.com>

> If the child exits very quickly, the parent can processes the SIGCHLD event
> via its handler before it reaches execution of pause() in ciped.c line 949.
> The parent blocks in pause() forever because the child has already sent its
> signal, and the child blocks forever as a defunct process waiting for its
> parent to wait() upon it.

Right, thanks for spotting that.

> The patch below, derived against v1.5.4 sources, resolves the problem by
> waiting to process a child exit rather than on a signal event which may have
> already occurred.

Looks okay, I'm applying that.

Btw. sourceforge CVS is unusable at the moment. Not only for anonymous
downloads, I can't check in either. No wonder with constant >90%
packet loss rates at the last hop. Judging from their announcements it
will take at least another few weeks until this gets resolved.

Olaf





<< | Thread Index | >> ]    [ << | Date Index | >> ]