} else {
rprintf(FLOG, "rsync %s %s from %s (%s)\n",
am_sender ? "on" : "to",
---- orig/configure.in 2005-03-16 02:19:29.819770817
+--- orig/configure.in 2005-03-16 02:19:29
+++ configure.in 2004-07-03 20:22:18
@@ -94,6 +94,8 @@ AC_ARG_WITH(rsync-path,
[ --with-rsync-path=PATH set default --rsync-path to PATH (default: rsync)],
FN_LOCAL_BOOL(lp_ignore_errors, ignore_errors)
FN_LOCAL_BOOL(lp_ignore_nonreadable, ignore_nonreadable)
FN_LOCAL_STRING(lp_uid, uid)
---- orig/log.c 2005-03-16 02:19:30.009754284
+--- orig/log.c 2005-03-16 02:19:30
+++ log.c 2004-07-03 20:22:18
@@ -83,7 +83,7 @@ struct {
/*
{
int i;
for (i = 0; rerr_names[i].name; i++) {
---- orig/main.c 2005-03-16 02:19:30.077748367
+--- orig/main.c 2005-03-16 02:19:30
+++ main.c 2004-07-03 20:22:18
@@ -139,6 +139,9 @@ static void report(int f)
if (f == -1 || !am_sender)
return;
}
---- orig/receiver.c 2005-03-16 02:19:30.248733487
+--- orig/receiver.c 2005-03-16 02:19:30
+++ receiver.c 2005-03-05 00:31:00
@@ -618,6 +618,9 @@ int recv_files(int f_in, struct file_lis
if (fd1 != -1)
close(fd1);
---- orig/sender.c 2005-03-16 02:19:30.828683018
+--- orig/sender.c 2005-03-16 02:19:30
+++ sender.c 2005-03-05 00:31:19
@@ -351,6 +351,9 @@ void send_files(struct file_list *flist,
free(file);
if (verbose > 1) {
---- orig/configure.in 2005-03-16 02:19:29.819770817
+--- orig/configure.in 2005-03-16 02:19:29
+++ configure.in 2004-08-19 19:53:27
@@ -467,6 +467,11 @@ if test x"$ac_cv_func_strcasecmp" = x"no
AC_CHECK_LIB(resolv, strcasecmp)
AC_CONFIG_FILES([Makefile lib/dummy zlib/dummy popt/dummy shconfig])
AC_OUTPUT
---- orig/flist.c 2005-03-16 02:19:29.897764030
+--- orig/flist.c 2005-03-16 02:19:29
+++ flist.c 2005-03-16 02:24:11
@@ -970,6 +970,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-03-16 02:19:29.980756807
+--- orig/generator.c 2005-03-17 09:05:21
+++ generator.c 2005-03-11 11:18:22
@@ -712,6 +712,10 @@ static void recv_generator(char *fname,
if (set_perms(fname, file, statret ? NULL : &st, 0)
next;
}
---- orig/options.c 2005-03-16 02:19:30.152741841
+--- orig/options.c 2005-03-17 09:05:21
+++ options.c 2005-02-14 02:46:05
@@ -44,6 +44,7 @@ int keep_dirlinks = 0;
int copy_links = 0;
if (preserve_uid)
argstr[x++] = 'o';
if (preserve_gid)
---- orig/rsync.c 2005-03-16 02:19:30.453715649
+--- orig/rsync.c 2005-03-16 02:19:30
+++ rsync.c 2004-07-03 20:11:58
@@ -137,6 +137,14 @@ int set_perms(char *fname,struct file_st
}
if (verbose > 1 && flags & PERMS_REPORT) {
enum logcode code = daemon_log_format_has_i || dry_run
? FCLIENT : FINFO;
---- orig/rsync.h 2005-03-16 02:19:30.524709471
+--- orig/rsync.h 2005-03-16 02:19:30
+++ rsync.h 2004-07-03 20:11:58
@@ -639,6 +639,40 @@ struct stats {
#include "lib/permstring.h"
#include "proto.h"
/* We have replacement versions of these if they're missing. */
---- orig/rsync.yo 2005-03-16 02:19:30.727691806
+--- orig/rsync.yo 2005-03-16 02:19:30
+++ 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
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-03-16 02:19:29.980756807
+--- orig/generator.c 2005-03-17 09:05:21
+++ generator.c 2005-03-03 02:59:17
@@ -51,6 +51,7 @@ extern int remove_sent_files;
extern int update_only;
matched(f, s, buf, j, -2);
matched(f, s, buf, len, -1);
}
---- orig/options.c 2005-03-16 02:19:30.152741841
+--- orig/options.c 2005-03-17 09:05:21
+++ options.c 2005-03-11 11:21:34
@@ -39,6 +39,7 @@ int make_backups = 0;
**/
args[ac++] = "--inplace";
if (tmpdir) {
---- orig/receiver.c 2005-03-16 02:19:30.248733487
+--- orig/receiver.c 2005-03-16 02:19:30
+++ receiver.c 2005-02-11 20:26:32
@@ -44,6 +44,7 @@ extern int remove_sent_files;
extern int module_id;
continue;
}
---- orig/rsync.yo 2005-03-16 02:19:30.727691806
+--- orig/rsync.yo 2005-03-16 02:19:30
+++ rsync.yo 2005-02-11 20:36:38
@@ -308,6 +308,7 @@ to the detailed description below for a
--suffix=SUFFIX backup suffix (default ~ w/o --backup-dir)
dit(bf(-d, --dirs)) Tell the sending side to include any directories that
are encountered. Unlike bf(--recursive), a directory's contents are not copied
unless the directory was specified on the command-line as either "." or a
---- orig/sender.c 2005-03-16 02:19:30.828683018
+--- orig/sender.c 2005-03-16 02:19:30
+++ sender.c 2005-03-16 02:25:18
@@ -28,6 +28,7 @@ extern int log_format_has_i;
extern int daemon_log_format_has_i;
+ deleting = 0;
+ return ret;
+}
---- orig/generator.c 2005-03-16 02:19:29.980756807
+--- orig/generator.c 2005-03-17 09:05:21
+++ generator.c 2005-03-11 11:22:38
@@ -84,6 +84,9 @@ extern dev_t filesystem_dev;
extern char *backup_dir;
else
ok = do_rmdir(fname) == 0;
if (ok) {
---- orig/options.c 2005-03-16 02:19:30.152741841
+--- orig/options.c 2005-03-17 09:05:21
+++ options.c 2005-03-01 01:25:39
@@ -127,10 +127,14 @@ int no_detach
int write_batch = 0;
+ }
+ return 0;
+}
---- orig/flist.c 2005-03-16 02:19:29.897764030
+--- orig/flist.c 2005-03-16 02:19:29
+++ flist.c 2004-09-18 01:51:11
@@ -62,6 +62,8 @@ extern struct file_list *the_file_list;
file->uid = st.st_uid;
file->gid = st.st_gid;
---- orig/options.c 2005-03-16 02:19:30.152741841
+--- orig/options.c 2005-03-17 09:05:21
+++ options.c 2005-03-01 01:26:56
@@ -140,6 +140,7 @@ char *log_format = NULL;
char *password_file = NULL;
if (files_from && (!am_sender || filesfrom_host)) {
if (filesfrom_host) {
args[ac++] = "--files-from";
---- orig/rsync.yo 2005-03-16 02:19:30.727691806
+--- orig/rsync.yo 2005-03-16 02:19:30
+++ rsync.yo 2005-01-24 01:48:43
@@ -321,6 +321,7 @@ to the detailed description below for a
-D, --devices preserve devices (root only)
[Patched update to have context and apply to latest CVS source.]
---- orig/generator.c 2005-03-16 02:19:29.980756807
+--- orig/generator.c 2005-03-17 09:05:21
+++ generator.c 2004-11-11 22:15:27
@@ -54,6 +54,7 @@ extern int inplace;
extern int make_backups;
if (st->st_size != file->length)
return 0;
---- orig/options.c 2005-03-16 02:19:30.152741841
+--- orig/options.c 2005-03-17 09:05:21
+++ options.c 2005-01-28 19:14:15
@@ -89,6 +89,7 @@ int keep_partial = 0;
int safe_symlinks = 0;
if (modify_window_set) {
if (asprintf(&arg, "--modify-window=%d", modify_window) < 0)
goto oom;
---- orig/rsync.yo 2005-03-16 02:19:30.727691806
+--- orig/rsync.yo 2005-03-16 02:19:30
+++ rsync.yo 2005-02-11 22:49:10
@@ -349,6 +349,7 @@ to the detailed description below for a
--timeout=TIME set I/O timeout in seconds
if (cleanup_fname)
do_unlink(cleanup_fname);
if (code)
---- orig/errcode.h 2005-03-16 02:19:29.823770469
+--- orig/errcode.h 2005-03-16 02:19:29
+++ errcode.h 2004-07-02 21:38:59
@@ -35,6 +35,7 @@
#define RERR_STREAMIO 12 /* error in rsync protocol data stream */
#define RERR_SIGNAL 20 /* status returned when sent SIGUSR1, SIGINT */
#define RERR_WAITCHILD 21 /* some error returned by waitpid() */
---- orig/flist.c 2005-03-16 02:19:29.897764030
+--- orig/flist.c 2005-03-16 02:19:29
+++ 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-03-16 02:19:29.980756807
+--- orig/generator.c 2005-03-17 09:05:21
+++ generator.c 2005-03-05 00:29:37
@@ -581,7 +581,13 @@ static int phase = 0;
* start sending checksums.
static void recv_generator(char *fname, struct file_struct *file, int ndx,
int itemizing, int maybe_PERMS_REPORT,
enum logcode code, int f_out)
---- orig/log.c 2005-03-16 02:19:30.009754284
+--- orig/log.c 2005-03-16 02:19:30
+++ log.c 2004-07-03 20:18:02
@@ -64,6 +64,7 @@ struct {
{ RERR_STREAMIO , "error in rsync protocol data stream" },
{ RERR_SIGNAL , "received SIGUSR1 or SIGINT" },
{ RERR_WAITCHILD , "some error returned by waitpid()" },
{ RERR_MALLOC , "error allocating core memory buffers" },
---- orig/main.c 2005-03-16 02:19:30.077748367
+--- orig/main.c 2005-03-16 02:19:30
+++ main.c 2004-07-22 00:31:47
@@ -363,7 +363,7 @@ static pid_t do_cmd(char *cmd, char *mac
whole_file = 1;
if (dir)
free(dir);
---- orig/options.c 2005-03-16 02:19:30.152741841
+--- orig/options.c 2005-03-17 09:05:21
+++ options.c 2005-02-14 02:50:32
@@ -137,6 +137,7 @@ char *basis_dir[MAX_BASIS_DIRS+1];
char *config_file = NULL;
+
+ return result;
+}
---- orig/util.c 2005-03-11 17:36:35
+--- orig/util.c 2005-03-17 09:05:21
+++ util.c 2004-07-03 20:18:02
@@ -1328,3 +1328,55 @@ uint32 fuzzy_distance(const char *s1, in
This patch from Sami Farin lets you specify --fsync if you want fsync()
to be called on every file we write.
---- orig/options.c 2005-03-16 02:19:30.152741841
+--- orig/options.c 2005-03-17 09:05:21
+++ options.c 2005-01-28 19:30:47
@@ -39,6 +39,7 @@ int make_backups = 0;
**/
if (basis_dir[0] && am_sender) {
/* the server only needs this option if it is not the sender,
* and it may be an older version that doesn't know this
---- orig/receiver.c 2005-03-16 02:19:30.248733487
+--- orig/receiver.c 2005-03-16 02:19:30
+++ receiver.c 2005-02-20 00:17:37
@@ -37,6 +37,7 @@ extern int keep_dirlinks;
extern int preserve_hard_links;
char *partial_dir;
struct filter_list_struct server_filter_list;
---- orig/util.c 2005-03-11 17:36:35
+--- orig/util.c 2005-03-17 09:05:21
+++ util.c 2004-07-03 20:18:13
@@ -33,6 +33,7 @@ extern int module_id;
extern int modify_window;
case '?':
/* Match anything but '/'. */
if (*text == '/')
---- orig/options.c 2005-03-16 02:19:30.152741841
+--- orig/options.c 2005-03-17 09:05:21
+++ options.c 2004-10-14 17:22:51
@@ -100,6 +100,7 @@ int max_delete = 0;
OFF_T max_size = 0;
char *partial_dir;
struct filter_list_struct server_filter_list;
---- orig/util.c 2005-03-11 17:36:35
+--- orig/util.c 2005-03-17 09:05:21
+++ util.c 2004-08-13 16:40:34
@@ -31,6 +31,7 @@ extern int verbose;
extern int dry_run;
+}
+
+#endif
---- orig/options.c 2005-03-16 02:19:30.152741841
+--- orig/options.c 2005-03-17 09:05:21
+++ options.c 2005-03-01 01:27:55
@@ -140,6 +140,7 @@ char *log_format = NULL;
char *password_file = NULL;
if (files_from && (!am_sender || filesfrom_host)) {
if (filesfrom_host) {
args[ac++] = "--files-from";
---- orig/receiver.c 2005-03-16 02:19:30.248733487
+--- orig/receiver.c 2005-03-16 02:19:30
+++ receiver.c 2005-01-15 21:29:13
@@ -51,6 +51,7 @@ extern int delay_updates;
extern struct stats stats;
if (!log_before_transfer)
log_item(file, &initial_stats, iflags, NULL);
---- orig/rsync.c 2005-03-16 02:19:30.453715649
+--- orig/rsync.c 2005-03-16 02:19:30
+++ rsync.c 2005-02-21 11:04:36
@@ -38,6 +38,7 @@ extern int inplace;
extern int keep_dirlinks;
if (ret < 0) {
rsyserr(FERROR, errno, "%s %s -> \"%s\"",
ret == -2 ? "copy" : "rename",
---- orig/rsync.h 2005-03-16 02:19:30.524709471
+--- orig/rsync.h 2005-03-16 02:19:30
+++ rsync.h 2004-07-03 20:20:15
@@ -632,6 +632,14 @@ struct stats {
int current_file_index;
#include "byteorder.h"
#include "lib/mdfour.h"
---- orig/rsync.yo 2005-03-16 02:19:30.727691806
+--- orig/rsync.yo 2005-03-16 02:19:30
+++ rsync.yo 2005-02-13 06:58:47
@@ -355,6 +355,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-03-16 02:19:29.897764030
+--- orig/flist.c 2005-03-16 02:19:29
+++ flist.c 2004-07-16 16:58:04
@@ -45,6 +45,7 @@ extern int filesfrom_fd;
extern int one_file_system;
#else
linkname_len = 0;
#endif
---- orig/options.c 2005-03-16 02:19:30.152741841
+--- orig/options.c 2005-03-17 09:05:21
+++ options.c 2005-01-28 19:33:24
@@ -43,6 +43,7 @@ int archive_mode = 0;
int keep_dirlinks = 0;
{"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-03-16 02:19:30.727691806
+--- orig/rsync.yo 2005-03-16 02:19:30
+++ rsync.yo 2005-01-28 19:33:40
@@ -310,6 +310,7 @@ to the detailed description below for a
--inplace update destination files in-place
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-03-16 02:19:29.819770817
+--- orig/configure.in 2005-03-16 02:19:29
+++ configure.in 2004-07-03 20:22:28
@@ -271,6 +271,21 @@ yes
AC_SEARCH_LIBS(getaddrinfo, inet6)
AC_MSG_CHECKING([whether to call shutdown on all sockets])
case $host_os in
*cygwin* ) AC_MSG_RESULT(yes)
---- orig/options.c 2005-03-16 02:19:30.152741841
+--- orig/options.c 2005-03-17 09:05:21
+++ options.c 2005-03-01 01:34:42
@@ -157,6 +157,14 @@ int log_format_has_o_or_i = 0;
int always_checksum = 0;
if ((p = strchr(s, '/')) != NULL) {
hostlen = p - s;
path = p + 1;
---- orig/rsync.h 2005-03-16 02:19:30.524709471
+--- orig/rsync.h 2005-03-16 02:19:30
+++ rsync.h 2004-10-08 21:01:33
@@ -32,6 +32,7 @@
+ preserve_gid = 2;
+ }
}
---- orig/options.c 2005-03-16 02:19:30.152741841
+--- orig/options.c 2005-03-17 09:05:21
+++ options.c 2004-09-09 01:59:08
@@ -404,8 +404,8 @@ static struct poptOption long_options[]
{"no-whole-file", 0, POPT_ARG_VAL, &whole_file, 0, 0, 0 },
if (preserve_devices)
argstr[x++] = 'D';
if (preserve_times)
---- orig/rsync.c 2005-03-16 02:19:30.453715649
+--- orig/rsync.c 2005-03-16 02:19:30
+++ rsync.c 2005-02-01 10:46:04
@@ -27,7 +27,6 @@ extern int dry_run;
extern int daemon_log_format_has_i;
For two systems where one uses /usr/local/bin and the other /local/bin.
---- orig/flist.c 2005-03-16 02:19:29.897764030
+--- orig/flist.c 2005-03-16 02:19:29
+++ flist.c 2005-03-05 00:31:42
@@ -57,6 +57,7 @@ extern int copy_unsafe_links;
extern int protocol_version;
while (1) {
struct file_struct *file;
---- orig/options.c 2005-03-16 02:19:30.152741841
+--- orig/options.c 2005-03-17 09:05:21
+++ options.c 2005-03-01 01:37:22
@@ -81,6 +81,7 @@ char *filesfrom_host = NULL;
int eol_nulls = 0;
if (ignore_errors)
args[ac++] = "--ignore-errors";
---- orig/rsync.yo 2005-03-16 02:19:30.727691806
+--- orig/rsync.yo 2005-03-16 02:19:30
+++ rsync.yo 2005-02-22 18:20:24
@@ -303,6 +303,7 @@ to the detailed description below for a
-R, --relative use relative path names
if (t - last_io >= io_timeout) {
if (!am_server && !am_daemon) {
rprintf(FERROR, "io timeout after %d seconds -- exiting\n",
---- orig/options.c 2005-03-16 02:19:30.152741841
+--- orig/options.c 2005-03-17 09:05:21
+++ options.c 2005-01-28 19:35:23
@@ -105,6 +105,7 @@ int checksum_seed = 0;
int inplace = 0;
if (backup_dir) {
args[ac++] = "--backup-dir";
args[ac++] = backup_dir;
---- orig/rsync.yo 2005-03-16 02:19:30.727691806
+--- orig/rsync.yo 2005-03-16 02:19:30
+++ rsync.yo 2005-02-01 10:46:35
@@ -378,6 +378,8 @@ to the detailed description below for a
--password-file=FILE read password from FILE
dit(bf(--write-batch=FILE)) Record a file that can later be applied to
another identical destination with bf(--read-batch). See the "BATCH MODE"
section for details.
---- orig/util.c 2005-03-11 17:36:35
+--- orig/util.c 2005-03-17 09:05:21
+++ util.c 2004-07-03 20:23:22
@@ -126,6 +126,132 @@ void overflow(char *str)
exit_cleanup(RERR_MALLOC);