Rsync 2.6.4 Multiplexing Overflows when File Name Too Long
ben-list at constant-technologies.com
Mon Apr 4 02:09:32 GMT 2005
Wayne Davison wrote:
>On Fri, Apr 01, 2005 at 03:54:38PM -0500, Benjamin Watkins wrote:
>>multiplexing overflow 1:296 [sender]
>This indicates that there is an error message arriving (1) that has a
>length of 296 bytes, but this is too long for the "line" buffer in
>readfd_unbuffered(). I changed the length of this buffer from 1024
>bytes to MAXPATHLEN+1 because it was too short for receiving info/error
>messages for really long file names (since a normal system has a
>MAXPATHLEN that is closer to 4 KB). (Hmm, is MAXPATHLEN really supposed
>to be that short under Cygwin? Surprising...)
The maximum length under truly does appear to be this short, at least
when I have not manually set it to be anything.
>Anyway, the simple solution is to just make the line buffer larger.
>I'll attach a patch.
>>In addition, the client actually exits with a status code of 3072, not
>>12 as indicated by the standard error message.
>That sounds like a problem with your shell or the Cygwin environment
>because rsync exits with the right error code under Linux.
Odd, since I've been using the pre-compiled binaries from cwRsync for
some time now. This is the first version that returns this error code.
I do not have Cygwin installed, and I simply use cmd.exe as my shell.
The only Cygwin environment variable I set is CYGWIN=nontsec, which does
not appear to affect the maximum path length. Perhaps I could try using
an older cygwin1.dll, though this may cause other problems. I think it
is time I finally install cygwin myself and compile these things on my own.
Ok, done. I am now using my own compiled and patched version of rsync.
It is surprisingly much larger than the one from the cwRsync package.
I will let you know how the patch works for me. I am currently running
it from Workstation 1 to Server 1.
Thanks for your quick response.
-Ben : )
More information about the rsync