--- old/compat.c
+++ new/compat.c
-@@ -64,6 +64,8 @@ void setup_protocol(int f_out,int f_in)
+@@ -94,6 +94,8 @@ void setup_protocol(int f_out,int f_in)
preserve_uid = ++file_extra_cnt;
if (preserve_gid)
preserve_gid = ++file_extra_cnt;
+ char const *fileflags = "no ";
STRUCT_STAT *dumstat;
- #ifdef HAVE_SOCKETPAIR
-@@ -234,6 +236,10 @@ static void print_rsync_version(enum log
+ #if SUBPROTOCOL_VERSION != 0
+@@ -232,6 +234,9 @@ static void print_rsync_version(enum log
+ #ifdef INET6
ipv6 = "";
#endif
-
+#ifdef SUPPORT_FLAGS
+ fileflags = "";
+#endif
-+
- if (SUBPROTOCOL_VERSION)
- snprintf(buf, sizeof buf, ".PR%d", SUBPROTOCOL_VERSION);
- else
-@@ -250,8 +256,8 @@ static void print_rsync_version(enum log
+
+ rprintf(f, "%s version %s protocol version %d%s\n",
+ RSYNC_NAME, RSYNC_VERSION, PROTOCOL_VERSION, subprotocol);
+@@ -245,8 +250,8 @@ static void print_rsync_version(enum log
(int)(sizeof (int64) * 8));
rprintf(f, " %ssocketpairs, %shardlinks, %ssymlinks, %sIPv6, batchfiles, %sinplace,\n",
got_socketpair, hardlinks, links, ipv6, have_inplace);
#ifdef MAINTAINER_MODE
rprintf(f, "Panic Action: \"%s\"\n", get_panic_action());
-@@ -317,6 +323,7 @@ void usage(enum logcode F)
+@@ -312,6 +317,7 @@ void usage(enum logcode F)
rprintf(F," -K, --keep-dirlinks treat symlinked dir on receiver as dir\n");
rprintf(F," -H, --hard-links preserve hard links\n");
rprintf(F," -p, --perms preserve permissions\n");
rprintf(F," -E, --executability preserve the file's executability\n");
rprintf(F," --chmod=CHMOD affect file and/or directory permissions\n");
#ifdef SUPPORT_ACLS
-@@ -448,6 +455,8 @@ static struct poptOption long_options[]
+@@ -443,6 +449,8 @@ static struct poptOption long_options[]
{"perms", 'p', POPT_ARG_VAL, &preserve_perms, 1, 0, 0 },
{"no-perms", 0, POPT_ARG_VAL, &preserve_perms, 0, 0, 0 },
{"no-p", 0, POPT_ARG_VAL, &preserve_perms, 0, 0, 0 },
{"executability", 'E', POPT_ARG_NONE, &preserve_executability, 0, 0, 0 },
{"acls", 'A', POPT_ARG_NONE, 0, 'A', 0, 0 },
{"no-acls", 0, POPT_ARG_VAL, &preserve_acls, 0, 0, 0 },
-@@ -1194,6 +1203,15 @@ int parse_arguments(int *argc, const cha
+@@ -1189,6 +1197,15 @@ int parse_arguments(int *argc, const cha
}
#endif
if (write_batch && read_batch) {
snprintf(err_buf, sizeof err_buf,
"--write-batch and --read-batch can not be used together\n");
-@@ -1661,6 +1679,9 @@ void server_options(char **args,int *arg
+@@ -1665,6 +1682,9 @@ void server_options(char **args,int *arg
if (xfer_dirs && !recurse && delete_mode && am_sender)
args[ac++] = "--no-r";
return -1;
}
-@@ -785,6 +833,9 @@ int start_daemon(int f_in, int f_out)
+@@ -784,6 +832,9 @@ int start_daemon(int f_in, int f_out)
if (protocol_version > remote_protocol)
protocol_version = remote_protocol;
line[0] = 0;
if (!read_line(f_in, line, sizeof line - 1))
return -1;
-@@ -796,6 +847,20 @@ int start_daemon(int f_in, int f_out)
+@@ -795,6 +846,20 @@ int start_daemon(int f_in, int f_out)
return -1;
}
+ char const *ssl = "no ";
STRUCT_STAT *dumstat;
- #ifdef HAVE_SOCKETPAIR
-@@ -234,6 +243,10 @@ static void print_rsync_version(enum log
+ #if SUBPROTOCOL_VERSION != 0
+@@ -232,6 +241,9 @@ static void print_rsync_version(enum log
+ #ifdef INET6
ipv6 = "";
#endif
-
+#ifdef HAVE_OPENSSL
+ ssl = "";
+#endif
-+
- if (SUBPROTOCOL_VERSION)
- snprintf(buf, sizeof buf, ".PR%d", SUBPROTOCOL_VERSION);
- else
-@@ -250,8 +263,8 @@ static void print_rsync_version(enum log
+
+ rprintf(f, "%s version %s protocol version %d%s\n",
+ RSYNC_NAME, RSYNC_VERSION, PROTOCOL_VERSION, subprotocol);
+@@ -245,8 +257,8 @@ static void print_rsync_version(enum log
(int)(sizeof (int64) * 8));
rprintf(f, " %ssocketpairs, %shardlinks, %ssymlinks, %sIPv6, batchfiles, %sinplace,\n",
got_socketpair, hardlinks, links, ipv6, have_inplace);
#ifdef MAINTAINER_MODE
rprintf(f, "Panic Action: \"%s\"\n", get_panic_action());
-@@ -405,6 +418,13 @@ void usage(enum logcode F)
+@@ -400,6 +412,13 @@ void usage(enum logcode F)
rprintf(F," -4, --ipv4 prefer IPv4\n");
rprintf(F," -6, --ipv6 prefer IPv6\n");
#endif
rprintf(F," --version print version number\n");
rprintf(F,"(-h) --help show this help (-h works with no other options)\n");
-@@ -418,7 +438,7 @@ enum {OPT_VERSION = 1000, OPT_DAEMON, OP
+@@ -413,7 +432,7 @@ enum {OPT_VERSION = 1000, OPT_DAEMON, OP
OPT_FILTER, OPT_COMPARE_DEST, OPT_COPY_DEST, OPT_LINK_DEST, OPT_HELP,
OPT_INCLUDE, OPT_INCLUDE_FROM, OPT_MODIFY_WINDOW, OPT_MIN_SIZE, OPT_CHMOD,
OPT_READ_BATCH, OPT_WRITE_BATCH, OPT_ONLY_WRITE_BATCH, OPT_MAX_SIZE,
OPT_SERVER, OPT_REFUSED_BASE = 9000};
static struct poptOption long_options[] = {
-@@ -576,6 +596,13 @@ static struct poptOption long_options[]
+@@ -571,6 +590,13 @@ static struct poptOption long_options[]
{"checksum-seed", 0, POPT_ARG_INT, &checksum_seed, 0, 0, 0 },
{"server", 0, POPT_ARG_NONE, 0, OPT_SERVER, 0, 0 },
{"sender", 0, POPT_ARG_NONE, 0, OPT_SENDER, 0, 0 },
/* All the following options switch us into daemon-mode option-parsing. */
{"config", 0, POPT_ARG_STRING, 0, OPT_DAEMON, 0, 0 },
{"daemon", 0, POPT_ARG_NONE, 0, OPT_DAEMON, 0, 0 },
-@@ -603,6 +630,13 @@ static void daemon_usage(enum logcode F)
+@@ -598,6 +624,13 @@ static void daemon_usage(enum logcode F)
rprintf(F," -4, --ipv4 prefer IPv4\n");
rprintf(F," -6, --ipv6 prefer IPv6\n");
#endif
rprintf(F," --help show this help screen\n");
rprintf(F,"\n");
-@@ -629,6 +663,13 @@ static struct poptOption long_daemon_opt
+@@ -624,6 +657,13 @@ static struct poptOption long_daemon_opt
{"protocol", 0, POPT_ARG_INT, &protocol_version, 0, 0, 0 },
{"server", 0, POPT_ARG_NONE, &am_server, 0, 0, 0 },
{"temp-dir", 'T', POPT_ARG_STRING, &tmpdir, 0, 0, 0 },
{"verbose", 'v', POPT_ARG_NONE, 0, 'v', 0, 0 },
{"no-verbose", 0, POPT_ARG_VAL, &verbose, 0, 0, 0 },
{"no-v", 0, POPT_ARG_VAL, &verbose, 0, 0, 0 },
-@@ -888,6 +929,12 @@ int parse_arguments(int *argc, const cha
+@@ -883,6 +923,12 @@ int parse_arguments(int *argc, const cha
verbose++;
break;
default:
rprintf(FERROR,
"rsync: %s: %s (in daemon mode)\n",
-@@ -911,6 +958,17 @@ int parse_arguments(int *argc, const cha
+@@ -906,6 +952,17 @@ int parse_arguments(int *argc, const cha
exit_cleanup(RERR_SYNTAX);
}
*argv = poptGetArgs(pc);
*argc = count_args(*argv);
am_starting_up = 0;
-@@ -1155,6 +1213,12 @@ int parse_arguments(int *argc, const cha
+@@ -1150,6 +1207,12 @@ int parse_arguments(int *argc, const cha
return 0;
#endif
default:
/* A large opt value means that set_refuse_options()
* turned this option off. */
-@@ -1433,6 +1497,17 @@ int parse_arguments(int *argc, const cha
+@@ -1428,6 +1491,17 @@ int parse_arguments(int *argc, const cha
if (delay_updates && !partial_dir)
partial_dir = tmp_partialdir;
if (inplace) {
#ifdef HAVE_FTRUNCATE
if (partial_dir) {
-@@ -1864,10 +1939,27 @@ char *check_for_hostspec(char *s, char *
+@@ -1868,10 +1942,27 @@ char *check_for_hostspec(char *s, char *
char *p;
int not_host;
int hostlen;
+ char const *preallocation = "no ";
STRUCT_STAT *dumstat;
- #ifdef HAVE_SOCKETPAIR
-@@ -234,6 +236,10 @@ static void print_rsync_version(enum log
+ #if SUBPROTOCOL_VERSION != 0
+@@ -232,6 +234,9 @@ static void print_rsync_version(enum log
+ #ifdef INET6
ipv6 = "";
#endif
-
+#ifdef SUPPORT_PREALLOCATION
+ preallocation = "";
+#endif
-+
- if (SUBPROTOCOL_VERSION)
- snprintf(buf, sizeof buf, ".PR%d", SUBPROTOCOL_VERSION);
- else
-@@ -250,8 +256,8 @@ static void print_rsync_version(enum log
+
+ rprintf(f, "%s version %s protocol version %d%s\n",
+ RSYNC_NAME, RSYNC_VERSION, PROTOCOL_VERSION, subprotocol);
+@@ -245,8 +250,8 @@ static void print_rsync_version(enum log
(int)(sizeof (int64) * 8));
rprintf(f, " %ssocketpairs, %shardlinks, %ssymlinks, %sIPv6, batchfiles, %sinplace,\n",
got_socketpair, hardlinks, links, ipv6, have_inplace);
#ifdef MAINTAINER_MODE
rprintf(f, "Panic Action: \"%s\"\n", get_panic_action());
-@@ -334,6 +340,9 @@ void usage(enum logcode F)
+@@ -329,6 +334,9 @@ void usage(enum logcode F)
rprintf(F," -O, --omit-dir-times omit directories when preserving times\n");
rprintf(F," --super receiver attempts super-user activities\n");
rprintf(F," -S, --sparse handle sparse files efficiently\n");
rprintf(F," -n, --dry-run show what would have been transferred\n");
rprintf(F," -W, --whole-file copy files whole (without rsync algorithm)\n");
rprintf(F," -x, --one-file-system don't cross filesystem boundaries\n");
-@@ -501,6 +510,7 @@ static struct poptOption long_options[]
+@@ -496,6 +504,7 @@ static struct poptOption long_options[]
{"max-size", 0, POPT_ARG_STRING, &max_size_arg, OPT_MAX_SIZE, 0, 0 },
{"min-size", 0, POPT_ARG_STRING, &min_size_arg, OPT_MIN_SIZE, 0, 0 },
{"sparse", 'S', POPT_ARG_NONE, &sparse_files, 0, 0, 0 },
{"inplace", 0, POPT_ARG_NONE, &inplace, 0, 0, 0 },
{"append", 0, POPT_ARG_VAL, &append_mode, 1, 0, 0 },
{"del", 0, POPT_ARG_NONE, &delete_during, 0, 0, 0 },
-@@ -1194,6 +1204,15 @@ int parse_arguments(int *argc, const cha
+@@ -1189,6 +1198,15 @@ int parse_arguments(int *argc, const cha
}
#endif
if (write_batch && read_batch) {
snprintf(err_buf, sizeof err_buf,
"--write-batch and --read-batch can not be used together\n");
-@@ -1845,6 +1864,9 @@ void server_options(char **args,int *arg
+@@ -1849,6 +1867,9 @@ void server_options(char **args,int *arg
else if (remove_source_files)
args[ac++] = "--remove-sent-files";
--- old/clientserver.c
+++ new/clientserver.c
-@@ -854,6 +854,13 @@ int daemon_main(void)
+@@ -853,6 +853,13 @@ int daemon_main(void)
* address too. In fact, why not just do inet_ntop on the
* local address??? */
+ char const *slp = "no ";
STRUCT_STAT *dumstat;
- #ifdef HAVE_SOCKETPAIR
-@@ -234,6 +235,10 @@ static void print_rsync_version(enum log
+ #if SUBPROTOCOL_VERSION != 0
+@@ -232,6 +233,9 @@ static void print_rsync_version(enum log
+ #ifdef INET6
ipv6 = "";
#endif
-
+#if HAVE_LIBSLP
+ slp = "";
+#endif
-+
- if (SUBPROTOCOL_VERSION)
- snprintf(buf, sizeof buf, ".PR%d", SUBPROTOCOL_VERSION);
- else
-@@ -250,8 +255,8 @@ static void print_rsync_version(enum log
+
+ rprintf(f, "%s version %s protocol version %d%s\n",
+ RSYNC_NAME, RSYNC_VERSION, PROTOCOL_VERSION, subprotocol);
+@@ -245,8 +249,8 @@ static void print_rsync_version(enum log
(int)(sizeof (int64) * 8));
rprintf(f, " %ssocketpairs, %shardlinks, %ssymlinks, %sIPv6, batchfiles, %sinplace,\n",
got_socketpair, hardlinks, links, ipv6, have_inplace);