+ /* XXX Temporary compatibility hack */
+ if (iflags & ITEM_REPORT_XATTRS) { /* old ITEM_UPDATE */
+ iflags &= ~ITEM_REPORT_XATTRS;
+ if (!(iflags & (ITEM_TRANSFER|ITEM_LOCAL_CHANGE))) {
+ if (S_ISREG(the_file_list->files[ndx]->mode))
+ iflags |= ITEM_TRANSFER;
+ else
+ iflags |= ITEM_LOCAL_CHANGE;
+ }
+ }
+
+ if (iflags & ITEM_TRANSFER) {
+ if (!S_ISREG(the_file_list->files[ndx]->mode)) {
+ rprintf(FERROR,
+ "received index of non-regular file: %d [%s]\n",
+ ndx, who_am_i());
+ exit_cleanup(RERR_PROTOCOL);
+ }
+ } else if (f_out >= 0) {