X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/8840ec0f49157bc390b3dda5467287a0290ac4f1..94d3725cf202bbbef2674bb048d7604be7359303:/rsync.c diff --git a/rsync.c b/rsync.c index b03d2547..8ff841d0 100644 --- a/rsync.c +++ b/rsync.c @@ -50,6 +50,7 @@ extern int inplace; extern int keep_dirlinks; extern int make_backups; extern struct stats stats; +extern struct chmod_mode_struct *daemon_chmod_modes; #if defined HAVE_ICONV_OPEN && defined HAVE_ICONV_H iconv_t ic_chck = (iconv_t)-1; @@ -116,6 +117,8 @@ mode_t dest_mode(mode_t flist_mode, mode_t cur_mode, int exists) } } else cur_mode = flist_mode & ACCESSPERMS & ~orig_umask; + if (daemon_chmod_modes && !S_ISLNK(flist_mode)) + cur_mode = tweak_mode(cur_mode, daemon_chmod_modes); return (flist_mode & ~CHMOD_BITS) | (cur_mode & CHMOD_BITS); }