extern int preserve_devices;
extern int preserve_specials;
extern int missing_args;
+extern int sock_f_in;
extern int uid_ndx;
extern int gid_ndx;
extern int eol_nulls;
full_fname(argv[0]));
exit_cleanup(RERR_FILESELECT);
}
+ if (protocol_version == 30) {
+ /* Older protocols send the files-from data w/o packaging it in
+ * multiplexed I/O packets, but protocol 30 messed up and did
+ * this after starting multiplexing. We'll temporarily switch
+ * to buffered I/O to match this behavior. */
+ io_end_multiplex_in(MPLX_TO_BUFFERED);
+ }
use_ff_fd = 1;
}
send_file_name(f, flist, fbuf, &st, flags, NO_FILTERS);
}
+ if (use_ff_fd && protocol_version == 30)
+ io_start_multiplex_in(sock_f_in);
+
gettimeofday(&end_tv, NULL);
stats.flist_buildtime = (int64)(end_tv.tv_sec - start_tv.tv_sec) * 1000
+ (end_tv.tv_usec - start_tv.tv_usec) / 1000;
send_msg_int(MSG_IO_ERROR, io_error);
if (disable_buffering)
- io_end_buffering_out(True);
+ io_end_buffering_out(IOBUF_FREE_BUFS);
stats.flist_size = stats.total_written - start_write;
stats.num_files = flist->used;