extern int local_server;
extern int inplace;
extern int recurse;
+extern int use_qsort;
extern int allow_inc_recurse;
extern int fuzzy_basis;
extern int read_batch;
extern char *dest_option;
extern struct filter_list_struct filter_list;
+/* These index values are for the file-list's extra-attribute array. */
+int uid_ndx, gid_ndx, acls_ndx, xattrs_ndx;
+
/* The server makes sure that if either side only supports a pre-release
* version of a protocol, that both sides must speak a compatible version
* of that protocol for it to be advertised as available. */
else
file_extra_cnt++;
if (preserve_uid)
- preserve_uid = ++file_extra_cnt;
+ uid_ndx = ++file_extra_cnt;
if (preserve_gid)
- preserve_gid = ++file_extra_cnt;
+ gid_ndx = ++file_extra_cnt;
if (preserve_acls && !am_sender)
- preserve_acls = ++file_extra_cnt;
+ acls_ndx = ++file_extra_cnt;
if (preserve_xattrs)
- preserve_xattrs = ++file_extra_cnt;
+ xattrs_ndx = ++file_extra_cnt;
if (remote_protocol == 0) {
if (am_server && !local_server)
} else if (protocol_version >= 30) {
if (recurse && allow_inc_recurse && !preserve_hard_links
&& !delete_before && !delete_after && !delay_updates
- && !prune_empty_dirs)
+ && !prune_empty_dirs && !use_qsort)
inc_recurse = 1;
need_messages_from_generator = 1;
}