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: Cygwin1.dll 1.7.0-5x: RSYNC failures in close() system call on pipe file descriptors

After updating 2 other systems to cygwin 1.7, I find that they also work fine in the same test.
However, that doesn't help much debugging this.

I found that the problem on the failing system is related to using Unix domain sockets for the IPC pipes.
If I replace the socketpair() call in fd_pair() in file util.c with pipe(), everything works fine.

int fd_pair(int fd[2])
       int ret;

//      ret = socketpair(AF_UNIX, SOCK_STREAM, 0, fd);
       ret = pipe(fd);

       if (ret == 0) {

       return ret;

The fact that cygwin 1.5 works fine on this system indicates that something is going wrong in 1.7 cygwin1.dll triggered by some conditions on this particular system.

Corinna Vinschen wrote:
On Aug 13 13:17, cygwin wrote:
The RSYNC application fails in close() on the pipe streams to and from child processes created when rsync starts.
When running rsync.exe and cygwin1.dll from cygwin 1.5 within the 1.7 installation on the same system (WinXP pro),
the identical invocation completes without errors.

The problems appears to be a bug in the cygwin.dll

For example,

$ rsync -a /etc /test

produces the following messages:

rsync: Failed to dup/close: Socket operation on non-socket (108)
rsync error: error in IPC code (code 14) at pipe.c(147) [receiver=3.0.5]
rsync: read error: Connection reset by peer (104)
rsync error: error in IPC code (code 14) at io.c(759) [sender=3.0.5]

I tested the exact above command with cygwin 1.7-0-58 and rsync-3.0.5-1 on Windows 7, WIndows Server 2008 SP2, as well as on XP SP3.

Works fine for me on all three systems.


Problem reports:
Unsubscribe info:

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