extern int module_id;
extern int copy_links;
extern int copy_dirlinks;
+extern int copy_unsafe_links;
extern int keep_dirlinks;
extern int preserve_hard_links;
extern int protocol_version;
extern iconv_t ic_send;
#endif
+uid_t our_uid;
int local_server = 0;
int daemon_over_rsh = 0;
mode_t orig_umask = 0;
* dry-run mode and the destination dir does not yet exist, we'll try to
* tweak any dest-relative paths to make them work for a dry-run (the
* destination dir must be in curr_dir[] when this function is called).
- * We also report if any arg that is non-existent or not a directory. */
+ * We also warn about any arg that is non-existent or not a directory. */
static void check_alt_basis_dirs(void)
{
STRUCT_STAT st;
/* The receiving side mustn't obey this, or an existing symlink that
* points to an identical file won't be replaced by the referent. */
- copy_links = copy_dirlinks = 0;
+ copy_links = copy_dirlinks = copy_unsafe_links = 0;
#ifdef SUPPORT_HARD_LINKS
if (preserve_hard_links && !inc_recurse)
#endif
starttime = time(NULL);
- am_root = (MY_UID() == 0);
+ our_uid = MY_UID();
+ am_root = our_uid == 0;
memset(&stats, 0, sizeof(stats));