+ fname = local_name ? local_name : f_name_to(file, fbuf);
+
+ if (verbose > 2)
+ rprintf(FINFO, "recv_files(%s)\n", safe_fname(fname));
+
+ if (protocol_version >= 29) {
+ iflags = read_shortint(f_in);
+ if (!(iflags & ITEM_UPDATING) || !S_ISREG(file->mode)) {
+ int see_item = itemizing && (iflags || verbose > 1);
+ if (am_server) {
+ if (am_daemon && !dry_run && see_item)
+ log_recv(file, &stats, iflags);
+ } else if (see_item || iflags & ITEM_UPDATING
+ || (S_ISDIR(file->mode)
+ && iflags & ITEM_REPORT_TIME))
+ log_recv(file, &stats, iflags);
+ continue;
+ }
+ } else
+ iflags = ITEM_UPDATING | ITEM_MISSING_DATA;
+
+ if (!S_ISREG(file->mode)) {
+ rprintf(FERROR, "[%s] got index of non-regular file: %d\n",
+ who_am_i(), i);
+ exit_cleanup(RERR_PROTOCOL);
+ }