On Thu 16 Jul 2009, martin f krafft wrote:
> 
> rsync stores files with names like .ORIGNAME.xxxxxx while
> transferring. If ORIGNAME is > 247 characters in length, mkstemp()
> will fail with ENAMETOOLONG, and #151568 comes in, meaning that the
> file won't be synchronised. Maybe an alternative would be to either
> shorten ORIGNAME to <247, or use a temp subdir, in which files are
> placed with their original names, not the tmpnames.

>From receiver.c:

 * get_tmpname() - create a tmp filename for a given filename
 *
 *   If a tmpdir is defined, use that as the directory to
 *   put it in.  Otherwise, the tmp filename is in the same
 *   directory as the given name.  Note that there may be no
 *   directory at all in the given name!
 *
 *   The tmp filename is basically the given filename with a
 *   dot prepended, and .XXXXXX appended (for mkstemp() to
 *   put its unique gunk in).  Take care to not exceed
 *   either the MAXPATHLEN or NAME_MAX, esp. the last, as
 *   the basename basically becomes 8 chars longer. In that
 *   case, the original name is shortened sufficiently to
 *   make it all fit.

I don't see the problem.
This was an issue that was fixed a long time (years) ago.



Paul



-- 
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]

Reply via email to