dblog.c file has a compile problem, it's probably my fault...)
+--- Makefile.in 10 Feb 2004 17:06:11 -0000 1.98
++++ Makefile.in 24 Apr 2004 08:14:37 -0000
+@@ -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
+ 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
++ main.o checksum.o match.o syscall.o log.o backup.o @EXTRA_OBJECT@
+ 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
--- /dev/null 1 Jan 1970 00:00:00 -0000
-+++ README-ODBC 2004-04-07 22:42:28.000000000 -0700
++++ README-ODBC 24 Apr 2004 08:14:37 -0000
@@ -0,0 +1,80 @@
+This patch adds the following options:
+
+row is inserted (as is done when the session ID is automatically generates
+unique IDs).
+Defaults to True.
---- Makefile.in 10 Feb 2004 17:06:11 -0000 1.98
-+++ Makefile.in 8 Apr 2004 05:56:31 -0000
-@@ -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
- 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
-+ main.o checksum.o match.o syscall.o log.o backup.o @EXTRA_OBJECT@
- 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 27 Jan 2004 08:14:33 -0000 1.21
-+++ cleanup.c 8 Apr 2004 05:56:31 -0000
++++ cleanup.c 24 Apr 2004 08:14:37 -0000
@@ -138,7 +138,12 @@ void _exit_cleanup(int code, const char
code = RERR_VANISHED;
}
if (verbose > 2)
rprintf(FINFO,"_exit_cleanup(code=%d, file=%s, line=%d): about to call exit(%d)\n",
--- clientserver.c 14 Apr 2004 23:33:34 -0000 1.121
-+++ clientserver.c 15 Apr 2004 18:51:14 -0000
++++ clientserver.c 24 Apr 2004 08:14:37 -0000
@@ -311,6 +311,9 @@ static int rsync_module(int f_in, int f_
exclude_path_prefix = NULL;
rprintf(FINFO,"rsync %s %s from %s (%s)\n",
am_sender?"on":"to",
--- configure.in 17 Apr 2004 18:40:16 -0000 1.191
-+++ configure.in 15 Apr 2004 18:51:14 -0000
++++ configure.in 24 Apr 2004 08:14:38 -0000
@@ -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])
--- /dev/null 1 Jan 1970 00:00:00 -0000
-+++ dblog.c 2004-04-07 23:18:56.000000000 -0700
++++ dblog-tables-mysql.sql 24 Apr 2004 08:14:38 -0000
+@@ -0,0 +1,43 @@
++drop table transfer;
++drop table exit;
++drop table session;
++
++CREATE TABLE session (
++ id int auto_increment NOT NULL,
++ date timestamp NOT NULL,
++ ip_address varchar(15) NOT NULL,
++ username varchar(20) NOT NULL,
++ module_name varchar(20) NOT NULL,
++ module_path varchar(255) NOT NULL,
++ process_id int NOT NULL,
++ Primary Key (id)
++);
++
++CREATE TABLE transfer (
++ id int auto_increment NOT NULL,
++ session_id int NOT NULL,
++ date timestamp NOT NULL,
++ file_path varchar(255) NOT NULL,
++ file_name varchar(255) NOT NULL,
++ file_size bigint NOT NULL,
++ bytes_transferred bigint NOT NULL,
++ checksum_bytes_transferred bigint NOT NULL,
++ operation varchar(20),
++ Primary Key (id),
++ foreign key (session_id) references session (id)
++);
++
++CREATE TABLE exit (
++ id int auto_increment NOT NULL,
++ session_id int NOT NULL,
++ date timestamp NOT NULL,
++ total_bytes_written bigint NOT NULL,
++ total_bytes_read bigint NOT NULL,
++ total_size bigint NOT NULL,
++ error_text varchar(128) NOT NULL,
++ error_code int NOT NULL,
++ error_file varchar(64) NOT NULL,
++ error_line int NOT NULL,
++ Primary Key (id),
++ foreign key (session_id) references session (id)
++);
+--- /dev/null 1 Jan 1970 00:00:00 -0000
++++ dblog-tables-postgresql.sql 24 Apr 2004 08:14:38 -0000
+@@ -0,0 +1,45 @@
++drop table transfer;
++drop table exit;
++drop table session;
++drop sequence session_id_seq;
++create sequence session_id_seq;
++
++CREATE TABLE "session" (
++ "id" int NOT NULL,
++ "date" timestamp NOT NULL default now(),
++ "ip_address" varchar(15) NOT NULL,
++ "username" varchar(20) NOT NULL,
++ "module_name" varchar(20) NOT NULL,
++ "module_path" varchar(255) NOT NULL,
++ "process_id" int NOT NULL,
++ Primary Key (id)
++);
++
++CREATE TABLE "transfer" (
++ "id" serial NOT NULL,
++ "session_id" int NOT NULL,
++ "date" timestamp NOT NULL default now(),
++ "file_path" varchar(512) NOT NULL,
++ "file_name" varchar(512) NOT NULL,
++ "file_size" bigint NOT NULL,
++ "bytes_transferred" bigint NOT NULL,
++ "checksum_bytes_transferred" bigint NOT NULL,
++ "operation" varchar(20),
++ Primary Key (id),
++ foreign key (session_id) references session (id)
++);
++
++CREATE TABLE "exit" (
++ "id" serial NOT NULL,
++ "session_id" int NOT NULL,
++ "date" timestamp NOT NULL default now(),
++ "total_bytes_written" bigint NOT NULL,
++ "total_bytes_read" bigint NOT NULL,
++ "total_size" bigint NOT NULL,
++ "error_text" varchar(128) NOT NULL,
++ "error_code" int NOT NULL,
++ "error_file" varchar(64) NOT NULL,
++ "error_line" int NOT NULL,
++ Primary Key (id),
++ foreign key (session_id) references session (id)
++);
+--- /dev/null 1 Jan 1970 00:00:00 -0000
++++ dblog.c 24 Apr 2004 08:14:38 -0000
@@ -0,0 +1,352 @@
+/*
+ * ODBC Database logging functions
+ rprintf(FERROR,"Error at db_log_exit: Not connected to database!\n");
+ }
+}
---- /dev/null 1 Jan 1970 00:00:00 -0000
-+++ dblog-tables-mysql.sql 2004-04-07 23:00:13.000000000 -0700
-@@ -0,0 +1,43 @@
-+drop table transfer;
-+drop table exit;
-+drop table session;
-+
-+CREATE TABLE session (
-+ id int auto_increment NOT NULL,
-+ date timestamp NOT NULL,
-+ ip_address varchar(15) NOT NULL,
-+ username varchar(20) NOT NULL,
-+ module_name varchar(20) NOT NULL,
-+ module_path varchar(255) NOT NULL,
-+ process_id int NOT NULL,
-+ Primary Key (id)
-+);
-+
-+CREATE TABLE transfer (
-+ id int auto_increment NOT NULL,
-+ session_id int NOT NULL,
-+ date timestamp NOT NULL,
-+ file_path varchar(255) NOT NULL,
-+ file_name varchar(255) NOT NULL,
-+ file_size bigint NOT NULL,
-+ bytes_transferred bigint NOT NULL,
-+ checksum_bytes_transferred bigint NOT NULL,
-+ operation varchar(20),
-+ Primary Key (id),
-+ foreign key (session_id) references session (id)
-+);
-+
-+CREATE TABLE exit (
-+ id int auto_increment NOT NULL,
-+ session_id int NOT NULL,
-+ date timestamp NOT NULL,
-+ total_bytes_written bigint NOT NULL,
-+ total_bytes_read bigint NOT NULL,
-+ total_size bigint NOT NULL,
-+ error_text varchar(128) NOT NULL,
-+ error_code int NOT NULL,
-+ error_file varchar(64) NOT NULL,
-+ error_line int NOT NULL,
-+ Primary Key (id),
-+ foreign key (session_id) references session (id)
-+);
---- /dev/null 1 Jan 1970 00:00:00 -0000
-+++ dblog-tables-postgresql.sql 2004-04-07 22:59:55.000000000 -0700
-@@ -0,0 +1,45 @@
-+drop table transfer;
-+drop table exit;
-+drop table session;
-+drop sequence session_id_seq;
-+create sequence session_id_seq;
-+
-+CREATE TABLE "session" (
-+ "id" int NOT NULL,
-+ "date" timestamp NOT NULL default now(),
-+ "ip_address" varchar(15) NOT NULL,
-+ "username" varchar(20) NOT NULL,
-+ "module_name" varchar(20) NOT NULL,
-+ "module_path" varchar(255) NOT NULL,
-+ "process_id" int NOT NULL,
-+ Primary Key (id)
-+);
-+
-+CREATE TABLE "transfer" (
-+ "id" serial NOT NULL,
-+ "session_id" int NOT NULL,
-+ "date" timestamp NOT NULL default now(),
-+ "file_path" varchar(512) NOT NULL,
-+ "file_name" varchar(512) NOT NULL,
-+ "file_size" bigint NOT NULL,
-+ "bytes_transferred" bigint NOT NULL,
-+ "checksum_bytes_transferred" bigint NOT NULL,
-+ "operation" varchar(20),
-+ Primary Key (id),
-+ foreign key (session_id) references session (id)
-+);
-+
-+CREATE TABLE "exit" (
-+ "id" serial NOT NULL,
-+ "session_id" int NOT NULL,
-+ "date" timestamp NOT NULL default now(),
-+ "total_bytes_written" bigint NOT NULL,
-+ "total_bytes_read" bigint NOT NULL,
-+ "total_size" bigint NOT NULL,
-+ "error_text" varchar(128) NOT NULL,
-+ "error_code" int NOT NULL,
-+ "error_file" varchar(64) NOT NULL,
-+ "error_line" int NOT NULL,
-+ Primary Key (id),
-+ foreign key (session_id) references session (id)
-+);
--- loadparm.c 4 Feb 2004 07:31:29 -0000 1.50
-+++ loadparm.c 8 Apr 2004 06:31:18 -0000
++++ loadparm.c 24 Apr 2004 08:14:38 -0000
@@ -122,6 +122,17 @@ typedef struct
BOOL list;
BOOL use_chroot;
FN_LOCAL_BOOL(lp_ignore_nonreadable, ignore_nonreadable)
FN_LOCAL_STRING(lp_uid, uid)
--- log.c 20 Jan 2004 05:15:14 -0000 1.71
-+++ log.c 8 Apr 2004 05:56:32 -0000
++++ log.c 24 Apr 2004 08:14:38 -0000
@@ -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 10 Feb 2004 03:54:47 -0000 1.192
-+++ main.c 8 Apr 2004 05:56:32 -0000
++++ main.c 24 Apr 2004 08:14:38 -0000
@@ -120,6 +120,9 @@ static void report(int f)
if (am_daemon) {
}
--- proto.h 22 Apr 2004 09:58:09 -0000 1.189
-+++ proto.h 15 Apr 2004 18:51:15 -0000
++++ proto.h 24 Apr 2004 08:14:38 -0000
@@ -51,6 +51,12 @@ int start_daemon(int f_in, int f_out);
int daemon_main(void);
void setup_protocol(int f_out,int f_in);
void log_open(void);
void log_close(void);
--- receiver.c 23 Mar 2004 16:50:40 -0000 1.75
-+++ receiver.c 8 Apr 2004 05:56:32 -0000
++++ receiver.c 24 Apr 2004 08:14:39 -0000
@@ -453,7 +453,9 @@ int recv_files(int f_in,struct file_list
recv_ok = receive_data(f_in,mapbuf,fd2,fname,file->length);
if (fd1 != -1) {
close(fd1);
--- sender.c 17 Feb 2004 21:57:44 -0000 1.38
-+++ sender.c 8 Apr 2004 05:56:32 -0000
++++ sender.c 24 Apr 2004 08:14:39 -0000
@@ -283,6 +283,9 @@ void send_files(struct file_list *flist,
} else {
match_sums(f_out, s, buf, st.st_size);
uid_t uid;
gid_t gid;
mode_t mode;
---- rsync.yo 22 Apr 2004 21:35:45 -0000 1.161
-+++ rsync.yo 20 Apr 2004 23:44:18 -0000
+--- rsync.yo 24 Apr 2004 06:16:04 -0000 1.164
++++ rsync.yo 24 Apr 2004 07:33:19 -0000
@@ -299,6 +299,7 @@ verb(
-g, --group preserve group
-D, --devices preserve devices (root only)
-S, --sparse handle sparse files efficiently
-n, --dry-run show what would have been transferred
-W, --whole-file copy whole files, no incremental checks
-@@ -536,6 +537,11 @@ modified cannot be effective; in other w
+@@ -543,6 +544,11 @@ modified cannot be effective; in other w
cause the next transfer to behave as if it used -I, and all files will have
their checksums compared and show up in log messages even if they haven't
changed.
void close_all(void);
void _exit_cleanup(int code, const char *file, int line);
void cleanup_disable(void);
---- rsync.yo 22 Apr 2004 21:35:45 -0000 1.161
-+++ rsync.yo 22 Apr 2004 23:39:44 -0000
+--- rsync.yo 24 Apr 2004 06:16:04 -0000 1.164
++++ rsync.yo 24 Apr 2004 07:32:05 -0000
@@ -299,6 +299,7 @@ verb(
-g, --group preserve group
-D, --devices preserve devices (root only)
-S, --sparse handle sparse files efficiently
-n, --dry-run show what would have been transferred
-W, --whole-file copy whole files, no incremental checks
-@@ -536,6 +537,14 @@ modified cannot be effective; in other w
+@@ -543,6 +544,14 @@ modified cannot be effective; in other w
cause the next transfer to behave as if it used -I, and all files will have
their checksums compared and show up in log messages even if they haven't
changed.
---- exclude.c 22 Apr 2004 22:17:15 -0000 1.71
-+++ exclude.c 22 Apr 2004 10:32:52 -0000
+--- exclude.c 24 Apr 2004 08:00:39 -0000 1.73
++++ exclude.c 24 Apr 2004 08:09:39 -0000
@@ -27,15 +27,17 @@
#include "rsync.h"
extern char curr_dir[];
-struct exclude_list_struct exclude_list = { 0, 0, "" };
--struct exclude_list_struct local_exclude_list = { 0, 0, "local-cvsignore " };
+-struct exclude_list_struct local_exclude_list = { 0, 0, "per-dir .cvsignore " };
-struct exclude_list_struct server_exclude_list = { 0, 0, "server " };
+struct exclude_list_struct exclude_list = { 0, 0, 0, "" };
-+struct exclude_list_struct perdir_exclude_list = { 0, 0, 0, "perdir " };
-+struct exclude_list_struct local_exclude_list = { 0, 0, 0, "local-cvsignore " };
++struct exclude_list_struct perdir_exclude_list = { 0, 0, 0, "per-dir custom " };
++struct exclude_list_struct local_exclude_list = { 0, 0, 0, "per-dir .cvsignore " };
+struct exclude_list_struct server_exclude_list = { 0, 0, 0, "server " };
char *exclude_path_prefix = NULL;
}
static int check_one_exclude(char *name, struct exclude_struct *ex,
-@@ -215,22 +233,25 @@ static void report_exclude_result(char c
+@@ -215,21 +233,24 @@ static void report_exclude_result(char c
/*
- * Return true if file NAME is defined to be excluded by the specified
-- * exclude list. Returns -1 for an exclude, 1 for an include, and 0 if
-- * no match.
-+ * exclude list. Returns -1 for an exclude, 0 for a normal include, or 1
-+ * for a super include.
+ * Return -1 if file "name" is defined to be excluded by the specified
+- * exclude list, 1 if it is included, and 0 if it was not matched.
++ * exclude list, 0 for a normal include, or 1 for a super include.
*/
-int check_exclude(struct exclude_list_struct *listp, char *name, int name_is_dir)
+int check_exclude(struct exclude_list_struct *listp, char *name, int name_is_dir,
}
-@@ -256,10 +277,10 @@ static const char *get_exclude_tok(const
+@@ -255,10 +276,10 @@ static const char *get_exclude_tok(const
p = (const char *)s;
}
s += 2;
} else
*incl_ptr = xflags & XFLG_DEF_INCLUDE;
-@@ -391,8 +412,12 @@ void send_exclude_list(int f)
+@@ -390,8 +411,12 @@ void send_exclude_list(int f)
if (ent->include) {
write_int(f, l + 2);
write_buf(f, "- ", 2);
} else
--- flist.c 22 Apr 2004 22:17:15 -0000 1.216
-+++ flist.c 22 Apr 2004 10:32:52 -0000
++++ flist.c 24 Apr 2004 08:09:39 -0000
@@ -40,6 +40,7 @@ extern int ignore_errors;
extern int numeric_ids;
}
}
--- options.c 17 Apr 2004 17:07:23 -0000 1.147
-+++ options.c 22 Apr 2004 10:32:53 -0000
++++ options.c 24 Apr 2004 08:09:40 -0000
@@ -70,6 +70,7 @@ int am_server = 0;
int am_sender = 0;
int am_generator = 0;
{"links", 'l', POPT_ARG_NONE, &preserve_links, 0, 0, 0 },
{"copy-links", 'L', POPT_ARG_NONE, ©_links, 0, 0, 0 },
--- proto.h 22 Apr 2004 09:58:09 -0000 1.189
-+++ proto.h 22 Apr 2004 10:32:53 -0000
++++ proto.h 24 Apr 2004 08:09:40 -0000
@@ -52,7 +52,10 @@ int daemon_main(void);
void setup_protocol(int f_out,int f_in);
int claim_connection(char *fname,int max_connections);
int xflags);
void add_exclude_file(struct exclude_list_struct *listp, const char *fname,
--- rsync.h 22 Apr 2004 09:58:24 -0000 1.198
-+++ rsync.h 22 Apr 2004 10:32:53 -0000
++++ rsync.h 24 Apr 2004 08:09:40 -0000
@@ -502,6 +502,7 @@ struct exclude_struct {
struct exclude_list_struct {
struct exclude_struct *head;
char *debug_type;
};
---- rsync.yo 22 Apr 2004 21:35:45 -0000 1.161
-+++ rsync.yo 22 Apr 2004 10:32:54 -0000
+--- rsync.yo 24 Apr 2004 06:16:04 -0000 1.164
++++ rsync.yo 24 Apr 2004 08:09:41 -0000
@@ -331,6 +331,7 @@ verb(
--exclude-from=FILE exclude patterns listed in FILE
--include=PATTERN don't exclude files matching PATTERN
--files-from=FILE read FILE for list of source-file names
-0 --from0 all file lists are delimited by nulls
--version print version number
-@@ -675,6 +676,15 @@ dit(bf(--include-from=FILE)) This specif
+@@ -680,6 +681,15 @@ dit(bf(--include-from=FILE)) This specif
from a file.
If em(FILE) is bf(-) the list will be read from standard input.
dit(bf(--files-from=FILE)) Using this option allows you to specify the
exact list of files to transfer (as read from the specified FILE or "-"
for stdin). It also tweaks the default behavior of rsync to make
-@@ -714,7 +724,8 @@ was located on the remote "src" host.
+@@ -719,7 +729,8 @@ was located on the remote "src" host.
dit(bf(-0, --from0)) This tells rsync that the filenames it reads from a
file are terminated by a null ('\0') character, not a NL, CR, or CR+LF.
It does not affect --cvs-exclude (since all names read from a .cvsignore
file are split on whitespace).
-@@ -1001,6 +1012,12 @@ itemize(
+@@ -1011,6 +1022,12 @@ itemize(
it() if the pattern starts with "- " (a minus followed by a space)
then it is always considered an exclude pattern, even if specified as
part of an include option. The prefix is discarded before matching.
it() if the pattern is a single exclamation mark ! then the current
include/exclude list is reset, removing all previously defined patterns.
--- t_stub.c 22 Apr 2004 09:58:11 -0000 1.7
-+++ t_stub.c 22 Apr 2004 10:32:54 -0000
++++ t_stub.c 24 Apr 2004 08:09:41 -0000
@@ -46,7 +46,7 @@ struct exclude_list_struct server_exclud
}
/* This function doesn't really get called in this test context, so
* just return 0. */
--- util.c 22 Apr 2004 22:17:15 -0000 1.138
-+++ util.c 22 Apr 2004 10:32:54 -0000
++++ util.c 24 Apr 2004 08:09:41 -0000
@@ -476,7 +476,7 @@ static int exclude_server_path(char *arg
if (server_exclude_list.head) {
for (s = arg; (s = strchr(s, '/')) != NULL; ) {
--- io.c 16 Jan 2004 16:31:47 -0000 1.119
-+++ io.c 23 Feb 2004 18:16:25 -0000
++++ io.c 24 Apr 2004 07:35:03 -0000
@@ -222,6 +222,14 @@ static void read_msg_fd(void)
read_loop(fd, buf, 4);
redo_list_add(IVAL(buf,0));
case MSG_INFO:
case MSG_ERROR:
--- main.c 10 Feb 2004 03:54:47 -0000 1.192
-+++ main.c 23 Feb 2004 18:16:25 -0000
++++ main.c 24 Apr 2004 07:35:04 -0000
@@ -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 14 Apr 2004 23:33:34 -0000 1.146
-+++ options.c 15 Apr 2004 19:11:00 -0000
+--- options.c 17 Apr 2004 17:07:23 -0000 1.147
++++ options.c 24 Apr 2004 07:35:04 -0000
@@ -84,6 +84,7 @@ int copy_unsafe_links = 0;
int size_only = 0;
int bwlimit = 0;
*argc = ac;
return;
---- proto.h 14 Apr 2004 23:33:30 -0000 1.188
-+++ proto.h 15 Apr 2004 19:11:00 -0000
+--- proto.h 22 Apr 2004 09:58:09 -0000 1.189
++++ proto.h 24 Apr 2004 07:35:04 -0000
@@ -197,6 +197,7 @@ void sig_int(void);
void finish_transfer(char *fname, char *fnametmp, struct file_struct *file);
const char *who_am_i(void);
int try_bind_local(int s, int ai_family, int ai_socktype,
const char *bind_address);
--- receiver.c 23 Mar 2004 16:50:40 -0000 1.75
-+++ receiver.c 15 Apr 2004 19:11:01 -0000
++++ receiver.c 24 Apr 2004 07:35:04 -0000
@@ -45,6 +45,7 @@ extern int cleanup_got_literal;
extern int module_id;
extern int ignore_errors;
}
}
}
---- rsync.h 14 Apr 2004 23:33:37 -0000 1.196
-+++ rsync.h 15 Apr 2004 19:11:02 -0000
+--- rsync.h 22 Apr 2004 09:58:24 -0000 1.198
++++ rsync.h 24 Apr 2004 07:35:04 -0000
@@ -60,6 +60,7 @@
#define FLAG_TOP_DIR (1<<0)
#define FLAG_HLINK_EOL (1<<1) /* generator only */
};
#include "errcode.h"
---- rsync.yo 15 Apr 2004 18:32:24 -0000 1.157
-+++ rsync.yo 15 Apr 2004 19:11:02 -0000
-@@ -312,6 +312,7 @@
+--- rsync.yo 24 Apr 2004 06:16:04 -0000 1.164
++++ rsync.yo 24 Apr 2004 07:35:05 -0000
+@@ -312,6 +312,7 @@ verb(
--delete delete files that don't exist on sender
--delete-excluded also delete excluded files on receiver
--delete-after receiver deletes after transfer, not before
--ignore-errors delete even if there are I/O errors
--max-delete=NUM don't delete more than NUM files
--partial keep partially transferred files
-@@ -587,6 +588,11 @@
+@@ -594,6 +595,11 @@ dit(bf(--delete-after)) By default rsync
receiving side before transferring files to try to ensure that there is
sufficient space on the receiving filesystem. If you want to delete
after transferring, use the --delete-after switch. Implies --delete.
dit(bf(--ignore-errors)) Tells --delete to go ahead and delete files
even when there are I/O errors.
--- sender.c 17 Feb 2004 21:57:44 -0000 1.38
-+++ sender.c 23 Feb 2004 18:16:27 -0000
++++ sender.c 24 Apr 2004 07:35:05 -0000
@@ -27,6 +27,7 @@ extern int dry_run;
extern int am_server;
extern int am_daemon;
--- io.c 16 Jan 2004 16:31:47 -0000 1.119
-+++ io.c 2004-04-19 16:07:57.000000000 -0400
++++ io.c 24 Apr 2004 07:49:11 -0000
@@ -47,6 +47,7 @@ static time_t last_io;
static int no_flush;
total += ret;
--- options.c 17 Apr 2004 17:07:23 -0000 1.147
-+++ options.c 2004-04-19 16:07:57.000000000 -0400
++++ options.c 24 Apr 2004 07:49:11 -0000
@@ -83,6 +83,7 @@ int safe_symlinks = 0;
int copy_unsafe_links = 0;
int size_only = 0;
args[ac++] = arg;
}
--- proto.h 22 Apr 2004 09:58:09 -0000 1.189
-+++ proto.h 2004-04-19 16:07:57.000000000 -0400
++++ proto.h 24 Apr 2004 07:49:11 -0000
@@ -266,6 +266,7 @@ int u_strcmp(const char *cs1, const char
int unsafe_symlink(const char *dest, const char *src);
char *timestring(time_t t);
int cmp_modtime(time_t file1, time_t file2);
int _Insure_trap_error(int a1, int a2, int a3, int a4, int a5, int a6);
void *_new_array(unsigned int size, unsigned long num);
---- rsync.yo 22 Apr 2004 21:35:45 -0000 1.161
-+++ rsync.yo 19 Apr 2004 20:50:45 -0000
+--- rsync.yo 24 Apr 2004 06:16:04 -0000 1.164
++++ rsync.yo 24 Apr 2004 07:49:12 -0000
@@ -346,6 +346,7 @@ verb(
--log-format=FORMAT log file transfers using specified format
--password-file=FILE get password from FILE
--write-batch=PREFIX write batch fileset starting with PREFIX
--read-batch=PREFIX read batch fileset starting with PREFIX
-h, --help show this help screen
-@@ -883,6 +884,10 @@ of rsync transfers, blocks of data are s
+@@ -888,6 +889,10 @@ of rsync transfers, blocks of data are s
transfer was too fast, it will wait before sending the next data block. The
result is an average transfer rate equaling the specified limit. A value
of zero specifies no limit.
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
--- util.c 22 Apr 2004 22:17:15 -0000 1.138
-+++ util.c 2004-04-19 16:07:57.000000000 -0400
++++ util.c 24 Apr 2004 07:49:12 -0000
@@ -1049,6 +1049,21 @@ int msleep(int t)
return True;
}