#include "rsync.h"
extern int verbose;
-extern int itemize_changes;
extern int log_before_transfer;
+extern int itemize_changes;
extern int delete_after;
extern int csum_length;
extern struct stats stats;
file = flist->files[i];
- if (itemize_changes) {
- iflags = read_byte(f_in);
+ if (protocol_version >= 29) {
+ iflags = read_shortint(f_in);
if (!(iflags & ITEM_UPDATING) || !S_ISREG(file->mode)) {
- if (!dry_run || !am_server)
+ if (am_server)
+ ; /* do nothing */
+ else if (itemize_changes || verbose > 1
+ || iflags & ITEM_UPDATING
+ || (S_ISDIR(file->mode)
+ && iflags & ITEM_REPORT_TIME))
log_recv(file, &stats, iflags);
continue;
}
rprintf(FINFO, "recv_files(%s)\n", safe_fname(fname));
if (dry_run) { /* log the transfer */
- if (!am_server && verbose && !log_format)
- rprintf(FINFO, "%s\n", safe_fname(fname));
- else if (!am_server)
+ if (!am_server && log_format)
log_recv(file, &stats, iflags);
continue;
}
/* log the transfer */
if (log_before_transfer)
log_recv(file, &initial_stats, iflags);
- else if (!am_server && verbose && (!log_format || do_progress))
+ else if (!am_server && verbose && do_progress)
rprintf(FINFO, "%s\n", safe_fname(fname));
/* recv file data */