This is the mail archive of the
cygwin@sourceware.cygnus.com
mailing list for the Cygwin project.
Re: B20.1 & Win95 fork/socket bug, or Why Rsync Doesn't Work
- To: "J.A. Bezemer" <costar at panic dot et dot tudelft dot nl>
- Subject: Re: B20.1 & Win95 fork/socket bug, or Why Rsync Doesn't Work
- From: Chris Faylor <cgf at cygnus dot com>
- Date: Fri, 24 Sep 1999 07:42:57 -0400
- Cc: cygwin at sourceware dot cygnus dot com
- References: <Pine.LNX.3.96.990924130420.5468H-100000@panic.et.tudelft.nl>
- Reply-To: cygwin at sourceware dot cygnus dot com
On Fri, Sep 24, 1999 at 01:26:04PM +0200, J.A. Bezemer wrote:
>I tried to compile/run rsync (sources from
>http://www.student.uni-koeln.de/cygwin/Distribution/Source/rsync/) under
>Win95/Cygwin B20.1. Compiles allright, but doesn't run. Under 98 it runs
>perfectly well, so I suspect this problem is somewhere in Win95. It would be
>very nice if cygwin could do a workaround.
Patches gratefully accepted.
-Chris Faylor
-Win32 Manager
-Cygnus Solutions
>The problem is this: in do_recv() in rsync's main.c there's this structure:
>
> f_in is filedescriptor of a socket connected to the rsync server
>
> fork
> child does read(f_in)
>
> parent does write(f_in)
>
>Parent's write() is okay, but childs read() doesn't receive anything, and the
>child process just waits forever.
>
>I don't know if this affects only sockets, or all filedescriptors.
>
>In the mean time, for my specific situation I could remove the fork
>completely, and simply run the child after the parent. This works
>perfectly.
>
>I don't have time to go into more detail, but just ask if you need to know
>more. In case you're interested, My hacked version of rsync is at
>http://panic.et.tudelft.nl/~costar/pseudo-image-kit ("Windows version").
>
>And BTW, set CYGWIN=binmode, otherwise rsync goes all wrong...
>
>Regards,
> Anne Bezemer
--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com