This is the mail archive of the cygwin mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Problem with rsync 3.0.6-1 under 1.7.0-62 and 63

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

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.

Cheers -- Eliot Moss

Problem reports:
Unsubscribe info:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]