for (j = 0; j < cur_flist->used; j++) {
struct file_struct *file = cur_flist->sorted[j];
- if (!(file->flags & FLAG_XFER_DIR))
+ if (!(file->flags & FLAG_CONTENT_DIR))
continue;
f_name(file, fbuf);
&& (!(iflags & ITEM_XNAME_FOLLOWS) || *xname))
|| (keep_time && cmp_time(file->modtime, sxp->st.st_mtime) != 0))
iflags |= ITEM_REPORT_TIME;
+#if !defined HAVE_LCHMOD && !defined HAVE_SETATTRLIST
+ if (S_ISLNK(file->mode)) {
+ ;
+ } else
+#endif
if (!BITS_EQUAL(sxp->st.st_mode, file->mode, CHMOD_BITS))
iflags |= ITEM_REPORT_PERMS;
if (uid_ndx && am_root && (uid_t)F_OWNER(file) != sxp->st.st_uid)
char *fnamecmp, *partialptr, *backupptr = NULL;
char fnamecmpbuf[MAXPATHLEN];
uchar fnamecmp_type;
- int implied_dirs_are_missing = relative_paths && !implied_dirs && !inc_recurse;
+ int implied_dirs_are_missing = relative_paths && !implied_dirs && protocol_version < 30;
int del_opts = delete_mode || force_delete ? DEL_RECURSE : 0;
if (verbose > 2)
if (list_only) {
if (S_ISDIR(file->mode)
- && ((relative_paths && !implied_dirs && !(file->flags & FLAG_XFER_DIR))
+ && ((!implied_dirs && file->flags & FLAG_IMPLIED_DIR)
|| (inc_recurse && ndx != cur_flist->ndx_start - 1)))
return;
list_file_entry(file);
}
if (S_ISDIR(file->mode)) {
- if (!implied_dirs && !(file->flags & FLAG_XFER_DIR))
+ if (!implied_dirs && file->flags & FLAG_IMPLIED_DIR)
goto cleanup;
if (inc_recurse && ndx != cur_flist->ndx_start - 1) {
- /* In inc_recurse mode we want ot make sure any missing
+ /* In inc_recurse mode we want to make sure any missing
* directories get created while we're still processing
* the parent dir (which allows us to touch the parent
* dir's mtime right away). We will handle the dir in
}
}
else if (delete_during && f_out != -1 && !phase && dry_run < 2
- && (file->flags & FLAG_XFER_DIR))
+ && (file->flags & FLAG_CONTENT_DIR))
delete_in_dir(fname, file, &real_sx.st.st_dev);
goto cleanup;
}
for (i = start; i <= end; i++, counter++) {
file = flist->files[i];
if (!S_ISDIR(file->mode)
- || (relative_paths && !implied_dirs && !(file->flags & FLAG_XFER_DIR)))
+ || (!implied_dirs && file->flags & FLAG_IMPLIED_DIR))
continue;
if (verbose > 3) {
fname = f_name(file, NULL);
file = flist->files[ndx - flist->ndx_start];
assert(file->flags & FLAG_HLINKED);
finish_hard_link(file, f_name(file, fbuf), ndx, NULL, itemizing, code, -1);
+ flist->in_progress--;
}
#endif
ndx = cur_flist->ndx_start - 1;
recv_generator(fbuf, fp, ndx, itemizing, code, f_out);
if (delete_during && dry_run < 2) {
- if (BITS_SETnUNSET(fp->flags, FLAG_XFER_DIR, FLAG_MISSING_DIR)) {
+ if (BITS_SETnUNSET(fp->flags, FLAG_CONTENT_DIR, FLAG_MISSING_DIR)) {
dev_t dirdev;
if (one_file_system) {
uint32 *devp = F_DIR_DEV_P(fp);