X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/ba2133d6add082b059728074febdac6c520a4351..e3d27df44468267e7086e63307a61a72c0e60a1e:/clientserver.c diff --git a/clientserver.c b/clientserver.c index 786c4bed..e557309d 100644 --- a/clientserver.c +++ b/clientserver.c @@ -625,10 +625,15 @@ static int rsync_module(int f_in, int f_out, int i, char *addr, char *host) verbose = 0; /* future verbosity is controlled by client options */ ret = parse_arguments(&argc, (const char ***) &argv, 0); - quiet = 0; /* Don't let someone try to be tricky. */ + am_server = 1; /* Don't let someone try to be tricky. */ if (lp_ignore_errors(module_id)) ignore_errors = 1; + if (lp_fake_super(i)) + am_root = -1; + else if (am_root < 0) /* Treat --fake-super from client as --super. */ + am_root = 2; + if (filesfrom_fd == 0) filesfrom_fd = f_in; @@ -682,7 +687,7 @@ static int rsync_module(int f_in, int f_out, int i, char *addr, char *host) if (!ret || err_msg) { if (err_msg) - rwrite(FERROR, err_msg, strlen(err_msg)); + rwrite(FERROR, err_msg, strlen(err_msg), 0); else option_error(); msleep(400);