--- old/clientserver.c
+++ new/clientserver.c
-@@ -38,6 +38,7 @@ extern int sanitize_paths;
+@@ -37,6 +37,7 @@ extern int sanitize_paths;
extern int filesfrom_fd;
extern int remote_protocol;
extern int protocol_version;
extern int io_timeout;
extern int no_detach;
extern int default_af_hint;
-@@ -677,6 +678,8 @@ static int rsync_module(int f_in, int f_
+@@ -676,6 +677,8 @@ static int rsync_module(int f_in, int f_
else if (am_root < 0) /* Treat --fake-super from client as --super. */
am_root = 2;
extern int verbose;
+extern int dry_run;
- extern int list_only;
extern int am_root;
extern int am_server;
-@@ -59,6 +60,7 @@ extern int implied_dirs;
+ extern int am_daemon;
+@@ -58,6 +59,7 @@ extern int implied_dirs;
extern int file_extra_cnt;
extern int ignore_perishable;
extern int non_perishable_cnt;
extern int prune_empty_dirs;
extern int copy_links;
extern int copy_unsafe_links;
-@@ -83,6 +85,9 @@ extern iconv_t ic_send, ic_recv;
+@@ -82,6 +84,9 @@ extern iconv_t ic_send, ic_recv;
#define PTR_SIZE (sizeof (struct file_struct *))
int io_error;
int checksum_len;
dev_t filesystem_dev; /* used to implement -x */
-@@ -118,6 +123,10 @@ static char empty_sum[MAX_DIGEST_LEN];
+@@ -117,6 +122,10 @@ static char empty_sum[MAX_DIGEST_LEN];
static int flist_count_offset; /* for --delete --progress */
static int dir_count = 0;
static int high_hlink_ndx;
static void clean_flist(struct file_list *flist, int strip_root);
static void output_flist(struct file_list *flist);
-@@ -334,6 +343,301 @@ static void flist_done_allocating(struct
+@@ -304,6 +313,301 @@ static void flist_done_allocating(struct
flist->pool_boundary = ptr;
}
int push_pathname(const char *dir, int len)
{
if (dir == pathname)
-@@ -1005,7 +1309,7 @@ struct file_struct *make_file(const char
+@@ -975,7 +1279,7 @@ struct file_struct *make_file(const char
STRUCT_STAT *stp, int flags, int filter_level)
{
static char *lastdir;
struct file_struct *file;
char thisname[MAXPATHLEN];
char linkname[MAXPATHLEN];
-@@ -1095,6 +1399,8 @@ struct file_struct *make_file(const char
+@@ -1065,6 +1369,8 @@ struct file_struct *make_file(const char
if (is_excluded(thisname, S_ISDIR(st.st_mode) != 0, filter_level)) {
if (ignore_perishable)
non_perishable_cnt++;
return NULL;
}
-@@ -1135,9 +1441,16 @@ struct file_struct *make_file(const char
+@@ -1105,9 +1411,16 @@ struct file_struct *make_file(const char
memcpy(lastdir, thisname, len);
lastdir[len] = '\0';
lastdir_len = len;
basename_len = strlen(basename) + 1; /* count the '\0' */
#ifdef SUPPORT_LINKS
-@@ -1213,11 +1526,44 @@ struct file_struct *make_file(const char
+@@ -1183,11 +1496,44 @@ struct file_struct *make_file(const char
}
#endif
/* This code is only used by the receiver when it is building
* a list of files for a delete pass. */
if (keep_dirlinks && linkname_len && flist) {
-@@ -1509,6 +1855,9 @@ static void send_directory(int f, struct
+@@ -1476,6 +1822,9 @@ static void send_directory(int f, struct
closedir(d);
if (f >= 0 && recurse && !divert_dirs) {
int i, end = flist->used - 1;
/* send_if_directory() bumps flist->used, so use "end". */
-@@ -2063,7 +2412,11 @@ struct file_list *send_file_list(int f,
+@@ -2034,7 +2383,11 @@ struct file_list *send_file_list(int f,
* file-list to check if this is a 1-file xfer. */
send_extra_file_list(f, 1);
}
return flist;
}
-@@ -2355,7 +2708,7 @@ void flist_free(struct file_list *flist)
+@@ -2320,7 +2673,7 @@ void flist_free(struct file_list *flist)
if (!flist->prev || !flist_cnt)
pool_destroy(flist->file_pool);
{"block-size", 'B', POPT_ARG_LONG, &block_size, 0, 0, 0 },
{"compare-dest", 0, POPT_ARG_STRING, 0, OPT_COMPARE_DEST, 0, 0 },
{"copy-dest", 0, POPT_ARG_STRING, 0, OPT_COPY_DEST, 0, 0 },
-@@ -1956,7 +1959,9 @@ void server_options(char **args, int *ar
+@@ -1958,7 +1961,9 @@ void server_options(char **args, int *ar
args[ac++] = basis_dir[i];
}
}