automatically generates unique IDs). Defaults to True.
---- Makefile.in 15 May 2004 00:48:11 -0000 1.101
-+++ Makefile.in 30 Jun 2004 00:03:29 -0000
+--- orig/Makefile.in 2004-05-15 00:53:53
++++ Makefile.in 2004-07-03 20:22:18
@@ -32,7 +32,7 @@ ZLIBOBJ=zlib/deflate.o zlib/infblock.o z
zlib/inflate.o zlib/inftrees.o zlib/infutil.o zlib/trees.o \
zlib/zutil.o zlib/adler32.o
OBJS2=options.o flist.o io.o compat.o hlink.o token.o uidlist.o socket.o \
fileio.o batch.o clientname.o
OBJS3=progress.o pipe.o
---- cleanup.c 13 May 2004 07:08:18 -0000 1.22
-+++ cleanup.c 30 Jun 2004 00:03:29 -0000
-@@ -140,7 +140,12 @@ void _exit_cleanup(int code, const char
+--- orig/cleanup.c 2004-07-02 18:11:26
++++ cleanup.c 2004-07-03 20:22:18
+@@ -141,8 +141,12 @@ void _exit_cleanup(int code, const char
code = RERR_VANISHED;
}
-- if (code) log_exit(code, file, line);
+- if (code)
+ if (code) {
-+ log_exit(code, file, line);
+ log_exit(code, file, line);
+#ifdef HAVE_LIBODBC
+ db_log_exit(code,file,line);
+#endif
if (verbose > 2) {
rprintf(FINFO,"_exit_cleanup(code=%d, file=%s, line=%d): about to call exit(%d)\n",
---- clientserver.c 13 Jun 2004 14:18:48 -0000 1.127
-+++ clientserver.c 30 Jun 2004 00:03:29 -0000
+--- orig/clientserver.c 2004-06-18 15:59:19
++++ clientserver.c 2004-07-03 20:22:18
@@ -315,6 +315,9 @@ static int rsync_module(int f_in, int f_
exclude_path_prefix = NULL;
} else {
rprintf(FLOG, "rsync %s %s from %s (%s)\n",
am_sender ? "on" : "to",
---- configure.in 30 Apr 2004 18:03:33 -0000 1.196
-+++ configure.in 30 Jun 2004 00:03:29 -0000
+--- orig/configure.in 2004-04-30 18:04:07
++++ 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)],
[ RSYNC_PATH="$with_rsync_path" ],
AC_MSG_CHECKING([whether to use included libpopt])
if test x"$with_included_popt" = x"yes"
then
---- /dev/null 1 Jan 1970 00:00:00 -0000
-+++ dblog-tables-mysql.sql 30 Jun 2004 00:03:29 -0000
+--- orig/dblog-tables-mysql.sql 2004-07-02 21:35:58
++++ dblog-tables-mysql.sql 2004-07-02 21:35:58
@@ -0,0 +1,43 @@
+drop table transfer;
+drop table exit;
+ Primary Key (id),
+ foreign key (session_id) references session (id)
+);
---- /dev/null 1 Jan 1970 00:00:00 -0000
-+++ dblog-tables-postgresql.sql 30 Jun 2004 00:03:29 -0000
+--- orig/dblog-tables-postgresql.sql 2004-07-02 21:35:58
++++ dblog-tables-postgresql.sql 2004-07-02 21:35:58
@@ -0,0 +1,45 @@
+drop table transfer;
+drop table exit;
+ Primary Key (id),
+ foreign key (session_id) references session (id)
+);
---- /dev/null 1 Jan 1970 00:00:00 -0000
-+++ dblog.c 30 Jun 2004 00:03:30 -0000
+--- orig/dblog.c 2004-07-02 21:35:58
++++ dblog.c 2004-07-02 21:35:58
@@ -0,0 +1,352 @@
+/*
+ * ODBC Database logging functions
+ rprintf(FERROR,"Error at db_log_exit: Not connected to database!\n");
+ }
+}
---- loadparm.c 19 May 2004 22:19:19 -0000 1.51
-+++ loadparm.c 30 Jun 2004 00:03:30 -0000
+--- orig/loadparm.c 2004-05-21 08:43:10
++++ loadparm.c 2004-07-03 20:22:18
@@ -123,6 +123,17 @@ typedef struct
BOOL list;
BOOL use_chroot;
FN_LOCAL_BOOL(lp_ignore_errors, ignore_errors)
FN_LOCAL_BOOL(lp_ignore_nonreadable, ignore_nonreadable)
FN_LOCAL_STRING(lp_uid, uid)
---- log.c 7 Jun 2004 22:51:14 -0000 1.74
-+++ log.c 30 Jun 2004 00:03:30 -0000
+--- orig/log.c 2004-06-09 15:34:38
++++ log.c 2004-07-03 20:22:18
@@ -75,7 +75,7 @@ struct {
/*
* Map from rsync error code to name, or return NULL.
{
int i;
for (i = 0; rerr_names[i].name; i++) {
---- main.c 28 Jun 2004 17:45:40 -0000 1.201
-+++ main.c 30 Jun 2004 00:03:30 -0000
+--- orig/main.c 2004-06-30 07:24:30
++++ main.c 2004-07-03 20:22:18
@@ -121,6 +121,9 @@ static void report(int f)
if (am_daemon) {
if (f == -1 || !am_sender)
return;
}
---- receiver.c 29 Jun 2004 15:12:01 -0000 1.83
-+++ receiver.c 30 Jun 2004 00:03:30 -0000
-@@ -463,7 +463,9 @@ int recv_files(int f_in,struct file_list
+--- orig/receiver.c 2004-07-02 18:23:01
++++ receiver.c 2004-07-03 20:22:18
+@@ -460,7 +460,9 @@ int recv_files(int f_in,struct file_list
recv_ok = receive_data(f_in,mapbuf,fd2,fname,file->length);
log_recv(file, &initial_stats);
-
+#ifdef HAVE_LIBODBC
-+ db_log_transfer(file, &initial_stats,"receive");
++ db_log_transfer(file, &initial_stats, "receive");
+#endif
- if (mapbuf) unmap_file(mapbuf);
- if (fd1 != -1) {
- close(fd1);
---- sender.c 18 Jun 2004 16:55:12 -0000 1.41
-+++ sender.c 30 Jun 2004 00:03:30 -0000
+ if (mapbuf)
+ unmap_file(mapbuf);
+ if (fd1 != -1)
+--- orig/sender.c 2004-06-18 16:55:00
++++ sender.c 2004-07-03 20:22:18
@@ -281,6 +281,9 @@ void send_files(struct file_list *flist,
} else { /* not read_batch */
match_sums(f_out, s, mbuf, st.st_size);
make
---- Makefile.in 15 May 2004 00:48:11 -0000 1.101
-+++ Makefile.in 30 Jun 2004 00:04:05 -0000
+--- orig/Makefile.in 2004-05-15 00:53:53
++++ Makefile.in 2004-07-03 20:11:58
@@ -25,7 +25,7 @@ VERSION=@VERSION@
.SUFFIXES:
.SUFFIXES: .c .o
OBJS3=progress.o pipe.o
DAEMON_OBJ = params.o loadparm.o clientserver.o access.o connection.o authenticate.o
popt_OBJS=popt/findme.o popt/popt.o popt/poptconfig.o \
---- /dev/null 1 Jan 1970 00:00:00 -0000
-+++ acls.c 30 Jun 2004 00:04:05 -0000
+--- orig/acls.c 2004-06-30 00:04:05
++++ acls.c 2004-06-30 00:04:05
@@ -0,0 +1,1119 @@
+/* -*- c-file-style: "linux" -*-
+ Copyright (C) Andrew Tridgell 1996
+
+
+#endif /* SUPPORT_ACLS */
---- backup.c 10 Jun 2004 16:43:52 -0000 1.32
-+++ backup.c 30 Jun 2004 00:04:05 -0000
+--- orig/backup.c 2004-06-11 07:47:42
++++ backup.c 2004-07-03 20:11:58
@@ -105,6 +105,7 @@ static int make_bak_dir(char *fullpath)
} else {
do_lchown(fullpath, st.st_uid, st.st_gid);
free(file);
if (verbose > 1)
---- configure.in 30 Apr 2004 18:03:33 -0000 1.196
-+++ configure.in 30 Jun 2004 00:04:05 -0000
+--- orig/configure.in 2004-04-30 18:04:07
++++ 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)
fi
AC_CONFIG_FILES([Makefile lib/dummy zlib/dummy popt/dummy shconfig])
AC_OUTPUT
---- flist.c 18 Jun 2004 16:29:21 -0000 1.231
-+++ flist.c 30 Jun 2004 00:04:06 -0000
+--- orig/flist.c 2004-06-18 16:23:07
++++ flist.c 2004-07-03 20:11:58
@@ -945,6 +945,8 @@ void send_file_name(int f, struct file_l
if (!file)
if (f != -1) {
/* Now send the uid/gid list. This was introduced in
* protocol version 15 */
---- generator.c 29 Jun 2004 19:19:00 -0000 1.92
-+++ generator.c 30 Jun 2004 00:04:06 -0000
+--- orig/generator.c 2004-06-30 07:24:45
++++ generator.c 2004-07-03 20:11:58
@@ -343,6 +343,10 @@ static void recv_generator(char *fname,
if (set_perms(fname, file, statret ? NULL : &st, 0)
&& verbose && f_out != -1)
return;
}
---- mkproto.awk 1 Jan 2004 21:10:50 -0000 1.6
-+++ mkproto.awk 30 Jun 2004 00:04:06 -0000
+--- orig/mkproto.awk 2004-01-01 21:10:50
++++ mkproto.awk 2004-06-30 00:04:06
@@ -58,7 +58,7 @@ BEGIN {
next;
}
next;
}
---- options.c 20 Jun 2004 19:47:05 -0000 1.157
-+++ options.c 30 Jun 2004 00:04:06 -0000
+--- orig/options.c 2004-06-20 19:30:00
++++ options.c 2004-07-03 20:11:58
@@ -43,6 +43,7 @@ int keep_dirlinks = 0;
int copy_links = 0;
int preserve_links = 0;
if (preserve_uid)
argstr[x++] = 'o';
if (preserve_gid)
---- rsync.c 11 Jun 2004 07:40:45 -0000 1.141
-+++ rsync.c 30 Jun 2004 00:04:06 -0000
+--- orig/rsync.c 2004-07-02 18:06:32
++++ rsync.c 2004-07-03 20:11:58
@@ -204,6 +204,14 @@ int set_perms(char *fname,struct file_st
}
#endif
if (verbose > 1 && flags & PERMS_REPORT) {
if (updated)
rprintf(FINFO,"%s\n",fname);
---- rsync.h 16 May 2004 07:28:24 -0000 1.204
-+++ rsync.h 30 Jun 2004 00:04:06 -0000
+--- orig/rsync.h 2004-05-16 07:58:12
++++ rsync.h 2004-07-03 20:11:58
@@ -538,6 +538,40 @@ static inline int flist_up(struct file_l
#include "lib/permstring.h"
#include "lib/addrinfo.h"
#include "proto.h"
/* We have replacement versions of these if they're missing. */
---- rsync.yo 5 Jun 2004 16:16:30 -0000 1.171
-+++ rsync.yo 30 Jun 2004 00:04:07 -0000
+--- orig/rsync.yo 2004-06-17 06:32:00
++++ rsync.yo 2004-07-03 20:11:58
@@ -296,6 +296,7 @@ verb(
--safe-links ignore "unsafe" symlinks
-H, --hard-links preserve hard links
dit(bf(-o, --owner)) This option causes rsync to set the owner of the
destination file to be the same as the source file. On most systems,
only the super-user can set file ownership. By default, the preservation
---- /dev/null 1 Jan 1970 00:00:00 -0000
-+++ smb_acls.h 30 Jun 2004 00:04:07 -0000
+--- orig/smb_acls.h 2004-06-30 00:04:07
++++ smb_acls.h 2004-06-30 00:04:07
@@ -0,0 +1,277 @@
+/*
+ Unix SMB/Netbios implementation.
+
+#endif /* No ACLs. */
+#endif /* _SMB_ACLS_H */
---- /dev/null 1 Jan 1970 00:00:00 -0000
-+++ sysacls.c 30 Jun 2004 00:04:08 -0000
+--- orig/sysacls.c 2004-06-30 00:04:08
++++ sysacls.c 2004-06-30 00:04:08
@@ -0,0 +1,3117 @@
+/*
+ Unix SMB/Netbios implementation.
+}
+
+#endif /* No ACLs. */
---- uidlist.c 28 Apr 2004 17:31:31 -0000 1.24
-+++ uidlist.c 30 Jun 2004 00:04:08 -0000
+--- orig/uidlist.c 2004-04-29 19:37:25
++++ uidlist.c 2004-07-03 20:11:58
@@ -34,6 +34,7 @@
extern int verbose;
extern int preserve_uid;
make proto
---- batch.c 15 May 2004 19:31:10 -0000 1.32
-+++ batch.c 30 Jun 2004 00:06:21 -0000
+--- orig/batch.c 2004-05-15 20:10:13
++++ batch.c 2004-07-03 20:15:41
@@ -335,6 +335,8 @@ void show_flist(int index, struct file_s
rprintf(FINFO, "flist->flags=%#x\n", fptr[i]->flags);
rprintf(FINFO, "flist->modtime=%#lx\n",
rprintf(FINFO, "flist->length=%.0f\n",
(double) fptr[i]->length);
rprintf(FINFO, "flist->mode=%#o\n", (int) fptr[i]->mode);
---- flist.c 18 Jun 2004 16:29:21 -0000 1.231
-+++ flist.c 30 Jun 2004 00:06:21 -0000
+--- orig/flist.c 2004-06-18 16:23:07
++++ flist.c 2004-07-03 20:15:41
@@ -58,6 +58,7 @@ extern int relative_paths;
extern int implied_dirs;
extern int copy_links;
file->length = st.st_size;
file->mode = st.st_mode;
file->uid = st.st_uid;
---- generator.c 29 Jun 2004 19:19:00 -0000 1.92
-+++ generator.c 30 Jun 2004 00:06:21 -0000
+--- orig/generator.c 2004-06-30 07:24:45
++++ generator.c 2004-07-03 20:15:41
@@ -99,7 +99,7 @@ static int skip_file(char *fname, struct
if (ignore_times)
return 0;
if (verbose > 1)
rprintf(FINFO,"%s is newer\n",fname);
return;
---- options.c 20 Jun 2004 19:47:05 -0000 1.157
-+++ options.c 30 Jun 2004 00:06:21 -0000
+--- orig/options.c 2004-06-20 19:30:00
++++ options.c 2004-07-03 20:15:41
@@ -48,6 +48,7 @@ int preserve_devices = 0;
int preserve_uid = 0;
int preserve_gid = 0;
if (preserve_perms)
argstr[x++] = 'p';
if (recurse)
---- rsync.c 11 Jun 2004 07:40:45 -0000 1.141
-+++ rsync.c 30 Jun 2004 00:06:22 -0000
+--- orig/rsync.c 2004-07-02 18:06:32
++++ rsync.c 2004-07-03 20:15:41
@@ -25,6 +25,7 @@
extern int verbose;
extern int dry_run;
}
change_uid = am_root && preserve_uid && st->st_uid != file->uid;
---- rsync.h 16 May 2004 07:28:24 -0000 1.204
-+++ rsync.h 30 Jun 2004 00:06:22 -0000
+--- orig/rsync.h 2004-05-16 07:58:12
++++ rsync.h 2004-07-03 20:15:41
@@ -54,6 +54,7 @@
#define XMIT_HAS_IDEV_DATA (1<<9)
#define XMIT_SAME_DEV (1<<10)
uid_t uid;
gid_t gid;
mode_t mode;
---- rsync.yo 5 Jun 2004 16:16:30 -0000 1.171
-+++ rsync.yo 30 Jun 2004 00:06:23 -0000
+--- orig/rsync.yo 2004-06-17 06:32:00
++++ rsync.yo 2004-07-03 20:15:41
@@ -300,6 +300,7 @@ verb(
-g, --group preserve group
-D, --devices preserve devices (root only)
dit(bf(-n, --dry-run)) This tells rsync to not do any file transfers,
instead it will just report the actions it would have taken.
---- tls.c 15 May 2004 19:09:42 -0000 1.20
-+++ tls.c 30 Jun 2004 00:06:23 -0000
+--- orig/testsuite/copy-atimes.test 2004-06-30 00:06:23
++++ testsuite/copy-atimes.test 2004-06-30 00:06:23
+@@ -0,0 +1,19 @@
++#! /bin/sh
++
++# Test rsync copying atimes
++
++. "$suitedir/rsync.fns"
++
++set -x
++
++mkdir "$fromdir"
++
++touch "$fromdir/foo"
++touch -a -t 200102031717.42 "$fromdir/foo"
++
++TLS_ARGS=--atime
++
++checkit "$RSYNC -rtAgvvv \"$fromdir/\" \"$todir/\"" "$fromdir" "$todir"
++
++# The script would have aborted on error, so getting here means we've won.
++exit 0
+--- orig/testsuite/rsync.fns 2004-06-28 21:08:14
++++ testsuite/rsync.fns 2004-07-03 20:15:41
+@@ -50,7 +50,7 @@ printmsg() {
+
+
+ rsync_ls_lR() {
+- find "$@" -print | sort | xargs "$TOOLDIR/tls"
++ find "$@" -print | sort | xargs "$TOOLDIR/tls" $TLS_ARGS
+ }
+
+ rsync_getgroups() {
+@@ -150,6 +150,8 @@ checkit() {
+ # We can just write everything to stdout/stderr, because the
+ # wrapper hides it unless there is a problem.
+
++ ( cd "$2" && rsync_ls_lR . ) > "$tmpdir/ls-from"
++
+ echo "Running: \"$1\""
+ eval "$1"
+ status=$?
+@@ -158,6 +160,12 @@ checkit() {
+ fi
+
+ echo "-------------"
++ echo "check how the directory listings compare with diff:"
++ echo ""
++ ( cd "$3" && rsync_ls_lR . ) > "$tmpdir/ls-to"
++ diff $diffopt "$tmpdir/ls-from" "$tmpdir/ls-to" || failed=YES
++
++ echo "-------------"
+ echo "check how the files compare with diff:"
+ echo ""
+ for f in `cd "$2"; find . -type f -print `
+@@ -165,12 +173,6 @@ checkit() {
+ diff $diffopt "$2"/"$f" "$3"/"$f" || failed=YES
+ done
+
+- echo "-------------"
+- echo "check how the directory listings compare with diff:"
+- echo ""
+- ( cd "$2" && rsync_ls_lR . ) > "$tmpdir/ls-from"
+- ( cd "$3" && rsync_ls_lR . ) > "$tmpdir/ls-to"
+- diff $diffopt "$tmpdir/ls-from" "$tmpdir/ls-to" || failed=YES
+ if [ -z "$failed" ] ; then
+ return 0
+ else
+--- orig/tls.c 2004-05-15 20:10:13
++++ tls.c 2004-07-03 20:15:41
@@ -39,6 +39,7 @@
return 0;
}
---- util.c 9 Jun 2004 21:51:07 -0000 1.149
-+++ util.c 30 Jun 2004 00:06:23 -0000
+--- orig/util.c 2004-06-09 21:54:47
++++ util.c 2004-07-03 20:15:41
@@ -127,31 +127,39 @@ void overflow(char *str)
{
if (file2 > file1) {
if (file2 - file1 <= modify_window)
---- /dev/null 1 Jan 1970 00:00:00 -0000
-+++ testsuite/copy-atimes.test 30 Jun 2004 00:06:23 -0000
-@@ -0,0 +1,19 @@
-+#! /bin/sh
-+
-+# Test rsync copying atimes
-+
-+. "$suitedir/rsync.fns"
-+
-+set -x
-+
-+mkdir "$fromdir"
-+
-+touch "$fromdir/foo"
-+touch -a -t 200102031717.42 "$fromdir/foo"
-+
-+TLS_ARGS=--atime
-+
-+checkit "$RSYNC -rtAgvvv \"$fromdir/\" \"$todir/\"" "$fromdir" "$todir"
-+
-+# The script would have aborted on error, so getting here means we've won.
-+exit 0
---- testsuite/rsync.fns 24 Jun 2004 04:46:02 -0000 1.61
-+++ testsuite/rsync.fns 30 Jun 2004 00:06:23 -0000
-@@ -50,7 +50,7 @@ printmsg() {
-
-
- rsync_ls_lR() {
-- find "$@" -print | sort | xargs "$TOOLDIR/tls"
-+ find "$@" -print | sort | xargs "$TOOLDIR/tls" $TLS_ARGS
- }
-
- rsync_getgroups() {
-@@ -150,6 +150,8 @@ checkit() {
- # We can just write everything to stdout/stderr, because the
- # wrapper hides it unless there is a problem.
-
-+ ( cd "$2" && rsync_ls_lR . ) > "$tmpdir/ls-from"
-+
- echo "Running: \"$1\""
- eval "$1"
- status=$?
-@@ -158,6 +160,12 @@ checkit() {
- fi
-
- echo "-------------"
-+ echo "check how the directory listings compare with diff:"
-+ echo ""
-+ ( cd "$3" && rsync_ls_lR . ) > "$tmpdir/ls-to"
-+ diff $diffopt "$tmpdir/ls-from" "$tmpdir/ls-to" || failed=YES
-+
-+ echo "-------------"
- echo "check how the files compare with diff:"
- echo ""
- for f in `cd "$2"; find . -type f -print `
-@@ -165,12 +173,6 @@ checkit() {
- diff $diffopt "$2"/"$f" "$3"/"$f" || failed=YES
- done
-
-- echo "-------------"
-- echo "check how the directory listings compare with diff:"
-- echo ""
-- ( cd "$2" && rsync_ls_lR . ) > "$tmpdir/ls-from"
-- ( cd "$3" && rsync_ls_lR . ) > "$tmpdir/ls-to"
-- diff $diffopt "$tmpdir/ls-from" "$tmpdir/ls-to" || failed=YES
- if [ -z "$failed" ] ; then
- return 0
- else
make proto
---- Makefile.in 15 May 2004 00:48:11 -0000 1.101
-+++ Makefile.in 18 Jun 2004 17:22:08 -0000
+--- orig/Makefile.in 2004-05-15 00:53:53
++++ Makefile.in 2004-07-03 20:13:41
@@ -34,7 +34,7 @@ ZLIBOBJ=zlib/deflate.o zlib/infblock.o z
OBJS1=rsync.o generator.o receiver.o cleanup.o sender.o exclude.o util.o \
main.o checksum.o match.o syscall.o log.o backup.o
OBJS3=progress.o pipe.o
DAEMON_OBJ = params.o loadparm.o clientserver.o access.o connection.o authenticate.o
popt_OBJS=popt/findme.o popt/popt.o popt/poptconfig.o \
---- /dev/null 1 Jan 1970 00:00:00 -0000
-+++ chmod.c 18 Jun 2004 17:22:08 -0000
+--- orig/chmod.c 2004-06-18 17:22:08
++++ chmod.c 2004-06-18 17:22:08
@@ -0,0 +1,184 @@
+#include "rsync.h"
+
+ }
+ return 0;
+}
---- flist.c 18 Jun 2004 16:29:21 -0000 1.231
-+++ flist.c 18 Jun 2004 17:22:08 -0000
+--- orig/flist.c 2004-06-18 16:23:07
++++ flist.c 2004-07-03 20:13:41
@@ -33,6 +33,7 @@ extern int verbose;
extern int do_progress;
extern int am_root;
file->uid = st.st_uid;
file->gid = st.st_gid;
---- options.c 7 Jun 2004 22:05:22 -0000 1.156
-+++ options.c 18 Jun 2004 17:22:08 -0000
+--- orig/options.c 2004-06-20 19:30:00
++++ options.c 2004-07-03 20:13:41
@@ -124,6 +124,7 @@ char *log_format = NULL;
char *password_file = NULL;
char *rsync_path = RSYNC_PATH;
if (files_from && (!am_sender || remote_filesfrom_file)) {
if (remote_filesfrom_file) {
args[ac++] = "--files-from";
---- rsync.yo 5 Jun 2004 16:16:30 -0000 1.171
-+++ rsync.yo 18 Jun 2004 17:22:09 -0000
+--- orig/rsync.yo 2004-06-17 06:32:00
++++ rsync.yo 2004-07-03 20:13:41
@@ -300,6 +300,7 @@ verb(
-g, --group preserve group
-D, --devices preserve devices (root only)
dit(bf(-n, --dry-run)) This tells rsync to not do any file transfers,
instead it will just report the actions it would have taken.
---- /dev/null 1 Jan 1970 00:00:00 -0000
-+++ testsuite/chmod.test 18 Jun 2004 17:22:09 -0000
+--- orig/testsuite/chmod.test 2004-06-18 17:22:09
++++ testsuite/chmod.test 2004-06-18 17:22:09
@@ -0,0 +1,43 @@
+#! /bin/sh
+
[Patched update to have context and apply to latest CVS source.]
---- generator.c 23 Jun 2004 16:51:21 -0000 1.89
-+++ generator.c 23 Jun 2004 17:18:42 -0000
+--- orig/generator.c 2004-06-30 07:24:45
++++ generator.c 2004-07-03 20:16:51
@@ -39,6 +39,7 @@ extern int opt_ignore_existing;
extern int csum_length;
extern int ignore_times;
if (st->st_size != file->length)
return 0;
if (link_dest) {
---- options.c 20 Jun 2004 19:47:05 -0000 1.157
-+++ options.c 23 Jun 2004 17:18:43 -0000
+--- orig/options.c 2004-06-20 19:30:00
++++ options.c 2004-07-03 20:16:51
@@ -84,6 +84,7 @@ int keep_partial = 0;
int safe_symlinks = 0;
int copy_unsafe_links = 0;
if (modify_window_set) {
if (asprintf(&arg, "--modify-window=%d", modify_window) < 0)
goto oom;
---- rsync.yo 5 Jun 2004 16:16:30 -0000 1.171
-+++ rsync.yo 23 Jun 2004 17:18:44 -0000
+--- orig/rsync.yo 2004-06-17 06:32:00
++++ rsync.yo 2004-07-03 20:16:51
@@ -321,6 +321,7 @@ verb(
--timeout=TIME set I/O timeout in seconds
-I, --ignore-times turn off mod time & file size quick check
---- options.c 7 Jun 2004 22:05:22 -0000 1.156
-+++ options.c 18 Jun 2004 17:25:12 -0000
+--- orig/options.c 2004-06-20 19:30:00
++++ options.c 2004-07-03 20:17:33
@@ -48,6 +48,7 @@ int preserve_devices = 0;
int preserve_uid = 0;
int preserve_gid = 0;
if (preserve_perms)
argstr[x++] = 'p';
if (recurse)
---- rsync.c 11 Jun 2004 07:40:45 -0000 1.141
-+++ rsync.c 18 Jun 2004 17:25:12 -0000
+--- orig/rsync.c 2004-07-02 18:06:32
++++ rsync.c 2004-07-03 20:17:33
@@ -25,6 +25,7 @@
extern int verbose;
extern int dry_run;
rsyserr(FERROR, errno, "failed to set times on %s",
full_fname(fname));
return 0;
---- rsync.yo 5 Jun 2004 16:16:30 -0000 1.171
-+++ rsync.yo 18 Jun 2004 17:25:13 -0000
+--- orig/rsync.yo 2004-06-17 06:32:00
++++ rsync.yo 2004-07-03 20:17:33
@@ -299,7 +299,8 @@ verb(
-o, --owner preserve owner (root only)
-g, --group preserve group
dit(bf(-n, --dry-run)) This tells rsync to not do any file transfers,
instead it will just report the actions it would have taken.
---- testsuite/chgrp.test 21 May 2004 10:06:09 -0000 1.12
-+++ testsuite/chgrp.test 18 Jun 2004 17:25:13 -0000
+--- orig/testsuite/chgrp.test 2004-05-21 23:56:27
++++ testsuite/chgrp.test 2004-07-03 20:17:33
@@ -26,7 +26,7 @@ do
done
sleep 2
# The script would have aborted on error, so getting here means we've won.
exit 0
---- testsuite/chown.test 18 May 2004 00:41:35 -0000 1.5
-+++ testsuite/chown.test 18 Jun 2004 17:25:13 -0000
+--- orig/testsuite/chown.test 2004-05-18 09:14:24
++++ testsuite/chown.test 2004-07-03 20:17:33
@@ -28,7 +28,7 @@ chown 5001 "$name2" || test_skipped "Can
chgrp 5002 "$name1" || test_skipped "Can't chgrp (probably need root)"
chgrp 5003 "$name2" || test_skipped "Can't chgrp (probably need root)"
# The script would have aborted on error, so getting here means we've won.
exit 0
---- testsuite/daemon-gzip-download.test 18 May 2004 00:41:51 -0000 1.7
-+++ testsuite/daemon-gzip-download.test 18 Jun 2004 17:25:13 -0000
+--- orig/testsuite/daemon-gzip-download.test 2004-05-18 09:14:24
++++ testsuite/daemon-gzip-download.test 2004-07-03 20:17:33
@@ -29,9 +29,9 @@ export RSYNC_CONNECT_PROG
hands_setup
# The script would have aborted on error, so getting here means we've won.
exit 0
---- testsuite/daemon-gzip-upload.test 18 May 2004 00:41:51 -0000 1.7
-+++ testsuite/daemon-gzip-upload.test 18 Jun 2004 17:25:13 -0000
+--- orig/testsuite/daemon-gzip-upload.test 2004-05-18 09:14:24
++++ testsuite/daemon-gzip-upload.test 2004-07-03 20:17:33
@@ -23,9 +23,9 @@ export RSYNC_CONNECT_PROG
hands_setup
# The script would have aborted on error, so getting here means we've won.
exit 0
---- testsuite/devices.test 18 May 2004 00:41:35 -0000 1.8
-+++ testsuite/devices.test 18 Jun 2004 17:25:13 -0000
+--- orig/testsuite/devices.test 2004-05-18 09:14:24
++++ testsuite/devices.test 2004-07-03 20:17:33
@@ -29,7 +29,7 @@ mknod "$fromdir/block" b 42 69 || test_s
mknod "$fromdir/block2" b 42 73 || test_skipped "Can't create block device node unless root"
mknod "$fromdir/block3" b 105 73 || test_skipped "Can't create block device node unless root"
# The script would have aborted on error, so getting here means we've won.
exit 0
---- testsuite/duplicates.test 18 May 2004 00:41:35 -0000 1.10
-+++ testsuite/duplicates.test 18 Jun 2004 17:25:13 -0000
+--- orig/testsuite/duplicates.test 2004-05-18 09:14:24
++++ testsuite/duplicates.test 2004-07-03 20:17:33
@@ -33,7 +33,7 @@ ln -s "$name1" "$name2" || fail "can't c
outfile="$scratchdir/rsync.out"
| tee "$outfile"
# Make sure each file was only copied once...
---- testsuite/exclude.test 24 May 2004 00:16:07 -0000 1.8
-+++ testsuite/exclude.test 18 Jun 2004 17:25:13 -0000
+--- orig/testsuite/exclude.test 2004-05-29 21:25:45
++++ testsuite/exclude.test 2004-07-03 20:17:33
@@ -66,7 +66,7 @@ EOF
# Create the chk dir with what we expect to be excluded
--delete-excluded \"$fromdir/\" \"$todir/\"" "$chkdir" "$todir"
# The script would have aborted on error, so getting here means we've won.
---- testsuite/hands.test 18 May 2004 00:41:46 -0000 1.13
-+++ testsuite/hands.test 18 Jun 2004 17:25:13 -0000
+--- orig/testsuite/hands.test 2004-05-18 09:14:24
++++ testsuite/hands.test 2004-07-03 20:17:33
@@ -11,19 +11,19 @@ hands_setup
# Main script starts here
# The script would have aborted on error, so getting here means we've won.
exit 0
---- testsuite/hardlinks.test 18 May 2004 00:41:40 -0000 1.5
-+++ testsuite/hardlinks.test 18 Jun 2004 17:25:13 -0000
+--- orig/testsuite/hardlinks.test 2004-05-18 09:14:24
++++ testsuite/hardlinks.test 2004-07-03 20:17:33
@@ -31,7 +31,7 @@ ln "$name1" "$name2" || fail "Can't crea
ln "$name2" "$name3" || fail "Can't create hardlink"
cp "$name2" "$name4" || fail "Can't copy file"
# The script would have aborted on error, so getting here means we've won.
exit 0
---- testsuite/longdir.test 18 May 2004 09:47:42 -0000 1.11
-+++ testsuite/longdir.test 18 Jun 2004 17:25:13 -0000
+--- orig/testsuite/longdir.test 2004-05-18 09:50:26
++++ testsuite/longdir.test 2004-07-03 20:17:33
@@ -18,7 +18,7 @@ makepath "$longdir" || test_skipped "una
touch "$longdir/1" || test_skipped "unable to create files in long directory"
date > "$longdir/1"
# The script would have aborted on error, so getting here means we've won.
exit 0
---- testsuite/merge.test 18 May 2004 00:41:38 -0000 1.6
-+++ testsuite/merge.test 18 Jun 2004 17:25:13 -0000
+--- orig/testsuite/merge.test 2004-05-18 09:14:24
++++ testsuite/merge.test 2004-07-03 20:17:33
@@ -40,9 +40,9 @@ cp -p "$from2dir"/sub1/uno "$from3dir"/s
cp -p "$from3dir"/sub2/subby "$chkdir"/sub2
# The script would have aborted on error, so getting here means we've won.
exit 0
---- testsuite/ssh-basic.test 18 May 2004 00:41:46 -0000 1.7
-+++ testsuite/ssh-basic.test 18 Jun 2004 17:25:13 -0000
+--- orig/testsuite/ssh-basic.test 2004-05-18 09:14:24
++++ testsuite/ssh-basic.test 2004-07-03 20:17:33
@@ -28,7 +28,7 @@ fi
# nothing to do.
hands_setup
-runtest "ssh: renamed file" 'checkit "$RSYNC --delete -avH -e ssh --rsync-path=$RSYNC \"$fromdir/\" \"localhost:$todir\"" "$fromdir/" "$todir"'
+runtest "ssh: renamed file" 'checkit "$RSYNC --delete -advH -e ssh --rsync-path=$RSYNC \"$fromdir/\" \"localhost:$todir\"" "$fromdir/" "$todir"'
---- testsuite/unsafe-links.test 18 May 2004 00:41:43 -0000 1.7
-+++ testsuite/unsafe-links.test 18 Jun 2004 17:25:13 -0000
+--- orig/testsuite/unsafe-links.test 2004-05-18 09:14:24
++++ testsuite/unsafe-links.test 2004-07-03 20:17:33
@@ -35,33 +35,33 @@ ln -s ../../unsafe/unsafefile "from/safe
set -x
---- rsync.c 21 May 2004 08:43:03 -0000 1.140
-+++ rsync.c 21 May 2004 08:58:01 -0000
+--- orig/rsync.c 2004-07-02 18:06:32
++++ rsync.c 2004-07-03 20:17:55
@@ -239,6 +239,9 @@ void finish_transfer(char *fname, char *
if (make_backups && !make_backup(fname))
return;
+ set_perms(fnametmp, file, NULL, 0);
+
/* move tmp file over real file */
- ret = robust_rename(fnametmp, fname, file->mode & INITACCESSPERMS);
- if (ret < 0) {
-@@ -246,7 +249,8 @@ void finish_transfer(char *fname, char *
+ if (verbose > 2)
+ rprintf(FINFO, "renaming %s to %s\n", fnametmp, fname);
+@@ -248,7 +251,8 @@ void finish_transfer(char *fname, char *
ret == -2 ? "copy" : "rename",
full_fname(fnametmp), fname);
do_unlink(fnametmp);
set_perms(fname, file, NULL,
ok_to_set_time ? 0 : PERMS_SKIP_MTIME);
}
---- t_stub.c 15 May 2004 19:31:05 -0000 1.8
-+++ t_stub.c 21 May 2004 08:58:01 -0000
+--- orig/t_stub.c 2004-05-15 20:10:13
++++ t_stub.c 2004-07-03 20:17:55
@@ -26,6 +26,7 @@
* functions, so that module test harnesses can run standalone.
**/
int modify_window = 0;
int module_id = -1;
struct exclude_list_struct server_exclude_list;
---- util.c 21 May 2004 08:40:25 -0000 1.144
-+++ util.c 21 May 2004 08:58:01 -0000
+--- orig/util.c 2004-06-09 21:54:47
++++ util.c 2004-07-03 20:17:55
@@ -29,6 +29,7 @@
extern int verbose;
..wayne..
---- exclude.c 22 May 2004 05:32:20 -0000 1.82
-+++ exclude.c 11 Jun 2004 07:55:58 -0000
+--- orig/exclude.c 2004-05-22 19:30:03
++++ exclude.c 2004-07-03 20:21:27
@@ -30,13 +30,59 @@ extern int verbose;
extern int eol_nulls;
extern int list_only;
add_exclude(&exclude_list, default_cvsignore,
XFLG_WORD_SPLIT | XFLG_WORDS_ONLY);
---- flist.c 11 Jun 2004 07:40:57 -0000 1.230
-+++ flist.c 11 Jun 2004 07:55:58 -0000
+--- orig/flist.c 2004-06-18 16:23:07
++++ flist.c 2004-07-03 20:21:27
@@ -39,8 +39,6 @@ extern int module_id;
extern int ignore_errors;
extern int numeric_ids;
closedir(d);
}
---- options.c 7 Jun 2004 22:05:22 -0000 1.156
-+++ options.c 11 Jun 2004 07:55:59 -0000
+--- orig/options.c 2004-06-20 19:30:00
++++ options.c 2004-07-03 20:21:27
@@ -50,6 +50,7 @@ int preserve_gid = 0;
int preserve_times = 0;
int update_only = 0;
if (block_size) {
if (asprintf(&arg, "-B%u", block_size) < 0)
goto oom;
---- rsync.h 16 May 2004 07:28:24 -0000 1.204
-+++ rsync.h 11 Jun 2004 07:55:59 -0000
+--- orig/rsync.h 2004-05-16 07:58:12
++++ rsync.h 2004-07-03 20:21:27
@@ -108,6 +108,7 @@
#define XFLG_DEF_INCLUDE (1<<1)
#define XFLG_WORDS_ONLY (1<<2)
};
struct exclude_list_struct {
---- rsync.yo 5 Jun 2004 16:16:30 -0000 1.171
-+++ rsync.yo 11 Jun 2004 07:56:00 -0000
+--- orig/rsync.yo 2004-06-17 06:32:00
++++ rsync.yo 2004-07-03 20:21:27
@@ -332,6 +332,7 @@ verb(
--exclude-from=FILE exclude patterns listed in FILE
--include=PATTERN don't exclude files matching PATTERN
manpagesection(BATCH MODE)
bf(Note:) Batch mode should be considered experimental in this version
---- testsuite/exclude.test 24 May 2004 00:16:07 -0000 1.8
-+++ testsuite/exclude.test 11 Jun 2004 07:56:00 -0000
+--- orig/testsuite/exclude.test 2004-05-29 21:25:45
++++ testsuite/exclude.test 2004-07-03 20:21:27
@@ -23,19 +23,47 @@ export HOME CVSIGNORE
makepath "$fromdir/foo/down/to/you"
makepath "$fromdir/bar/down/to/foo/too"
Note that you'll need to run 'make proto' after applying this patch.
---- Makefile.in 15 May 2004 00:48:11 -0000 1.101
-+++ Makefile.in 30 Jun 2004 00:08:18 -0000
+--- orig/Makefile.in 2004-05-15 00:53:53
++++ Makefile.in 2004-07-03 20:18:02
@@ -35,7 +35,7 @@ OBJS1=rsync.o generator.o receiver.o cle
main.o checksum.o match.o syscall.o log.o backup.o
OBJS2=options.o flist.o io.o compat.o hlink.o token.o uidlist.o socket.o \
DAEMON_OBJ = params.o loadparm.o clientserver.o access.o connection.o authenticate.o
popt_OBJS=popt/findme.o popt/popt.o popt/poptconfig.o \
popt/popthelp.o popt/poptparse.o
---- cleanup.c 13 May 2004 07:08:18 -0000 1.22
-+++ cleanup.c 30 Jun 2004 00:08:18 -0000
+--- orig/cleanup.c 2004-07-02 18:11:26
++++ cleanup.c 2004-07-03 20:18:02
@@ -24,6 +24,7 @@
extern int io_error;
extern int keep_partial;
/**
* Close all open sockets and files, allowing a (somewhat) graceful
-@@ -121,6 +122,8 @@ void _exit_cleanup(int code, const char
+@@ -124,6 +125,8 @@ void _exit_cleanup(int code, const char
finish_transfer(cleanup_new_fname, fname, cleanup_file, 0);
}
io_flush(FULL_FLUSH);
+ cleanup_fname_convert();
if (cleanup_fname)
do_unlink(cleanup_fname);
- if (code) {
---- errcode.h 15 Dec 2003 08:04:14 -0000 1.8
-+++ errcode.h 30 Jun 2004 00:08:18 -0000
+ if (code)
+--- orig/errcode.h 2003-12-15 08:04:14
++++ errcode.h 2004-07-02 21:38:59
@@ -34,6 +34,7 @@
#define RERR_STREAMIO 12 /* error in rsync protocol data stream */
#define RERR_MESSAGEIO 13 /* errors with program diagnostics */
#define RERR_SIGNAL 20 /* status returned when sent SIGUSR1, SIGINT */
#define RERR_WAITCHILD 21 /* some error returned by waitpid() */
---- flist.c 18 Jun 2004 16:29:21 -0000 1.231
-+++ flist.c 30 Jun 2004 00:08:18 -0000
+--- orig/flist.c 2004-06-18 16:23:07
++++ flist.c 2004-07-03 20:18:02
@@ -43,6 +43,7 @@ extern int cvs_exclude;
extern int recurse;
if (verbose > 3)
output_flist(flist);
---- /dev/null 1 Jan 1970 00:00:00 -0000
-+++ fnameconv.c 30 Jun 2004 00:08:18 -0000
+--- orig/fnameconv.c 2004-07-02 21:38:59
++++ fnameconv.c 2004-07-02 21:38:59
@@ -0,0 +1,220 @@
+/* -*- c-file-style: "linux" -*-
+ *
+ if (verbose > 2)
+ rprintf(FINFO, "Converted filename: %s -> %s\n", src, dest);
+}
---- generator.c 29 Jun 2004 19:19:00 -0000 1.92
-+++ generator.c 30 Jun 2004 00:08:18 -0000
+--- orig/generator.c 2004-06-30 07:24:45
++++ generator.c 2004-07-03 20:18:02
@@ -265,6 +265,12 @@ static void generate_and_send_sums(struc
*
* @note This comment was added later by mbp who was trying to work it
*/
static void recv_generator(char *fname, struct file_struct *file, int i,
int f_out)
---- log.c 7 Jun 2004 22:51:14 -0000 1.74
-+++ log.c 30 Jun 2004 00:08:19 -0000
+--- orig/log.c 2004-06-09 15:34:38
++++ log.c 2004-07-03 20:18:02
@@ -57,6 +57,7 @@ struct {
{ RERR_STREAMIO , "error in rsync protocol data stream" },
{ RERR_MESSAGEIO , "errors with program diagnostics" },
{ RERR_SIGNAL , "received SIGUSR1 or SIGINT" },
{ RERR_WAITCHILD , "some error returned by waitpid()" },
{ RERR_MALLOC , "error allocating core memory buffers" },
---- main.c 28 Jun 2004 17:45:40 -0000 1.201
-+++ main.c 30 Jun 2004 00:08:19 -0000
+--- orig/main.c 2004-06-30 07:24:30
++++ main.c 2004-07-03 20:18:02
@@ -304,7 +304,7 @@ static pid_t do_cmd(char *cmd, char *mac
create_flist_from_batch(); /* sets batch_flist */
ret = local_child(argc, args, f_in, f_out, child_main);
}
if (dir)
---- options.c 20 Jun 2004 19:47:05 -0000 1.157
-+++ options.c 30 Jun 2004 00:08:19 -0000
+--- orig/options.c 2004-06-20 19:30:00
++++ options.c 2004-07-03 20:18:02
@@ -127,6 +127,7 @@ char *backup_dir = NULL;
char backup_dir_buf[MAXPATHLEN];
int rsync_port = RSYNC_PORT;
/* TODO: Should this take an optional int giving the compression level? */
{"compress", 'z', POPT_ARG_NONE, &do_compression, 0, 0, 0 },
{"daemon", 0, POPT_ARG_NONE, &daemon_opt, 0, 0, 0 },
---- pipe.c 18 Jun 2004 16:00:33 -0000 1.8
-+++ pipe.c 30 Jun 2004 00:08:19 -0000
+--- orig/pipe.c 2004-06-18 16:00:09
++++ pipe.c 2004-07-03 20:18:02
@@ -23,7 +23,6 @@
extern int am_sender;
if (pid == -1) {
rsyserr(FERROR, errno, "fork");
exit_cleanup(RERR_IPC);
---- syscall.c 18 Feb 2004 22:33:21 -0000 1.30
-+++ syscall.c 30 Jun 2004 00:08:19 -0000
+--- orig/syscall.c 2004-02-18 22:33:21
++++ syscall.c 2004-07-02 21:39:00
@@ -231,3 +231,34 @@ char *d_name(struct dirent *di)
return di->d_name;
#endif
+
+ return result;
+}
---- util.c 9 Jun 2004 21:51:07 -0000 1.149
-+++ util.c 30 Jun 2004 00:08:20 -0000
+--- orig/util.c 2004-06-09 21:54:47
++++ util.c 2004-07-03 20:18:02
@@ -1153,3 +1153,55 @@ void *_realloc_array(void *ptr, unsigned
return malloc(size * num);
return realloc(ptr, size * num);
This patch from Sami Farin lets you specify --fsync if you want fsync()
to be called on every file we write.
---- options.c 7 Jun 2004 22:05:22 -0000 1.156
-+++ options.c 18 Jun 2004 17:26:45 -0000
+--- orig/options.c 2004-06-20 19:30:00
++++ options.c 2004-07-03 20:18:13
@@ -38,6 +38,7 @@ int make_backups = 0;
**/
int whole_file = -1;
if (compare_dest && 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
---- receiver.c 14 Jun 2004 15:09:36 -0000 1.82
-+++ receiver.c 18 Jun 2004 17:26:45 -0000
+--- orig/receiver.c 2004-07-02 18:23:01
++++ receiver.c 2004-07-03 20:18:13
@@ -48,6 +48,7 @@ extern int ignore_errors;
extern int orig_umask;
extern int keep_partial;
static void delete_one(char *fn, int is_dir)
{
-@@ -276,6 +277,12 @@ static int receive_data(int f_in,struct
+@@ -274,6 +275,12 @@ static int receive_data(int f_in,struct
exit_cleanup(RERR_FILEIO);
}
sum_end(file_sum1);
read_buf(f_in,file_sum2,MD4_SUM_LENGTH);
---- util.c 9 Jun 2004 21:51:07 -0000 1.149
-+++ util.c 18 Jun 2004 17:26:46 -0000
+--- orig/util.c 2004-06-09 21:54:47
++++ util.c 2004-07-03 20:18:13
@@ -32,6 +32,7 @@ extern int dry_run;
extern int module_id;
extern int modify_window;
You must run "make proto" before compiling.
---- generator.c 30 Jun 2004 07:27:30 -0000 1.93
-+++ generator.c 30 Jun 2004 07:45:03 -0000
+--- orig/generator.c 2004-06-30 07:24:45
++++ generator.c 2004-07-03 20:08:07
@@ -267,7 +267,7 @@ static void generate_and_send_sums(struc
* out. It might be wrong.
*/
}
if (verbose > 2)
---- main.c 30 Jun 2004 07:27:30 -0000 1.202
-+++ main.c 30 Jun 2004 07:45:03 -0000
+--- orig/main.c 2004-06-30 07:24:30
++++ main.c 2004-07-03 20:08:07
@@ -429,7 +429,7 @@ static int do_recv(int f_in,int f_out,st
{
int pid;
get_redo_num(); /* Read final MSG_DONE and any prior messages. */
report(-1);
---- receiver.c 30 Jun 2004 07:27:30 -0000 1.84
-+++ receiver.c 30 Jun 2004 07:45:03 -0000
-@@ -293,14 +293,15 @@ static int receive_data(int f_in,struct
+--- orig/receiver.c 2004-07-02 18:23:01
++++ receiver.c 2004-07-03 20:08:07
+@@ -289,14 +289,15 @@ static int receive_data(int f_in,struct
* main routine for receiver process.
*
* Receiver process runs on the same host as the generator process. */
char fnamecmpbuf[MAXPATHLEN];
struct map_struct *mapbuf;
struct file_struct *file;
-@@ -364,19 +365,19 @@ int recv_files(int f_in,struct file_list
+@@ -358,19 +359,19 @@ int recv_files(int f_in,struct file_list
if (verbose > 2)
rprintf(FINFO,"recv_files(%s)\n",fname);
if (fd1 != -1 && do_fstat(fd1,&st) != 0) {
rsyserr(FERROR, errno, "fstat %s failed",
full_fname(fnamecmp));
-@@ -385,7 +386,7 @@ int recv_files(int f_in,struct file_list
+@@ -379,7 +380,7 @@ int recv_files(int f_in,struct file_list
continue;
}
- - - - - - - - - - - - - - - - - - - - - - - - -
---- options.c 7 Jun 2004 22:05:22 -0000 1.156
-+++ options.c 18 Jun 2004 17:26:59 -0000
+--- orig/lib/wildmatch.c 2003-07-14 15:12:59
++++ lib/wildmatch.c 2004-06-18 17:27:00
+@@ -76,8 +76,20 @@ static int domatch(const unsigned char *
+ ch = *++p;
+ /* FALLTHROUGH */
+ default:
+- if (*text != ch)
++ if (*text != ch) {
++ extern int ignore_case;
++ if (ignore_case) {
++ if (ISUPPER(*text)) {
++ if (tolower(*text) == ch)
++ continue;
++ }
++ else if (ISUPPER(ch)) {
++ if (*text == tolower(ch))
++ continue;
++ }
++ }
+ return FALSE;
++ }
+ continue;
+ case '?':
+ /* Match anything but '/'. */
+--- orig/options.c 2004-06-20 19:30:00
++++ options.c 2004-07-03 20:19:20
@@ -92,6 +92,7 @@ int opt_ignore_existing = 0;
int max_delete = 0;
int ignore_errors = 0;
if (keep_partial)
args[ac++] = "--partial";
---- util.c 9 Jun 2004 21:51:07 -0000 1.149
-+++ util.c 18 Jun 2004 17:27:00 -0000
+--- orig/util.c 2004-06-09 21:54:47
++++ util.c 2004-07-03 20:19:20
@@ -951,6 +951,19 @@ int u_strcmp(const char *cs1, const char
{
const uchar *s1 = (const uchar *)cs1;
while (*s1 && *s2 && (*s1 == *s2)) {
s1++; s2++;
---- lib/wildmatch.c 14 Jul 2003 15:12:59 -0000 1.12
-+++ lib/wildmatch.c 18 Jun 2004 17:27:00 -0000
-@@ -76,8 +76,20 @@ static int domatch(const unsigned char *
- ch = *++p;
- /* FALLTHROUGH */
- default:
-- if (*text != ch)
-+ if (*text != ch) {
-+ extern int ignore_case;
-+ if (ignore_case) {
-+ if (ISUPPER(*text)) {
-+ if (tolower(*text) == ch)
-+ continue;
-+ }
-+ else if (ISUPPER(ch)) {
-+ if (*text == tolower(ch))
-+ continue;
-+ }
-+ }
- return FALSE;
-+ }
- continue;
- case '?':
- /* Match anything but '/'. */
make rsync.1
---- configure.in 30 Apr 2004 18:03:33 -0000 1.196
-+++ configure.in 3 Jul 2004 00:16:50 -0000
+--- orig/configure.in 2004-04-30 18:04:07
++++ configure.in 2004-07-03 20:19:54
@@ -442,7 +442,7 @@ dnl AC_FUNC_MEMCMP
AC_FUNC_UTIME_NULL
AC_FUNC_ALLOCA
memmove lchown vsnprintf snprintf asprintf setsid glob strpbrk \
strlcat strlcpy strtol mallinfo getgroups setgroups geteuid getegid)
---- match.c 2 Jul 2004 23:35:30 -0000 1.63
-+++ match.c 3 Jul 2004 00:16:50 -0000
+--- orig/match.c 2004-07-02 23:31:44
++++ match.c 2004-07-03 20:19:54
@@ -23,6 +23,7 @@ extern int verbose;
extern int am_server;
extern int do_progress;
typedef unsigned short tag;
-@@ -52,9 +53,23 @@ static size_t *tag_table;
+@@ -52,9 +53,26 @@ static size_t *tag_table;
#define gettag2(s1,s2) (((s1) + (s2)) & 0xFFFF)
#define gettag(sum) gettag2((sum)&0xFFFF,(sum)>>16)
+ if (s1->sum1 != s2->sum1)
+ return s1->sum1 < s2->sum1 ? -1 : 1;
+
++ if (s1->len != s2->len)
++ return s1->len < s2->len ? -1 : 1;
++
+ return memcmp(s1->sum2, s2->sum2, current_s2length);
}
-@@ -74,6 +89,8 @@ static void build_hash_table(struct sum_
+@@ -74,6 +92,8 @@ static void build_hash_table(struct sum_
targets[i].t = gettag(s->sums[i].sum1);
}
qsort(targets,s->count,sizeof(targets[0]),(int (*)())compare_targets);
for (i = 0; i < TABLESIZE; i++)
-@@ -192,12 +209,24 @@ static void hash_search(int f,struct sum
+@@ -192,12 +212,24 @@ static void hash_search(int f,struct sum
unsigned int l;
size_t i = targets[j].i;
continue;
if (verbose > 3)
-@@ -215,15 +244,39 @@ static void hash_search(int f,struct sum
+@@ -215,15 +247,41 @@ static void hash_search(int f,struct sum
continue;
}
-- /* we've found a match, but now check to see
-- * if last_i can hint at a better match */
-+ /* We've found a match, but now check to see if last_i
-+ * can hint at a better match. If inplace is enabled,
-+ * the best possible match is one with an identical
-+ * offset, so we prefer that over a last_i+1 match. */
++ /* If inplace is enabled, the best possible match is
++ * one with an identical offset, so we prefer that over
++ * the following last_i+1 optimization. */
+ if (inplace) {
-+ for (; j < s->count && targets[j].t == t; j++) {
++ do {
+ size_t i2 = targets[j].i;
+ if (s->sums[i2].offset != offset)
+ continue;
+ * both the sender and the receiver. */
+ s->sums[i].i = -1;
+ goto set_last_i;
-+ }
++ } while (++j < s->count && targets[j].t == t);
+ }
++
+ /* we've found a match, but now check to see
+ * if last_i can hint at a better match */
if (i != last_i + 1 && last_i + 1 < s->count
+ && (!inplace || s->sums[last_i+1].offset >= offset || s->sums[last_i+1].i < 0)
&& sum == s->sums[last_i+1].sum1
last_i = i;
matched(f,s,buf,offset,i);
---- options.c 20 Jun 2004 19:47:05 -0000 1.157
-+++ options.c 3 Jul 2004 00:16:50 -0000
+--- orig/options.c 2004-06-20 19:30:00
++++ options.c 2004-07-03 20:19:54
@@ -94,6 +94,7 @@ int ignore_errors = 0;
int modify_window = 0;
int blocking_io = -1;
if (tmpdir) {
args[ac++] = "--temp-dir";
args[ac++] = tmpdir;
---- receiver.c 2 Jul 2004 18:23:57 -0000 1.86
-+++ receiver.c 3 Jul 2004 00:16:50 -0000
+--- orig/receiver.c 2004-07-02 18:23:01
++++ receiver.c 2004-07-03 20:19:54
@@ -48,6 +48,7 @@ extern int ignore_errors;
extern int orig_umask;
extern int keep_partial;
if (!am_server && verbose)
rprintf(FINFO, "%s\n", fname);
---- rsync.c 2 Jul 2004 18:13:53 -0000 1.142
-+++ rsync.c 3 Jul 2004 00:16:51 -0000
+--- orig/rsync.c 2004-07-02 18:06:32
++++ rsync.c 2004-07-03 20:19:54
@@ -34,6 +34,7 @@ extern int force_delete;
extern int recurse;
extern int make_backups;
/* move tmp file over real file */
if (verbose > 2)
rprintf(FINFO, "renaming %s to %s\n", fnametmp, fname);
---- rsync.yo 5 Jun 2004 16:16:30 -0000 1.171
-+++ rsync.yo 3 Jul 2004 00:16:52 -0000
+--- orig/rsync.yo 2004-06-17 06:32:00
++++ rsync.yo 2004-07-03 20:19:55
@@ -289,6 +289,7 @@ verb(
--backup-dir make backups into this directory
--suffix=SUFFIX backup suffix (default ~ w/o --backup-dir)
the file's name.
---- Makefile.in 15 May 2004 00:48:11 -0000 1.101
-+++ Makefile.in 30 Jun 2004 00:10:04 -0000
+--- orig/Makefile.in 2004-05-15 00:53:53
++++ Makefile.in 2004-07-03 20:20:15
@@ -35,7 +35,7 @@ OBJS1=rsync.o generator.o receiver.o cle
main.o checksum.o match.o syscall.o log.o backup.o
OBJS2=options.o flist.o io.o compat.o hlink.o token.o uidlist.o socket.o \
DAEMON_OBJ = params.o loadparm.o clientserver.o access.o connection.o authenticate.o
popt_OBJS=popt/findme.o popt/popt.o popt/poptconfig.o \
popt/popthelp.o popt/poptparse.o
---- /dev/null 1 Jan 1970 00:00:00 -0000
-+++ hashlink.c 30 Jun 2004 00:10:04 -0000
+--- orig/hashlink.c 2004-07-02 21:41:54
++++ hashlink.c 2004-07-02 21:41:54
@@ -0,0 +1,342 @@
+/*
+ Copyright (C) Cronosys, LLC 2004
+}
+
+#endif
---- options.c 20 Jun 2004 19:47:05 -0000 1.157
-+++ options.c 30 Jun 2004 00:10:04 -0000
+--- orig/options.c 2004-06-20 19:30:00
++++ options.c 2004-07-03 20:20:15
@@ -124,6 +124,7 @@ char *log_format = NULL;
char *password_file = NULL;
char *rsync_path = RSYNC_PATH;
if (files_from && (!am_sender || remote_filesfrom_file)) {
if (remote_filesfrom_file) {
args[ac++] = "--files-from";
---- receiver.c 29 Jun 2004 15:12:01 -0000 1.83
-+++ receiver.c 30 Jun 2004 00:10:04 -0000
+--- orig/receiver.c 2004-07-02 18:23:01
++++ receiver.c 2004-07-03 20:20:15
@@ -48,6 +48,7 @@ extern int ignore_errors;
extern int orig_umask;
extern int keep_partial;
static void delete_one(char *fn, int is_dir)
{
-@@ -198,10 +199,11 @@ static int get_tmpname(char *fnametmp, c
+@@ -196,10 +197,11 @@ static int get_tmpname(char *fnametmp, c
static int receive_data(int f_in,struct map_struct *mapbuf,int fd,char *fname,
unsigned int len;
OFF_T offset = 0;
OFF_T offset2;
-@@ -212,6 +214,9 @@ static int receive_data(int f_in,struct
+@@ -210,6 +212,9 @@ static int receive_data(int f_in,struct
read_sum_head(f_in, &sum);
sum_init(checksum_seed);
while ((i = recv_token(f_in, &data)) != 0) {
-@@ -228,6 +233,8 @@ static int receive_data(int f_in,struct
+@@ -226,6 +231,8 @@ static int receive_data(int f_in,struct
cleanup_got_literal = 1;
sum_update(data,i);
if (fd != -1 && write_file(fd,data,i) != i) {
rsyserr(FERROR, errno, "write failed on %s",
-@@ -255,6 +262,8 @@ static int receive_data(int f_in,struct
+@@ -253,6 +260,8 @@ static int receive_data(int f_in,struct
see_token(map, len);
sum_update(map,len);
+ mdfour_update(&mdfour_data,map,len);
}
- if (fd != -1 && write_file(fd,map,len) != (int) len) {
-@@ -277,6 +286,8 @@ static int receive_data(int f_in,struct
+ if (fd != -1 && write_file(fd, map, len) != (int)len) {
+@@ -275,6 +284,8 @@ static int receive_data(int f_in,struct
}
sum_end(file_sum1);
+ mdfour_result(&mdfour_data, (unsigned char*)md4);
read_buf(f_in,file_sum2,MD4_SUM_LENGTH);
- if (verbose > 2) {
-@@ -380,7 +391,7 @@ int recv_files(int f_in,struct file_list
+ if (verbose > 2)
+@@ -374,7 +385,7 @@ int recv_files(int f_in,struct file_list
if (fd1 != -1 && do_fstat(fd1,&st) != 0) {
rsyserr(FERROR, errno, "fstat %s failed",
full_fname(fnamecmp));
close(fd1);
continue;
}
-@@ -393,7 +404,7 @@ int recv_files(int f_in,struct file_list
+@@ -387,7 +398,7 @@ int recv_files(int f_in,struct file_list
*/
rprintf(FERROR,"recv_files: %s is a directory\n",
full_fname(fnamecmp));
close(fd1);
continue;
}
-@@ -447,7 +458,7 @@ int recv_files(int f_in,struct file_list
+@@ -443,7 +454,7 @@ int recv_files(int f_in,struct file_list
if (fd2 == -1) {
rsyserr(FERROR, errno, "mkstemp %s failed",
full_fname(fnametmp));
- receive_data(f_in,mapbuf,-1,NULL,file->length);
+ receive_data(f_in,mapbuf,-1,NULL,file->length,NULL);
- if (mapbuf) unmap_file(mapbuf);
- if (fd1 != -1) close(fd1);
- continue;
-@@ -460,7 +471,11 @@ int recv_files(int f_in,struct file_list
- }
+ if (mapbuf)
+ unmap_file(mapbuf);
+ if (fd1 != -1)
+@@ -457,7 +468,11 @@ int recv_files(int f_in,struct file_list
+ rprintf(FINFO, "%s\n", fname);
/* recv file data */
- recv_ok = receive_data(f_in,mapbuf,fd2,fname,file->length);
log_recv(file, &initial_stats);
---- rsync.c 11 Jun 2004 07:40:45 -0000 1.141
-+++ rsync.c 30 Jun 2004 00:10:04 -0000
+--- orig/rsync.c 2004-07-02 18:06:32
++++ rsync.c 2004-07-03 20:20:15
@@ -34,6 +34,7 @@ extern int force_delete;
extern int recurse;
extern int make_backups;
/*
-@@ -239,8 +240,12 @@ void finish_transfer(char *fname, char *
- if (make_backups && !make_backup(fname))
- return;
-
-- /* move tmp file over real file */
-- ret = robust_rename(fnametmp, fname, file->mode & INITACCESSPERMS);
+@@ -242,6 +243,12 @@ void finish_transfer(char *fname, char *
+ /* move tmp file over real file */
+ if (verbose > 2)
+ rprintf(FINFO, "renaming %s to %s\n", fnametmp, fname);
+#ifdef HAVE_LINK
+ if (link_by_hash_dir)
+ ret = link_by_hash(fnametmp, fname, file);
+ else
+#endif
+ ret = robust_rename(fnametmp, fname, file->mode & INITACCESSPERMS);
+ ret = robust_rename(fnametmp, fname, file->mode & INITACCESSPERMS);
if (ret < 0) {
rsyserr(FERROR, errno, "%s %s -> \"%s\"",
- ret == -2 ? "copy" : "rename",
---- rsync.h 16 May 2004 07:28:24 -0000 1.204
-+++ rsync.h 30 Jun 2004 00:10:04 -0000
+--- orig/rsync.h 2004-05-16 07:58:12
++++ rsync.h 2004-07-03 20:20:15
@@ -522,6 +522,14 @@ struct stats {
int current_file_index;
};
---- batch.c 15 May 2004 19:31:10 -0000 1.32
-+++ batch.c 30 Jun 2004 00:10:16 -0000
+--- orig/batch.c 2004-05-15 20:10:13
++++ batch.c 2004-07-03 20:20:27
@@ -172,6 +172,7 @@ void close_batch_csums_file(void)
/**
if (write(f_delta, buff, bytes_to_write) < 0) {
rsyserr(FERROR, errno, "Batch file %s write error", filename);
close(f_delta);
---- flist.c 18 Jun 2004 16:29:21 -0000 1.231
-+++ flist.c 30 Jun 2004 00:10:16 -0000
+--- orig/flist.c 2004-06-18 16:23:07
++++ flist.c 2004-07-03 20:20:27
@@ -950,7 +950,7 @@ void send_file_name(int f, struct file_l
flist_expand(flist);
}
if (verbose > 3)
---- generator.c 29 Jun 2004 19:19:00 -0000 1.92
-+++ generator.c 30 Jun 2004 00:10:16 -0000
+--- orig/generator.c 2004-06-30 07:24:45
++++ generator.c 2004-07-03 20:20:27
@@ -48,6 +48,7 @@ extern int whole_file;
extern int local_server;
extern int read_batch;
close(fd);
if (mapbuf)
---- main.c 28 Jun 2004 17:45:40 -0000 1.201
-+++ main.c 30 Jun 2004 00:10:16 -0000
+--- orig/main.c 2004-06-30 07:24:30
++++ main.c 2004-07-03 20:20:27
@@ -1039,6 +1039,10 @@ int main(int argc,char *argv[])
if (write_batch && !am_server) {
}
if (am_daemon && !am_server)
---- options.c 20 Jun 2004 19:47:05 -0000 1.157
-+++ options.c 30 Jun 2004 00:10:17 -0000
+--- orig/options.c 2004-06-20 19:30:00
++++ options.c 2004-07-03 20:20:27
@@ -643,6 +643,15 @@ int parse_arguments(int *argc, const cha
"write-batch and read-batch can not be used together\n");
exit_cleanup(RERR_SYNTAX);
if (io_timeout) {
if (asprintf(&arg, "--timeout=%d", io_timeout) < 0)
goto oom;
---- pipe.c 18 Jun 2004 16:00:33 -0000 1.8
-+++ pipe.c 30 Jun 2004 00:10:17 -0000
+--- orig/pipe.c 2004-06-18 16:00:09
++++ pipe.c 2004-07-03 20:20:27
@@ -26,6 +26,7 @@ extern int am_server;
extern int blocking_io;
extern int orig_umask;
if (!am_sender)
filesfrom_fd = -1;
---- receiver.c 29 Jun 2004 15:12:01 -0000 1.83
-+++ receiver.c 30 Jun 2004 00:10:17 -0000
+--- orig/receiver.c 2004-07-02 18:23:01
++++ receiver.c 2004-07-03 20:20:27
@@ -46,6 +46,7 @@ extern int cleanup_got_literal;
extern int module_id;
extern int ignore_errors;
extern int keep_partial;
extern int checksum_seed;
-@@ -279,6 +280,8 @@ static int receive_data(int f_in,struct
+@@ -277,6 +278,8 @@ static int receive_data(int f_in,struct
sum_end(file_sum1);
read_buf(f_in,file_sum2,MD4_SUM_LENGTH);
+ if (write_batch)
+ write_batch_delta_file(file_sum2, MD4_SUM_LENGTH);
- if (verbose > 2) {
+ if (verbose > 2)
rprintf(FINFO,"got file_sum\n");
- }
-@@ -334,6 +337,9 @@ int recv_files(int f_in,struct file_list
+ if (fd != -1 && memcmp(file_sum1, file_sum2, MD4_SUM_LENGTH) != 0)
+@@ -329,6 +332,9 @@ int recv_files(int f_in,struct file_list
continue;
}
if (i < 0 || i >= flist->count) {
rprintf(FERROR,"Invalid file index %d in recv_files (count=%d)\n",
i, flist->count);
---- token.c 18 Jun 2004 16:22:14 -0000 1.31
-+++ token.c 30 Jun 2004 00:10:17 -0000
+--- orig/token.c 2004-06-18 16:20:45
++++ token.c 2004-07-03 20:20:27
@@ -80,6 +80,8 @@ static int simple_recv_token(int f,char
if (residue == 0) {
---- generator.c 29 Jun 2004 19:19:00 -0000 1.92
-+++ generator.c 30 Jun 2004 00:10:59 -0000
+--- orig/generator.c 2004-06-30 07:24:45
++++ generator.c 2004-07-03 20:20:46
@@ -39,6 +39,7 @@ extern int opt_ignore_existing;
extern int csum_length;
extern int ignore_times;
}
if (preserve_links && S_ISLNK(file->mode)) {
---- options.c 20 Jun 2004 19:47:05 -0000 1.157
-+++ options.c 30 Jun 2004 00:10:59 -0000
+--- orig/options.c 2004-06-20 19:30:00
++++ options.c 2004-07-03 20:20:46
@@ -90,6 +90,7 @@ int delete_after = 0;
int only_existing = 0;
int opt_ignore_existing = 0;
if (batch_prefix) {
char *r_or_w = write_batch ? "write" : "read";
if (asprintf(&arg, "--%s-batch=%s", r_or_w, batch_prefix) < 0)
---- rsync.yo 5 Jun 2004 16:16:30 -0000 1.171
-+++ rsync.yo 30 Jun 2004 00:11:00 -0000
+--- orig/rsync.yo 2004-06-17 06:32:00
++++ rsync.yo 2004-07-03 20:20:46
@@ -315,6 +315,7 @@ verb(
--delete-after receiver deletes after transfer, not before
--ignore-errors delete even if there are I/O errors
This patch still needs autoconf support for portability.
---- access.c 30 Jul 2003 06:12:27 -0000 1.13
-+++ access.c 25 Apr 2004 17:20:47 -0000
+--- orig/access.c 2003-07-30 06:12:27
++++ access.c 2004-04-25 17:20:47
@@ -22,11 +22,14 @@
*/
can't say if I've left any cleanup/compatibility errors in the code.
---- Makefile.in 15 May 2004 00:48:11 -0000 1.101
-+++ Makefile.in 30 Jun 2004 00:11:17 -0000
+--- orig/Makefile.in 2004-05-15 00:53:53
++++ Makefile.in 2004-07-03 20:22:28
@@ -39,7 +39,7 @@ OBJS3=progress.o pipe.o
DAEMON_OBJ = params.o loadparm.o clientserver.o access.o connection.o authenticate.o
popt_OBJS=popt/findme.o popt/popt.o popt/poptconfig.o \
TLS_OBJ = tls.o syscall.o lib/permstring.o
---- cleanup.c 13 May 2004 07:08:18 -0000 1.22
-+++ cleanup.c 30 Jun 2004 00:11:17 -0000
+--- orig/cleanup.c 2004-07-02 18:11:26
++++ cleanup.c 2004-07-03 20:22:28
@@ -24,6 +24,9 @@
extern int io_error;
extern int keep_partial;
/**
* Close all open sockets and files, allowing a (somewhat) graceful
-@@ -99,6 +102,11 @@ void _exit_cleanup(int code, const char
+@@ -98,6 +101,11 @@ void _exit_cleanup(int code, const char
signal(SIGUSR1, SIG_IGN);
signal(SIGUSR2, SIG_IGN);
if (verbose > 3) {
rprintf(FINFO,"_exit_cleanup(code=%d, file=%s, line=%d): entered\n",
code, file, line);
---- clientserver.c 13 Jun 2004 14:18:48 -0000 1.127
-+++ clientserver.c 30 Jun 2004 00:11:17 -0000
+--- orig/clientserver.c 2004-06-18 15:59:19
++++ clientserver.c 2004-07-03 20:22:28
@@ -46,6 +46,9 @@ extern int io_timeout;
extern int orig_umask;
extern int no_detach;
if (*line == '#') {
/* it's some sort of command that I don't understand */
io_printf(f_out, "@ERROR: Unknown command '%s'\n", line);
---- config.h.in 29 Apr 2004 19:40:39 -0000 1.90
-+++ config.h.in 30 Jun 2004 00:11:17 -0000
-@@ -167,6 +167,9 @@
- /* */
- #undef HAVE_OFF64_T
-
-+/* true if you want to use SSL. */
-+#undef HAVE_OPENSSL
-+
- /* Define to 1 if you have the `readlink' function. */
- #undef HAVE_READLINK
-
---- configure.in 30 Apr 2004 18:03:33 -0000 1.196
-+++ configure.in 30 Jun 2004 00:11:17 -0000
+--- orig/configure.in 2004-04-30 18:04:07
++++ configure.in 2004-07-03 20:22:28
@@ -271,6 +271,21 @@ yes
AC_SEARCH_LIBS(getaddrinfo, inet6)
fi
AC_MSG_CHECKING([whether to call shutdown on all sockets])
case $host_os in
*cygwin* ) AC_MSG_RESULT(yes)
---- main.c 28 Jun 2004 17:45:40 -0000 1.201
-+++ main.c 30 Jun 2004 00:11:17 -0000
+--- orig/main.c 2004-06-30 07:24:30
++++ main.c 2004-07-03 20:22:28
@@ -52,6 +52,9 @@ extern int rsync_port;
extern int read_batch;
extern int write_batch;
p = strchr(host,'/');
if (p) {
*p = 0;
---- options.c 20 Jun 2004 19:47:05 -0000 1.157
-+++ options.c 30 Jun 2004 00:11:18 -0000
+--- orig/options.c 2004-06-20 19:30:00
++++ options.c 2004-07-03 20:22:28
@@ -133,6 +133,14 @@ int quiet = 0;
int always_checksum = 0;
int list_only = 0;
if (bwlimit) {
bwlimit_writemax = (size_t)bwlimit * 128;
if (bwlimit_writemax < 512)
---- rsync.h 16 May 2004 07:28:24 -0000 1.204
-+++ rsync.h 30 Jun 2004 00:11:18 -0000
+--- orig/rsync.h 2004-05-16 07:58:12
++++ rsync.h 2004-07-03 20:22:28
@@ -32,6 +32,7 @@
#define DEFAULT_LOCK_FILE "/var/run/rsyncd.lock"
/* Starting from protocol version 26, we always use 64-bit
* ino_t and dev_t internally, even if this platform does not
* allow files to have 64-bit inums. That's because the
---- /dev/null 1 Jan 1970 00:00:00 -0000
-+++ ssl.c 30 Jun 2004 00:11:18 -0000
+--- orig/ssl.c 2004-07-02 21:44:19
++++ ssl.c 2004-07-02 21:44:19
@@ -0,0 +1,366 @@
+/* -*- c-file-style: "linux" -*-
+ * ssl.c: operations for negotiating SSL rsync connections.
make proto
---- io.c 23 Jun 2004 01:13:09 -0000 1.131
-+++ io.c 30 Jun 2004 00:07:33 -0000
+--- orig/io.c 2004-06-23 01:13:56
++++ io.c 2004-07-03 20:17:10
@@ -225,6 +225,14 @@ static void read_msg_fd(void)
read_loop(fd, buf, 4);
redo_list_add(IVAL(buf,0));
case MSG_INFO:
case MSG_ERROR:
if (remaining >= sizeof line) {
---- main.c 28 Jun 2004 17:45:40 -0000 1.201
-+++ main.c 30 Jun 2004 00:07:33 -0000
+--- orig/main.c 2004-06-30 07:24:30
++++ main.c 2004-07-03 20:17:10
@@ -42,6 +42,7 @@ extern int list_only;
extern int local_server;
extern int log_got_error;
if (argc == 0)
list_only = 1;
---- options.c 20 Jun 2004 19:47:05 -0000 1.157
-+++ options.c 30 Jun 2004 00:07:33 -0000
+--- orig/options.c 2004-06-20 19:30:00
++++ options.c 2004-07-03 20:17:10
@@ -87,6 +87,7 @@ int size_only = 0;
int bwlimit = 0;
size_t bwlimit_writemax = 0;
*argc = ac;
return;
---- receiver.c 29 Jun 2004 15:12:01 -0000 1.83
-+++ receiver.c 30 Jun 2004 00:07:33 -0000
+--- orig/receiver.c 2004-07-02 18:23:01
++++ receiver.c 2004-07-03 20:17:10
@@ -48,6 +48,7 @@ extern int ignore_errors;
extern int orig_umask;
extern int keep_partial;
static void delete_one(char *fn, int is_dir)
{
-@@ -300,7 +301,7 @@ int recv_files(int f_in,struct file_list
+@@ -296,7 +297,7 @@ int recv_files(int f_in,struct file_list
char *fname, fbuf[MAXPATHLEN];
char template[MAXPATHLEN];
char fnametmp[MAXPATHLEN];
char fnamecmpbuf[MAXPATHLEN];
struct map_struct *mapbuf;
struct file_struct *file;
-@@ -484,16 +485,20 @@ int recv_files(int f_in,struct file_list
+@@ -478,16 +479,20 @@ int recv_files(int f_in,struct file_list
cleanup_disable();
}
}
}
---- rsync.h 16 May 2004 07:28:24 -0000 1.204
-+++ rsync.h 30 Jun 2004 00:07:34 -0000
+--- orig/rsync.h 2004-05-16 07:58:12
++++ rsync.h 2004-07-03 20:17:10
@@ -60,6 +60,7 @@
#define FLAG_TOP_DIR (1<<0)
#define FLAG_HLINK_EOL (1<<1) /* generator only */
MSG_DONE=5, /* current phase is done */
MSG_REDO=4, /* reprocess indicated flist index */
MSG_ERROR=FERROR, MSG_INFO=FINFO, MSG_LOG=FLOG, /* remote logging */
---- rsync.yo 5 Jun 2004 16:16:30 -0000 1.171
-+++ rsync.yo 30 Jun 2004 00:07:34 -0000
+--- orig/rsync.yo 2004-06-17 06:32:00
++++ rsync.yo 2004-07-03 20:17:10
@@ -313,6 +313,7 @@ verb(
--delete delete files that don't exist on sender
--delete-excluded also delete excluded files on receiver
dit(bf(--ignore-errors)) Tells --delete to go ahead and delete files
even when there are I/O errors.
---- sender.c 18 Jun 2004 16:55:12 -0000 1.41
-+++ sender.c 30 Jun 2004 00:07:34 -0000
+--- orig/sender.c 2004-06-18 16:55:00
++++ sender.c 2004-07-03 20:17:10
@@ -27,6 +27,7 @@ extern int dry_run;
extern int am_server;
extern int am_daemon;
[Updated to latest CVS source by Wayne Davison.]
---- syscall.c 18 Feb 2004 22:33:21 -0000 1.30
-+++ syscall.c 22 Apr 2004 23:48:45 -0000
+--- orig/syscall.c 2004-02-18 22:33:21
++++ syscall.c 2004-04-22 23:48:45
@@ -58,9 +58,14 @@ int do_symlink(char *fname1, char *fname
#if HAVE_LINK
int do_link(char *fname1, char *fname2)
Do we need configure support for mktime()?
---- io.c 9 Jun 2004 03:07:50 -0000 1.129
-+++ io.c 18 Jun 2004 17:38:20 -0000
+--- orig/io.c 2004-06-23 01:13:56
++++ io.c 2004-07-03 20:23:22
@@ -44,6 +44,7 @@ static int io_multiplexing_in;
static int multiplex_in_fd = -1;
static int multiplex_out_fd = -1;
if (last_io && io_timeout && (t-last_io) >= io_timeout) {
if (!am_server && !am_daemon) {
rprintf(FERROR, "io timeout after %d seconds - exiting\n",
---- options.c 7 Jun 2004 22:05:22 -0000 1.156
-+++ options.c 18 Jun 2004 17:38:21 -0000
+--- orig/options.c 2004-06-20 19:30:00
++++ options.c 2004-07-03 20:23:22
@@ -95,6 +95,7 @@ int modify_window = 0;
int blocking_io = -1;
int checksum_seed = 0;
if (backup_dir) {
args[ac++] = "--backup-dir";
args[ac++] = backup_dir;
---- rsync.yo 5 Jun 2004 16:16:30 -0000 1.171
-+++ rsync.yo 18 Jun 2004 17:38:21 -0000
+--- orig/rsync.yo 2004-06-17 06:32:00
++++ rsync.yo 2004-07-03 20:23:22
@@ -347,6 +347,8 @@ verb(
--log-format=FORMAT log file transfers using specified format
--password-file=FILE get password from FILE
dit(bf(--write-batch=PREFIX)) Generate a set of files that can be
transferred as a batch update. Each filename in the set starts with
PREFIX. See the "BATCH MODE" section for details.
---- util.c 9 Jun 2004 21:51:07 -0000 1.149
-+++ util.c 18 Jun 2004 17:38:22 -0000
+--- orig/util.c 2004-06-09 21:54:47
++++ util.c 2004-07-03 20:23:22
@@ -125,6 +125,132 @@ void overflow(char *str)
exit_cleanup(RERR_MALLOC);
}
This is an adapted version of the original by Zoong Pham.
---- rsync.h 16 May 2004 07:28:24 -0000 1.204
-+++ rsync.h 18 Jun 2004 17:38:35 -0000
+--- orig/lib/getaddrinfo.c 2004-03-16 01:26:36
++++ lib/getaddrinfo.c 2004-06-18 17:38:35
+@@ -41,6 +41,20 @@
+
+ #include <rsync.h>
+
++/****** Start Zoong added here */
++
++#define EAI_BADHINTS 12
++#define EAI_PROTOCOL 13
++#define EAI_MAX 14
++
++#define AI_PASSIVE 0x00000001 /* get address to use bind() */
++#define AI_CANONNAME 0x00000002 /* fill ai_canonname */
++#define AI_NUMERICHOST 0x00000004 /* prevent name resolution */
++#define AI_MASK (AI_PASSIVE | AI_CANONNAME | AI_NUMERICHOST)
++
++/****** End Zoong added here */
++
++
+ #if defined(__KAME__) && defined(INET6)
+ # define FAITH
+ #endif
+--- orig/rsync.h 2004-05-16 07:58:12
++++ rsync.h 2004-07-03 20:23:33
@@ -159,6 +159,11 @@ enum msgcode {
#include <sys/socket.h>
#endif
#ifdef HAVE_STRING_H
#include <string.h>
#endif
---- syscall.c 18 Feb 2004 22:33:21 -0000 1.30
-+++ syscall.c 18 Jun 2004 17:38:35 -0000
+--- orig/syscall.c 2004-02-18 22:33:21
++++ syscall.c 2004-06-18 17:38:35
@@ -76,6 +76,29 @@ int do_mknod(char *pathname, mode_t mode
{
if (dry_run) return 0;
return mknod(pathname, mode, dev);
}
#endif
---- lib/getaddrinfo.c 16 Mar 2004 01:26:36 -0000 1.20
-+++ lib/getaddrinfo.c 18 Jun 2004 17:38:35 -0000
-@@ -41,6 +41,20 @@
-
- #include <rsync.h>
-
-+/****** Start Zoong added here */
-+
-+#define EAI_BADHINTS 12
-+#define EAI_PROTOCOL 13
-+#define EAI_MAX 14
-+
-+#define AI_PASSIVE 0x00000001 /* get address to use bind() */
-+#define AI_CANONNAME 0x00000002 /* fill ai_canonname */
-+#define AI_NUMERICHOST 0x00000004 /* prevent name resolution */
-+#define AI_MASK (AI_PASSIVE | AI_CANONNAME | AI_NUMERICHOST)
-+
-+/****** End Zoong added here */
-+
-+
- #if defined(__KAME__) && defined(INET6)
- # define FAITH
- #endif