X-Git-Url: https://mattmccutchen.net/rsync/rsync-patches.git/blobdiff_plain/8b9ed46197a2d374d2dae2499de069f1a43fc527..6849cd848dfa9df7be620dbe7ed24580e93e91b9:/acls.diff diff --git a/acls.diff b/acls.diff index daecd36..0a27c1a 100644 --- a/acls.diff +++ b/acls.diff @@ -1165,7 +1165,7 @@ ACLs to a non-ACL-supporting disk should complain. +} + +#endif /* SUPPORT_ACLS */ ---- orig/backup.c 2005-06-10 21:33:27 +--- orig/backup.c 2005-11-10 16:58:36 +++ backup.c 2004-10-06 00:13:09 @@ -135,6 +135,7 @@ static int make_bak_dir(char *fullpath) } else { @@ -1284,9 +1284,9 @@ ACLs to a non-ACL-supporting disk should complain. AC_CONFIG_FILES([Makefile lib/dummy zlib/dummy popt/dummy shconfig]) AC_OUTPUT ---- orig/flist.c 2005-11-07 04:29:01 +--- orig/flist.c 2005-11-10 16:58:36 +++ flist.c 2005-07-29 02:49:06 -@@ -960,6 +960,8 @@ static struct file_struct *send_file_nam +@@ -961,6 +961,8 @@ static struct file_struct *send_file_nam file = make_file(fname, flist, f == -2 ? SERVER_FILTERS : ALL_FILTERS); if (!file) return NULL; @@ -1295,7 +1295,7 @@ ACLs to a non-ACL-supporting disk should complain. maybe_emit_filelist_progress(flist->count + flist_count_offset); -@@ -968,6 +970,10 @@ static struct file_struct *send_file_nam +@@ -969,6 +971,10 @@ static struct file_struct *send_file_nam if (file->basename[0]) { flist->files[flist->count++] = file; send_file_entry(file, f, base_flags); @@ -1324,9 +1324,9 @@ ACLs to a non-ACL-supporting disk should complain. if (f >= 0) { /* Now send the uid/gid list. This was introduced in * protocol version 15 */ ---- orig/generator.c 2005-10-30 22:30:28 +--- orig/generator.c 2005-11-12 20:31:04 +++ generator.c 2005-05-12 23:34:00 -@@ -725,6 +725,10 @@ static void recv_generator(char *fname, +@@ -744,6 +744,10 @@ static void recv_generator(char *fname, if (set_perms(fname, file, statret ? NULL : &st, 0) && verbose && code && f_out != -1) rprintf(code, "%s/\n", safe_fname(fname)); @@ -4624,7 +4624,7 @@ ACLs to a non-ACL-supporting disk should complain. next; } ---- orig/options.c 2005-11-07 04:29:01 +--- orig/options.c 2005-11-15 07:01:03 +++ options.c 2005-08-27 21:15:29 @@ -44,6 +44,7 @@ int keep_dirlinks = 0; int copy_links = 0; @@ -4634,7 +4634,7 @@ ACLs to a non-ACL-supporting disk should complain. int preserve_perms = 0; int preserve_devices = 0; int preserve_uid = 0; -@@ -187,6 +188,7 @@ static void print_rsync_version(enum log +@@ -188,6 +189,7 @@ static void print_rsync_version(enum log char const *got_socketpair = "no "; char const *have_inplace = "no "; char const *hardlinks = "no "; @@ -4642,7 +4642,7 @@ ACLs to a non-ACL-supporting disk should complain. char const *links = "no "; char const *ipv6 = "no "; STRUCT_STAT *dumstat; -@@ -203,6 +205,10 @@ static void print_rsync_version(enum log +@@ -204,6 +206,10 @@ static void print_rsync_version(enum log hardlinks = ""; #endif @@ -4653,7 +4653,7 @@ ACLs to a non-ACL-supporting disk should complain. #ifdef SUPPORT_LINKS links = ""; #endif -@@ -217,9 +223,9 @@ static void print_rsync_version(enum log +@@ -218,9 +224,9 @@ static void print_rsync_version(enum log "Copyright (C) 1996-2005 by Andrew Tridgell and others\n"); rprintf(f, "\n"); rprintf(f, "Capabilities: %d-bit files, %ssocketpairs, " @@ -4665,7 +4665,7 @@ ACLs to a non-ACL-supporting disk should complain. /* Note that this field may not have type ino_t. It depends * on the complicated interaction between largefile feature -@@ -289,6 +295,7 @@ void usage(enum logcode F) +@@ -290,6 +296,7 @@ void usage(enum logcode F) rprintf(F," -H, --hard-links preserve hard links\n"); rprintf(F," -K, --keep-dirlinks treat symlinked dir on receiver as dir\n"); rprintf(F," -p, --perms preserve permissions\n"); @@ -4673,7 +4673,7 @@ ACLs to a non-ACL-supporting disk should complain. rprintf(F," -o, --owner preserve owner (root only)\n"); rprintf(F," -g, --group preserve group\n"); rprintf(F," -D, --devices preserve devices (root only)\n"); -@@ -394,6 +401,9 @@ static struct poptOption long_options[] +@@ -399,6 +406,9 @@ 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 }, @@ -4683,7 +4683,7 @@ ACLs to a non-ACL-supporting disk should complain. {"times", 't', POPT_ARG_VAL, &preserve_times, 1, 0, 0 }, {"no-times", 0, POPT_ARG_VAL, &preserve_times, 0, 0, 0 }, {"no-t", 0, POPT_ARG_VAL, &preserve_times, 0, 0, 0 }, -@@ -994,6 +1004,24 @@ int parse_arguments(int *argc, const cha +@@ -997,6 +1007,24 @@ int parse_arguments(int *argc, const cha basis_dir[basis_dir_cnt++] = (char *)arg; break; @@ -4708,7 +4708,7 @@ ACLs to a non-ACL-supporting disk should complain. default: /* A large opt value means that set_refuse_options() * turned this option off. */ -@@ -1421,6 +1449,8 @@ void server_options(char **args,int *arg +@@ -1429,6 +1457,8 @@ void server_options(char **args,int *arg if (preserve_hard_links) argstr[x++] = 'H'; @@ -4734,9 +4734,9 @@ ACLs to a non-ACL-supporting disk should complain. if (verbose > 1 && flags & PERMS_REPORT) { enum logcode code = daemon_log_format_has_i || dry_run ? FCLIENT : FINFO; ---- orig/rsync.h 2005-10-14 18:45:50 +--- orig/rsync.h 2005-11-12 20:31:04 +++ rsync.h 2005-07-29 02:25:55 -@@ -651,6 +651,44 @@ struct stats { +@@ -646,6 +646,44 @@ struct stats { #include "lib/permstring.h" #include "lib/addrinfo.h" @@ -4781,7 +4781,7 @@ ACLs to a non-ACL-supporting disk should complain. #include "proto.h" /* We have replacement versions of these if they're missing. */ ---- orig/rsync.yo 2005-11-07 04:29:02 +--- orig/rsync.yo 2005-11-15 07:01:04 +++ rsync.yo 2004-07-03 20:11:58 @@ -316,6 +316,7 @@ to the detailed description below for a -H, --hard-links preserve hard links @@ -4791,7 +4791,7 @@ ACLs to a non-ACL-supporting disk should complain. -o, --owner preserve owner (root only) -g, --group preserve group -D, --devices preserve devices (root only) -@@ -668,6 +669,11 @@ based on the source file's permissions, +@@ -672,6 +673,11 @@ based on the source file's permissions, umask setting (which is the same behavior as other file-copy utilities, such as cp). @@ -5083,7 +5083,7 @@ ACLs to a non-ACL-supporting disk should complain. + +#endif /* No ACLs. */ +#endif /* _SMB_ACLS_H */ ---- orig/uidlist.c 2005-02-14 00:53:44 +--- orig/uidlist.c 2005-11-10 16:58:36 +++ uidlist.c 2004-07-03 20:11:58 @@ -34,6 +34,7 @@ extern int verbose; @@ -5120,16 +5120,16 @@ ACLs to a non-ACL-supporting disk should complain. /* read the uid list */ while ((id = read_int(f)) != 0) { int len = read_byte(f); -@@ -325,7 +326,7 @@ void recv_uid_list(int f, struct file_li +@@ -324,7 +325,7 @@ void recv_uid_list(int f, struct file_li + } } - - if (preserve_gid && !numeric_ids) { + if ((preserve_gid || preserve_acls) && !numeric_ids) { /* read the gid list */ while ((id = read_int(f)) != 0) { int len = read_byte(f); -@@ -337,6 +338,18 @@ void recv_uid_list(int f, struct file_li +@@ -336,6 +337,18 @@ void recv_uid_list(int f, struct file_li } }