diff options
author | Wayne Davison <wayned@samba.org> | 2010-06-26 11:20:16 -0700 |
---|---|---|
committer | Wayne Davison <wayned@samba.org> | 2010-06-26 11:42:55 -0700 |
commit | 9dbb94a7e64b0855ce3caae1d44c1f5595adbe82 (patch) | |
tree | 52885f38e05c1457f5b019b378e941a9a88c8d3d /flist.c | |
parent | 1c9eafdda0a8512e20fce4a512e52ceb56a4b1af (diff) | |
download | android_external_rsync-9dbb94a7e64b0855ce3caae1d44c1f5595adbe82.tar.gz android_external_rsync-9dbb94a7e64b0855ce3caae1d44c1f5595adbe82.tar.bz2 android_external_rsync-9dbb94a7e64b0855ce3caae1d44c1f5595adbe82.zip |
Older protocols should send 1-incremented dev numbers.
Diffstat (limited to 'flist.c')
-rw-r--r-- | flist.c | 6 |
1 files changed, 4 insertions, 2 deletions
@@ -642,14 +642,16 @@ static void send_file_entry(int f, const char *fname, struct file_struct *file, #ifdef SUPPORT_HARD_LINKS if (tmp_dev != -1 && protocol_version < 30) { + /* Older protocols expect the dev number to be transmitted + * 1-incremented so that it is never zero. */ if (protocol_version < 26) { /* 32-bit dev_t and ino_t */ - write_int(f, (int32)dev); + write_int(f, (int32)(dev+1)); write_int(f, (int32)tmp_ino); } else { /* 64-bit dev_t and ino_t */ if (!(xflags & XMIT_SAME_DEV_pre30)) - write_longint(f, dev); + write_longint(f, dev+1); write_longint(f, tmp_ino); } } |