delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2009/11/08/10:18:28

X-Recipient: archive-cygwin AT delorie DOT com
X-SWARE-Spam-Status: No, hits=-2.2 required=5.0 tests=AWL,BAYES_00
X-Spam-Check-By: sourceware.org
Message-ID: <4AF6E12C.3030307@cs.umass.edu>
Date: Sun, 08 Nov 2009 10:18:04 -0500
From: Eliot Moss <moss AT cs DOT umass DOT edu>
User-Agent: Thunderbird 2.0.0.23 (Windows/20090812)
MIME-Version: 1.0
To: cygwin AT cygwin DOT com
Subject: Re: Problem with rsync 3.0.6-1 under 1.7.0-62 and 63
References: <4AF5A3B3 DOT 7010403 AT monai DOT ca> <4AF5AD99 DOT 2040305 AT cs DOT umass DOT edu> <4AF5C2E1 DOT 6010701 AT monai DOT ca> <4AF5FB1D DOT 5010609 AT cs DOT umass DOT edu> <4AF64CDD DOT 7000405 AT monai DOT ca> <4AF67C20 DOT 8060707 AT cs DOT umass DOT edu> <4AF6DE22 DOT 6080402 AT cs DOT umass DOT edu>
In-Reply-To: <4AF6DE22.6080402@cs.umass.edu>
X-IsSubscribed: yes
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

Eliot Moss wrote:
> Eliot Moss wrote:
>> Tried two more things ...
>>
>> - rsync in the opposite direction fails in the same way
>>
>> - adding --protocol=29 (to match the remote end) did not
>>   change the behavor
>>
>> Unfortunately no other version of rsync is available with
>> cygwin 1.7.x, so I can't simply install an earlier version.
>> I think I'll need to obtain source and build it myself.
>> Maybe later today ....
> 
> Rebuilding from source had no effect -- I did apply first
> the 3.0.6-1.src patch and then the cygwin patch.
> 
> So I tried strace to get more info. The first failure is
> at a dup2 call immediately after a fork() call. The dup2
> args are (3, 0) and Win32 returns error 6, which cygwin
> translates to 9 (EBADF). Near as I can tell, fd 3 is a
> socket.
> 
> The code is in piped_child in pipe.c; here is the comment
> at the top of that routine:
> 
> /**
>  * Create a child connected to us via its stdin/stdout.
>  *
>  * This is derived from CVS code
>  *
>  * Note that in the child STDIN is set to blocking and STDOUT
>  * is set to non-blocking. This is necessary as rsh relies on stdin 
> being blocking
>  *  and ssh relies on stdout being non-blocking
>  *
>  * If blocking_io is set then use blocking io on both fds. That can be
>  * used to cope with badly broken rsh implementations like the one on
>  * Solaris.
>  **/
> 
> Not sure if I am reporting the most helpful stuff, but there
> it is. Any ideas on how I can help resolve this? There does
> not seem to be anything like this reported in the rsync list,
> so I think it's particular to cygwin, and probably to 1.7.x.

Btw, this seems related to the rsync problem on close, for which
there was discussion back in August (msg 153806 is at the end of
that thread).

Cheers -- Eliot

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019