X-Git-Url: https://mattmccutchen.net/rsync/rsync-patches.git/blobdiff_plain/13bed3ddd0403dc8941696ca63d3e17a1d8676c3..982426b8a364eae49577cb0906e84f0ff83499dc:/acls.diff diff --git a/acls.diff b/acls.diff index 0be8f04..b8e0ae1 100644 --- a/acls.diff +++ b/acls.diff @@ -7,7 +7,7 @@ After applying this patch, run these commands for a successful build: make ---- orig/Makefile.in 2004-05-15 00:53:53 +--- orig/Makefile.in 2004-07-04 08:59:17 +++ Makefile.in 2004-07-03 20:11:58 @@ -25,7 +25,7 @@ VERSION=@VERSION@ .SUFFIXES: @@ -1149,7 +1149,7 @@ After applying this patch, run these commands for a successful build: + + +#endif /* SUPPORT_ACLS */ ---- orig/backup.c 2004-06-11 07:47:42 +--- orig/backup.c 2004-07-26 06:19:04 +++ backup.c 2004-07-03 20:11:58 @@ -105,6 +105,7 @@ static int make_bak_dir(char *fullpath) } else { @@ -1159,7 +1159,7 @@ After applying this patch, run these commands for a successful build: } } *p = '/'; -@@ -167,6 +168,8 @@ static int keep_backup(char *fname) +@@ -168,6 +169,8 @@ static int keep_backup(char *fname) return 0; } @@ -1168,7 +1168,7 @@ After applying this patch, run these commands for a successful build: #ifdef HAVE_MKNOD /* Check to see if this is a device file, or link */ if (IS_DEVICE(file->mode)) { -@@ -237,6 +240,7 @@ static int keep_backup(char *fname) +@@ -242,6 +245,7 @@ static int keep_backup(char *fname) } } set_perms(backup_dir_buf, file, NULL, 0); @@ -1176,7 +1176,7 @@ After applying this patch, run these commands for a successful build: free(file); if (verbose > 1) ---- orig/configure.in 2004-04-30 18:04:07 +--- orig/configure.in 2004-07-16 20:07:22 +++ configure.in 2004-07-03 20:11:58 @@ -434,6 +434,11 @@ if test x"$ac_cv_func_strcasecmp" = x"no AC_CHECK_LIB(resolv, strcasecmp) @@ -1265,9 +1265,9 @@ After applying this patch, run these commands for a successful build: AC_CONFIG_FILES([Makefile lib/dummy zlib/dummy popt/dummy shconfig]) AC_OUTPUT ---- orig/flist.c 2004-06-18 16:23:07 +--- orig/flist.c 2004-07-17 15:20:05 +++ flist.c 2004-07-03 20:11:58 -@@ -945,6 +945,8 @@ void send_file_name(int f, struct file_l +@@ -942,6 +942,8 @@ void send_file_name(int f, struct file_l if (!file) return; @@ -1276,7 +1276,7 @@ After applying this patch, run these commands for a successful build: maybe_emit_filelist_progress(flist); -@@ -956,6 +958,10 @@ void send_file_name(int f, struct file_l +@@ -950,6 +952,10 @@ void send_file_name(int f, struct file_l if (file->basename[0]) { flist->files[flist->count++] = file; send_file_entry(file, f, base_flags); @@ -1287,7 +1287,7 @@ After applying this patch, run these commands for a successful build: } if (recursive && S_ISDIR(file->mode) -@@ -1274,6 +1280,8 @@ struct file_list *recv_file_list(int f) +@@ -1266,6 +1272,8 @@ struct file_list *recv_file_list(int f) flags |= read_byte(f) << 8; receive_file_entry(&flist->files[i], flags, flist, f); @@ -1296,7 +1296,7 @@ After applying this patch, run these commands for a successful build: if (S_ISREG(flist->files[i]->mode)) stats.total_size += flist->files[i]->length; -@@ -1296,6 +1304,8 @@ struct file_list *recv_file_list(int f) +@@ -1288,6 +1296,8 @@ struct file_list *recv_file_list(int f) clean_flist(flist, relative_paths, 1); @@ -1305,12 +1305,12 @@ After applying this patch, run these commands for a successful build: if (f != -1) { /* Now send the uid/gid list. This was introduced in * protocol version 15 */ ---- orig/generator.c 2004-06-30 07:24:45 +--- orig/generator.c 2004-07-28 10:05:29 +++ generator.c 2004-07-03 20:11:58 -@@ -343,6 +343,10 @@ static void recv_generator(char *fname, +@@ -335,6 +335,10 @@ static void recv_generator(char *fname, if (set_perms(fname, file, statret ? NULL : &st, 0) && verbose && f_out != -1) - rprintf(FINFO,"%s/\n",fname); + rprintf(FINFO, "%s/\n", safe_fname(fname)); +#if SUPPORT_ACLS + if (f_out == -1) + SET_ACL(fname, file); @@ -1329,8 +1329,8 @@ After applying this patch, run these commands for a successful build: next; } ---- orig/options.c 2004-06-20 19:30:00 -+++ options.c 2004-07-03 20:11:58 +--- orig/options.c 2004-07-23 17:16:13 ++++ options.c 2004-07-15 16:53:42 @@ -43,6 +43,7 @@ int keep_dirlinks = 0; int copy_links = 0; int preserve_links = 0; @@ -1339,15 +1339,15 @@ After applying this patch, run these commands for a successful build: int preserve_perms = 0; int preserve_devices = 0; int preserve_uid = 0; -@@ -150,6 +151,7 @@ static void print_rsync_version(enum log - { +@@ -151,6 +152,7 @@ static void print_rsync_version(enum log char const *got_socketpair = "no "; + char const *have_inplace = "no "; char const *hardlinks = "no "; + char const *acls = "no "; char const *links = "no "; char const *ipv6 = "no "; STRUCT_STAT *dumstat; -@@ -162,6 +164,10 @@ static void print_rsync_version(enum log +@@ -167,6 +169,10 @@ static void print_rsync_version(enum log hardlinks = ""; #endif @@ -1358,7 +1358,7 @@ After applying this patch, run these commands for a successful build: #if SUPPORT_LINKS links = ""; #endif -@@ -176,9 +182,9 @@ static void print_rsync_version(enum log +@@ -181,9 +187,9 @@ static void print_rsync_version(enum log "Copyright (C) 1996-2004 by Andrew Tridgell and others\n"); rprintf(f, "\n"); rprintf(f, "Capabilities: %d-bit files, %ssocketpairs, " @@ -1370,7 +1370,7 @@ After applying this patch, run these commands for a successful build: /* Note that this field may not have type ino_t. It depends * on the complicated interaction between largefile feature -@@ -241,6 +247,7 @@ void usage(enum logcode F) +@@ -248,6 +254,7 @@ void usage(enum logcode F) rprintf(F," --safe-links ignore \"unsafe\" symlinks\n"); rprintf(F," -H, --hard-links preserve hard links\n"); rprintf(F," -p, --perms preserve permissions\n"); @@ -1378,15 +1378,15 @@ After applying this patch, run these commands for a successful build: 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"); -@@ -386,6 +393,7 @@ static struct poptOption long_options[] - {"address", 0, POPT_ARG_STRING, &bind_address, 0, 0, 0 }, - {"backup-dir", 0, POPT_ARG_STRING, &backup_dir, 0, 0, 0 }, - {"hard-links", 'H', POPT_ARG_NONE, &preserve_hard_links, 0, 0, 0 }, +@@ -356,6 +363,7 @@ static struct poptOption long_options[] + {"no-whole-file", 0, POPT_ARG_VAL, &whole_file, 0, 0, 0 }, + {"copy-unsafe-links", 0, POPT_ARG_NONE, ©_unsafe_links, 0, 0, 0 }, + {"perms", 'p', POPT_ARG_NONE, &preserve_perms, 0, 0, 0 }, + {"acls", 'A', POPT_ARG_NONE, &preserve_acls, 0, 0, 0 }, - {"read-batch", 0, POPT_ARG_STRING, &batch_prefix, OPT_READ_BATCH, 0, 0 }, - {"write-batch", 0, POPT_ARG_STRING, &batch_prefix, OPT_WRITE_BATCH, 0, 0 }, - {"files-from", 0, POPT_ARG_STRING, &files_from, 0, 0, 0 }, -@@ -596,6 +604,31 @@ int parse_arguments(int *argc, const cha + {"owner", 'o', POPT_ARG_NONE, &preserve_uid, 0, 0, 0 }, + {"group", 'g', POPT_ARG_NONE, &preserve_gid, 0, 0, 0 }, + {"devices", 'D', POPT_ARG_NONE, &preserve_devices, 0, 0, 0 }, +@@ -602,6 +610,31 @@ int parse_arguments(int *argc, const cha return 0; #endif @@ -1418,7 +1418,7 @@ After applying this patch, run these commands for a successful build: default: /* A large opt value means that set_refuse_options() * turned this option off (opt-BASE is its index). */ -@@ -833,6 +866,8 @@ void server_options(char **args,int *arg +@@ -873,6 +906,8 @@ void server_options(char **args,int *arg if (preserve_hard_links) argstr[x++] = 'H'; @@ -1427,9 +1427,9 @@ After applying this patch, run these commands for a successful build: if (preserve_uid) argstr[x++] = 'o'; if (preserve_gid) ---- orig/rsync.c 2004-07-02 18:06:32 +--- orig/rsync.c 2004-07-26 16:06:53 +++ rsync.c 2004-07-03 20:11:58 -@@ -204,6 +204,14 @@ int set_perms(char *fname,struct file_st +@@ -205,6 +205,14 @@ int set_perms(char *fname,struct file_st } #endif @@ -1444,7 +1444,7 @@ After applying this patch, run these commands for a successful build: if (verbose > 1 && flags & PERMS_REPORT) { if (updated) rprintf(FINFO,"%s\n",fname); ---- orig/rsync.h 2004-05-16 07:58:12 +--- orig/rsync.h 2004-07-23 17:16:13 +++ rsync.h 2004-07-03 20:11:58 @@ -538,6 +538,40 @@ static inline int flist_up(struct file_l #include "lib/permstring.h" @@ -1487,9 +1487,9 @@ After applying this patch, run these commands for a successful build: #include "proto.h" /* We have replacement versions of these if they're missing. */ ---- orig/rsync.yo 2004-06-17 06:32:00 +--- orig/rsync.yo 2004-07-24 16:52:10 +++ rsync.yo 2004-07-03 20:11:58 -@@ -296,6 +296,7 @@ verb( +@@ -297,6 +297,7 @@ verb( --safe-links ignore "unsafe" symlinks -H, --hard-links preserve hard links -p, --perms preserve permissions @@ -1497,7 +1497,7 @@ After applying this patch, run these commands for a successful build: -o, --owner preserve owner (root only) -g, --group preserve group -D, --devices preserve devices (root only) -@@ -527,6 +528,11 @@ source file's permissions and the umask +@@ -542,6 +543,11 @@ source file's permissions and the umask other files (including updated files) retain their existing permissions (which is the same behavior as other file-copy utilities, such as cp).