} else {
rprintf(FLOG, "rsync %s %s from %s (%s)\n",
am_sender ? "on" : "to",
---- orig/configure.in 2005-05-22 20:53:34
+--- orig/configure.in 2005-05-28 08:24:57
+++ configure.in 2005-05-23 23:32:21
@@ -94,6 +94,8 @@ AC_ARG_WITH(rsync-path,
[ --with-rsync-path=PATH set default --rsync-path to PATH (default: rsync)],
AC_DEFINE_UNQUOTED(RSYNC_PATH, "$RSYNC_PATH", [location of rsync on remote machine])
-@@ -535,6 +537,14 @@ then
+@@ -537,6 +539,14 @@ then
AC_CHECK_LIB(popt, poptGetContext, , [with_included_popt=yes])
fi
free(file);
if (verbose > 1) {
---- orig/configure.in 2005-05-13 22:24:18
+--- orig/configure.in 2005-05-28 08:24:57
+++ configure.in 2004-08-19 19:53:27
-@@ -478,6 +478,11 @@ if test x"$ac_cv_func_strcasecmp" = x"no
+@@ -480,6 +480,11 @@ if test x"$ac_cv_func_strcasecmp" = x"no
AC_CHECK_LIB(resolv, strcasecmp)
fi
dnl At the moment we don't test for a broken memcmp(), because all we
dnl need to do is test for equality, not comparison, and it seems that
dnl every platform has a memcmp that can do at least that.
-@@ -734,6 +739,77 @@ AC_SUBST(OBJ_RESTORE)
+@@ -736,6 +741,77 @@ AC_SUBST(OBJ_RESTORE)
AC_SUBST(CC_SHOBJ_FLAG)
AC_SUBST(BUILD_POPT)
AC_CONFIG_FILES([Makefile lib/dummy zlib/dummy popt/dummy shconfig])
AC_OUTPUT
---- orig/flist.c 2005-05-14 19:51:15
+--- orig/flist.c 2005-05-28 08:24:57
+++ flist.c 2005-03-16 02:24:11
@@ -974,6 +974,8 @@ static struct file_struct *send_file_nam
file = make_file(fname, flist, f == -2 ? SERVER_FILTERS : ALL_FILTERS);
if (f >= 0) {
/* Now send the uid/gid list. This was introduced in
* protocol version 15 */
---- orig/generator.c 2005-05-19 08:52:42
+--- orig/generator.c 2005-05-22 20:53:34
+++ generator.c 2005-05-12 23:34:00
-@@ -719,6 +719,10 @@ static void recv_generator(char *fname,
+@@ -715,6 +715,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));
#include "proto.h"
/* We have replacement versions of these if they're missing. */
---- orig/rsync.yo 2005-05-10 23:47:12
+--- orig/rsync.yo 2005-05-22 20:53:34
+++ rsync.yo 2004-07-03 20:11:58
@@ -317,6 +317,7 @@ to the detailed description below for a
-H, --hard-links preserve hard links
This patch adds the --append option, which works like a "resume" mode in
an ftp client, appending new data onto the end of the files it updates.
---- orig/generator.c 2005-05-19 08:52:42
+--- orig/generator.c 2005-05-22 20:53:34
+++ generator.c 2005-03-03 02:59:17
@@ -54,6 +54,7 @@ extern int delay_updates;
extern int update_only;
extern int make_backups;
extern int csum_length;
extern int ignore_times;
-@@ -472,35 +473,42 @@ static void generate_and_send_sums(int f
+@@ -468,35 +469,42 @@ static void generate_and_send_sums(int f
OFF_T offset = 0;
sum_sizes_sqroot(&sum, len);
}
if (mapbuf)
-@@ -1009,6 +1017,9 @@ static void recv_generator(char *fname,
+@@ -1005,6 +1013,9 @@ static void recv_generator(char *fname,
return;
}
if (!compare_dest && fnamecmp_type <= FNAMECMP_BASIS_DIR_HIGH)
;
else if (fnamecmp_type == FNAMECMP_FUZZY)
-@@ -1182,7 +1193,7 @@ void generate_files(int f_out, struct fi
+@@ -1178,7 +1189,7 @@ void generate_files(int f_out, struct fi
do_delete_pass(flist);
do_progress = 0;
whole_file = 0;
if (verbose >= 2) {
rprintf(FINFO, "delta-transmission %s\n",
-@@ -1239,6 +1250,8 @@ void generate_files(int f_out, struct fi
+@@ -1235,6 +1246,8 @@ void generate_files(int f_out, struct fi
only_existing = max_size = opt_ignore_existing = 0;
update_only = always_checksum = size_only = 0;
ignore_times = 1;
continue;
}
---- orig/rsync.yo 2005-05-10 23:47:12
+--- orig/rsync.yo 2005-05-22 20:53:34
+++ rsync.yo 2005-02-11 20:36:38
@@ -309,6 +309,7 @@ to the detailed description below for a
--suffix=SUFFIX backup suffix (default ~ w/o --backup-dir)
rprintf(FINFO, "flist->length=%.0f\n",
(double) fptr[i]->length);
rprintf(FINFO, "flist->mode=%#o\n", (int) fptr[i]->mode);
---- orig/flist.c 2005-05-14 19:51:15
+--- orig/flist.c 2005-05-28 08:24:57
+++ flist.c 2005-02-07 21:06:04
@@ -54,6 +54,7 @@ extern int relative_paths;
extern int implied_dirs;
file->length = st.st_size;
file->mode = st.st_mode;
file->uid = st.st_uid;
---- orig/generator.c 2005-05-19 08:52:42
+--- orig/generator.c 2005-05-22 20:53:34
+++ generator.c 2004-11-03 23:02:12
-@@ -379,7 +379,7 @@ static int unchanged_file(char *fn, stru
+@@ -375,7 +375,7 @@ static int unchanged_file(char *fn, stru
if (ignore_times)
return 0;
}
-@@ -853,7 +853,7 @@ static void recv_generator(char *fname,
+@@ -849,7 +849,7 @@ static void recv_generator(char *fname,
}
if (update_only && statret == 0
uid_t uid;
gid_t gid;
mode_t mode;
---- orig/rsync.yo 2005-05-10 23:47:12
+--- orig/rsync.yo 2005-05-22 20:53:34
+++ rsync.yo 2005-01-24 01:57:18
@@ -322,6 +322,7 @@ to the detailed description below for a
-D, --devices preserve devices (root only)
+ deleting = 0;
+ return ret;
+}
---- orig/generator.c 2005-05-19 08:52:42
+--- orig/generator.c 2005-05-22 20:53:34
+++ generator.c 2005-03-11 11:22:38
@@ -86,16 +86,23 @@ extern dev_t filesystem_dev;
extern char *backup_dir;
+ }
+ return 0;
+}
---- orig/flist.c 2005-05-14 19:51:15
+--- orig/flist.c 2005-05-28 08:24:57
+++ flist.c 2004-09-18 01:51:11
@@ -62,6 +62,8 @@ extern struct file_list *the_file_list;
if (files_from && (!am_sender || filesfrom_host)) {
if (filesfrom_host) {
args[ac++] = "--files-from";
---- orig/rsync.yo 2005-05-10 23:47:12
+--- orig/rsync.yo 2005-05-22 20:53:34
+++ rsync.yo 2005-01-24 01:48:43
@@ -322,6 +322,7 @@ to the detailed description below for a
-D, --devices preserve devices (root only)
in each dir's CVS/Entries file as per-dir includes before the dir's list
of excludes taken from the .cvsignore file.
---- exclude.c 7 Apr 2005 18:06:06 -0000 1.115
-+++ exclude.c 7 Apr 2005 18:06:34 -0000
+--- orig/exclude.c 2005-04-28 15:56:50
++++ exclude.c 2005-04-07 18:06:34
@@ -442,6 +442,14 @@ void *push_local_filters(const char *dir
set_filter_dir(dir, dirlen);
}
if (strlcpy(dirbuf + dirbuf_len, ex->pattern,
MAXPATHLEN - dirbuf_len) < MAXPATHLEN - dirbuf_len) {
parse_filter_file(lp, dirbuf, ex->match_flags,
-@@ -958,6 +966,7 @@ void parse_filter_file(struct filter_lis
+@@ -957,6 +965,7 @@ void parse_filter_file(struct filter_lis
char line[MAXPATHLEN+MAX_RULE_PREFIX+1]; /* +1 for trailing slash. */
char *eob = line + sizeof line - 1;
int word_split = mflags & MATCHFLG_WORD_SPLIT;
if (!fname || !*fname)
return;
-@@ -1002,6 +1011,29 @@ void parse_filter_file(struct filter_lis
+@@ -1001,6 +1010,29 @@ void parse_filter_file(struct filter_lis
continue;
break;
}
if (word_split && isspace(ch))
break;
if (eol_nulls? !ch : (ch == '\n' || ch == '\r'))
-@@ -1011,6 +1043,7 @@ void parse_filter_file(struct filter_lis
+@@ -1010,6 +1042,7 @@ void parse_filter_file(struct filter_lis
else
overflow = 1;
}
if (overflow) {
rprintf(FERROR, "discarding over-long filter: %s...\n", line);
s = line;
---- rsync.h 28 Mar 2005 17:08:47 -0000 1.261
-+++ rsync.h 7 Apr 2005 18:06:34 -0000
+--- orig/rsync.h 2005-05-03 17:11:01
++++ rsync.h 2005-04-07 18:06:34
@@ -115,6 +115,7 @@
#define XFLG_FATAL_ERRORS (1<<0)
#define XFLG_OLD_PREFIXES (1<<1)
[Patched update to have context and apply to latest CVS source.]
---- orig/generator.c 2005-05-19 08:52:42
+--- orig/generator.c 2005-05-22 20:53:34
+++ generator.c 2004-11-11 22:15:27
@@ -57,6 +57,7 @@ extern int inplace;
extern int make_backups;
extern int size_only;
extern OFF_T max_size;
extern int io_error;
-@@ -361,6 +362,8 @@ void itemize(struct file_struct *file, i
+@@ -357,6 +358,8 @@ void itemize(struct file_struct *file, i
/* Perform our quick-check heuristic for determining if a file is unchanged. */
static int unchanged_file(char *fn, struct file_struct *file, STRUCT_STAT *st)
{
if (modify_window_set) {
if (asprintf(&arg, "--modify-window=%d", modify_window) < 0)
goto oom;
---- orig/rsync.yo 2005-05-10 23:47:12
+--- orig/rsync.yo 2005-05-22 20:53:34
+++ rsync.yo 2005-02-11 22:49:10
@@ -350,6 +350,7 @@ to the detailed description below for a
--timeout=TIME set I/O timeout in seconds
#define RERR_SIGNAL 20 /* status returned when sent SIGUSR1, SIGINT */
#define RERR_WAITCHILD 21 /* some error returned by waitpid() */
---- orig/flist.c 2005-05-14 19:51:15
+--- orig/flist.c 2005-05-28 08:24:57
+++ flist.c 2005-03-05 00:29:08
@@ -57,6 +57,7 @@ extern int copy_unsafe_links;
extern int protocol_version;
+ if (verbose > 2)
+ rprintf(FINFO, "Converted filename: %s -> %s\n", src, dest);
+}
---- orig/generator.c 2005-05-19 08:52:42
+--- orig/generator.c 2005-05-22 20:53:34
+++ generator.c 2005-03-05 00:29:37
-@@ -587,7 +587,13 @@ static int phase = 0;
+@@ -583,7 +583,13 @@ static int phase = 0;
* start sending checksums.
*
* Note that f_out is set to -1 when doing final directory-permission and
#include "byteorder.h"
#include "lib/mdfour.h"
---- orig/rsync.yo 2005-05-10 23:47:12
+--- orig/rsync.yo 2005-05-22 20:53:34
+++ rsync.yo 2005-02-13 06:58:47
@@ -356,6 +356,7 @@ to the detailed description below for a
--compare-dest=DIR also compare received files relative to DIR
handle relative symlinks properly, and that has not yet been fixed
in this modified version.
---- orig/flist.c 2005-05-14 19:51:15
+--- orig/flist.c 2005-05-28 08:24:57
+++ flist.c 2004-07-16 16:58:04
@@ -45,6 +45,7 @@ extern int filesfrom_fd;
extern int one_file_system;
{"copy-links", 'L', POPT_ARG_NONE, ©_links, 0, 0, 0 },
{"keep-dirlinks", 'K', POPT_ARG_NONE, &keep_dirlinks, 0, 0, 0 },
{"whole-file", 'W', POPT_ARG_VAL, &whole_file, 1, 0, 0 },
---- orig/rsync.yo 2005-05-10 23:47:12
+--- orig/rsync.yo 2005-05-22 20:53:34
+++ rsync.yo 2005-01-28 19:33:40
@@ -311,6 +311,7 @@ to the detailed description below for a
--inplace update destination files in-place
---- orig/generator.c 2005-05-19 08:52:42
+--- orig/generator.c 2005-05-22 20:53:34
+++ generator.c 2005-04-28 16:19:24
@@ -58,6 +58,7 @@ extern int make_backups;
extern int csum_length;
extern OFF_T max_size;
extern int io_error;
extern int allowed_lull;
-@@ -836,6 +837,15 @@ static void recv_generator(char *fname,
+@@ -832,6 +833,15 @@ static void recv_generator(char *fname,
return;
}
if (max_size && file->length > max_size) {
if (verbose > 1) {
if (the_file_list->count == 1)
-@@ -1236,7 +1246,7 @@ void generate_files(int f_out, struct fi
+@@ -1232,7 +1242,7 @@ void generate_files(int f_out, struct fi
phase++;
csum_length = SUM_LENGTH;
if (max_size && am_sender) {
args[ac++] = "--max-size";
args[ac++] = max_size_arg;
---- orig/rsync.yo 2005-05-10 23:47:12
+--- orig/rsync.yo 2005-05-22 20:53:34
+++ rsync.yo 2005-05-06 19:12:35
@@ -342,6 +342,7 @@ to the detailed description below for a
--ignore-errors delete even if there are I/O errors
if (*line == '#') {
/* it's some sort of command that I don't understand */
io_printf(f_out, "@ERROR: Unknown command '%s'\n", line);
---- orig/configure.in 2005-05-13 22:24:18
+--- orig/configure.in 2005-05-28 08:24:57
+++ configure.in 2004-07-03 20:22:28
-@@ -282,6 +282,21 @@ yes
+@@ -284,6 +284,21 @@ yes
AC_SEARCH_LIBS(getaddrinfo, inet6)
fi
rsyserr(FERROR, errno, "failed to set permissions on %s",
full_fname(fname));
return 0;
---- orig/rsyncd.conf.yo 2005-05-10 23:47:13
+--- orig/rsyncd.conf.yo 2005-05-22 20:53:34
+++ rsyncd.conf.yo 2005-03-31 08:28:41
@@ -221,6 +221,70 @@ file transfers to and from that module s
was run as root. This complements the "uid" option. The default is gid -2,
For two systems where one uses /usr/local/bin and the other /local/bin.
---- orig/flist.c 2005-05-14 19:51:15
+--- orig/flist.c 2005-05-28 08:24:57
+++ flist.c 2005-03-05 00:31:42
@@ -57,6 +57,7 @@ extern int copy_unsafe_links;
extern int protocol_version;
if (ignore_errors)
args[ac++] = "--ignore-errors";
---- orig/rsync.yo 2005-05-10 23:47:12
+--- orig/rsync.yo 2005-05-22 20:53:34
+++ rsync.yo 2005-02-22 18:20:24
@@ -304,6 +304,7 @@ to the detailed description below for a
-R, --relative use relative path names
if (backup_dir) {
args[ac++] = "--backup-dir";
args[ac++] = backup_dir;
---- orig/rsync.yo 2005-05-10 23:47:12
+--- orig/rsync.yo 2005-05-22 20:53:34
+++ rsync.yo 2005-02-01 10:46:35
@@ -379,6 +379,8 @@ to the detailed description below for a
--password-file=FILE read password from FILE
--write-batch=FILE write a batched update to FILE
--only-write-batch=FILE like --write-batch but w/o updating dest
--read-batch=FILE read a batched update from FILE
-@@ -1278,6 +1280,19 @@ transfer was too fast, it will wait befo
+@@ -1283,6 +1285,19 @@ transfer was too fast, it will wait befo
result is an average transfer rate equaling the specified limit. A value
of zero specifies no limit.
if (verbose > 1) {
--- orig/configure.in 2004-08-19 19:53:27
+++ configure.in 2005-05-12 22:57:53
-@@ -810,6 +810,30 @@ samba_cv_HAVE_ACL_GET_PERM_NP=yes,samba_
+@@ -812,6 +812,30 @@ samba_cv_HAVE_ACL_GET_PERM_NP=yes,samba_
AC_MSG_RESULT(no)
)
/* Now send the uid/gid list. This was introduced in
--- orig/generator.c 2005-05-12 23:34:00
+++ generator.c 2005-05-12 23:21:08
-@@ -723,6 +723,10 @@ static void recv_generator(char *fname,
+@@ -719,6 +719,10 @@ static void recv_generator(char *fname,
if (f_out == -1)
SET_ACL(fname, file);
#endif