X-Git-Url: https://mattmccutchen.net/rsync/rsync-patches.git/blobdiff_plain/f26fcad4caf03bd5748486e3293bf10ac5c01964..36ae7f0bb8bdad791108429219eff845c5732eca:/time-limit.diff diff --git a/time-limit.diff b/time-limit.diff index f71989e..7351306 100644 --- a/time-limit.diff +++ b/time-limit.diff @@ -3,17 +3,17 @@ to be simpler and more efficient by Wayne Davison. Do we need configure support for mktime()? ---- orig/io.c 2005-02-27 18:24:42 -+++ io.c 2005-02-26 05:28:35 -@@ -51,6 +51,7 @@ extern int eol_nulls; - extern int csum_length; - extern int checksum_seed; - extern int protocol_version; -+extern time_t stop_at_utime; - extern char *remote_filesfrom_file; +--- orig/io.c 2005-08-17 06:45:07 ++++ io.c 2005-05-19 09:01:27 +@@ -57,6 +57,7 @@ extern int remove_sent_files; + extern int preserve_hard_links; + extern char *filesfrom_host; extern struct stats stats; ++extern time_t stop_at_utime; + extern struct file_list *the_file_list; -@@ -137,16 +138,24 @@ static void check_timeout(void) + const char phase_unknown[] = "unknown"; +@@ -165,16 +166,24 @@ static void check_timeout(void) { time_t t; @@ -30,20 +30,20 @@ Do we need configure support for mktime()? if (!io_timeout || ignore_timeout) return; - if (!last_io) { -- last_io = time(NULL); -+ last_io = t; + if (!last_io_in) { +- last_io_in = time(NULL); ++ last_io_in = t; return; } - t = time(NULL); - - if (t - last_io >= io_timeout) { + if (t - last_io_in >= io_timeout) { if (!am_server && !am_daemon) { rprintf(FERROR, "io timeout after %d seconds -- exiting\n", ---- orig/options.c 2005-02-25 18:44:31 -+++ options.c 2005-01-28 19:35:23 -@@ -105,6 +105,7 @@ int checksum_seed = 0; +--- orig/options.c 2005-11-15 07:01:03 ++++ options.c 2005-08-27 21:27:57 +@@ -110,6 +110,7 @@ int checksum_seed = 0; int inplace = 0; int delay_updates = 0; long block_size = 0; /* "long" because popt can't set an int32. */ @@ -51,33 +51,33 @@ Do we need configure support for mktime()? /** Network address family. **/ -@@ -341,6 +342,8 @@ void usage(enum logcode F) +@@ -355,6 +356,8 @@ void usage(enum logcode F) rprintf(F," --password-file=FILE read password from FILE\n"); rprintf(F," --list-only list the files instead of copying them\n"); rprintf(F," --bwlimit=KBPS limit I/O bandwidth; KBytes per second\n"); + rprintf(F," --stop-at=y-m-dTh:m Stop rsync at year-month-dayThour:minute\n"); + rprintf(F," --time-limit=MINS Stop rsync after MINS minutes have elapsed\n"); rprintf(F," --write-batch=FILE write a batched update to FILE\n"); + rprintf(F," --only-write-batch=FILE like --write-batch but w/o updating destination\n"); rprintf(F," --read-batch=FILE read a batched update from FILE\n"); - #ifdef INET6 -@@ -358,6 +361,7 @@ enum {OPT_VERSION = 1000, OPT_DAEMON, OP - OPT_FILTER, OPT_COMPARE_DEST, OPT_LINK_DEST, - OPT_INCLUDE, OPT_INCLUDE_FROM, OPT_MODIFY_WINDOW, - OPT_READ_BATCH, OPT_WRITE_BATCH, OPT_TIMEOUT, OPT_MAX_SIZE, +@@ -375,6 +378,7 @@ enum {OPT_VERSION = 1000, OPT_DAEMON, OP + OPT_FILTER, OPT_COMPARE_DEST, OPT_COPY_DEST, OPT_LINK_DEST, OPT_HELP, + OPT_INCLUDE, OPT_INCLUDE_FROM, OPT_MODIFY_WINDOW, OPT_MIN_SIZE, + OPT_READ_BATCH, OPT_WRITE_BATCH, OPT_ONLY_WRITE_BATCH, OPT_MAX_SIZE, + OPT_STOP_AT, OPT_TIME_LIMIT, OPT_REFUSED_BASE = 9000}; static struct poptOption long_options[] = { -@@ -442,6 +446,8 @@ static struct poptOption long_options[] +@@ -476,6 +480,8 @@ static struct poptOption long_options[] {"log-format", 0, POPT_ARG_STRING, &log_format, 0, 0, 0 }, {"itemize-changes", 'i', POPT_ARG_NONE, &itemize_changes, 0, 0, 0 }, {"bwlimit", 0, POPT_ARG_INT, &bwlimit, 0, 0, 0 }, + {"stop-at", 0, POPT_ARG_STRING, 0, OPT_STOP_AT, 0, 0 }, + {"time-limit", 0, POPT_ARG_STRING, 0, OPT_TIME_LIMIT, 0, 0 }, + {"backup", 'b', POPT_ARG_NONE, &make_backups, 0, 0, 0 }, {"backup-dir", 0, POPT_ARG_STRING, &backup_dir, 0, 0, 0 }, - {"hard-links", 'H', POPT_ARG_NONE, &preserve_hard_links, 0, 0, 0 }, - {"read-batch", 0, POPT_ARG_STRING, &batch_name, OPT_READ_BATCH, 0, 0 }, -@@ -854,6 +860,36 @@ int parse_arguments(int *argc, const cha + {"suffix", 0, POPT_ARG_STRING, &backup_suffix, 0, 0, 0 }, +@@ -997,6 +1003,36 @@ int parse_arguments(int *argc, const cha basis_dir[basis_dir_cnt++] = (char *)arg; break; @@ -114,7 +114,7 @@ Do we need configure support for mktime()? default: /* A large opt value means that set_refuse_options() * turned this option off. */ -@@ -1342,6 +1378,15 @@ void server_options(char **args,int *arg +@@ -1523,6 +1559,15 @@ void server_options(char **args,int *arg args[ac++] = arg; } @@ -130,18 +130,18 @@ Do we need configure support for mktime()? if (backup_dir) { args[ac++] = "--backup-dir"; args[ac++] = backup_dir; ---- orig/rsync.yo 2005-02-28 02:16:55 +--- orig/rsync.yo 2005-11-15 07:01:04 +++ rsync.yo 2005-02-01 10:46:35 -@@ -378,6 +378,8 @@ to the detailed description below for a +@@ -381,6 +381,8 @@ to the detailed description below for a --password-file=FILE read password from FILE --list-only list the files instead of copying them --bwlimit=KBPS limit I/O bandwidth; KBytes per second + --stop-at=y-m-dTh:m Stop rsync at year-month-dayThour:minute + --time-limit=MINS Stop rsync after MINS minutes have elapsed --write-batch=FILE write a batched update to FILE + --only-write-batch=FILE like --write-batch but w/o updating dest --read-batch=FILE read a batched update from FILE - --checksum-seed=NUM set block/file checksum seed (advanced) -@@ -1225,6 +1227,19 @@ transfer was too fast, it will wait befo +@@ -1371,6 +1373,19 @@ transfer was too fast, it will wait befo result is an average transfer rate equaling the specified limit. A value of zero specifies no limit. @@ -160,10 +160,10 @@ Do we need configure support for mktime()? + 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-02-23 02:57:27 + section for details, and also the bf(--only-write-batch) option. +--- orig/util.c 2005-11-12 20:13:05 +++ util.c 2004-07-03 20:23:22 -@@ -126,6 +126,132 @@ void overflow(char *str) +@@ -128,6 +128,132 @@ void overflow_exit(char *str) exit_cleanup(RERR_MALLOC); } @@ -295,4 +295,4 @@ Do we need configure support for mktime()? +} - int set_modtime(char *fname, time_t modtime) + int set_modtime(char *fname, time_t modtime, mode_t mode)