Updated.
[rsync/rsync-patches.git] / max-size.diff
index 73fe830..25a28de 100644 (file)
@@ -1,4 +1,4 @@
---- orig/generator.c   2004-07-15 02:21:10
+--- orig/generator.c   2004-08-05 18:24:21
 +++ generator.c        2004-07-03 20:20:46
 @@ -39,6 +39,7 @@ extern int opt_ignore_existing;
  extern int csum_length;
@@ -8,9 +8,9 @@
  extern int io_timeout;
  extern int protocol_version;
  extern int always_checksum;
-@@ -325,6 +326,10 @@ static void recv_generator(char *fname, 
+@@ -333,6 +334,10 @@ static void recv_generator(char *fname, 
                    && verbose && f_out != -1)
-                       rprintf(FINFO,"%s/\n",fname);
+                       rprintf(FINFO, "%s/\n", safe_fname(fname));
                return;
 +      } else if (max_size && file->length > max_size) {
 +              if (verbose > 1)
@@ -18,9 +18,9 @@
 +              return;
        }
  
-       if (read_batch)
---- orig/options.c     2004-07-15 16:51:50
-+++ options.c  2004-07-15 02:34:44
+       if (preserve_links && S_ISLNK(file->mode)) {
+--- orig/options.c     2004-08-12 18:34:38
++++ options.c  2004-08-13 18:26:04
 @@ -90,6 +90,7 @@ int delete_after = 0;
  int only_existing = 0;
  int opt_ignore_existing = 0;
@@ -29,7 +29,7 @@
  int ignore_errors = 0;
  int modify_window = 0;
  int blocking_io = -1;
-@@ -138,6 +139,7 @@ char *batch_name = NULL;
+@@ -140,6 +141,7 @@ char *batch_name = NULL;
  
  static int daemon_opt;   /* sets am_daemon after option error-reporting */
  static int modify_window_set;
  
  /** Local address to bind.  As a character string because it's
   * interpreted by the IPv6 layer: should be a numeric IP4 or IP6
-@@ -259,6 +261,7 @@ void usage(enum logcode F)
+@@ -268,6 +270,7 @@ void usage(enum logcode F)
    rprintf(F,"     --delete-after          receiver deletes after transferring, not before\n");
    rprintf(F,"     --ignore-errors         delete even if there are I/O errors\n");
    rprintf(F,"     --max-delete=NUM        don't delete more than NUM files\n");
 +  rprintf(F,"     --max-size=SIZE         don't transfer any file larger than SIZE\n");
    rprintf(F,"     --partial               keep partially transferred files\n");
+   rprintf(F,"     --partial-dir=DIR       put a partially transferred file into DIR\n");
    rprintf(F,"     --force                 force deletion of directories even if not empty\n");
-   rprintf(F,"     --numeric-ids           don't map uid/gid values by user/group name\n");
-@@ -309,7 +312,7 @@ void usage(enum logcode F)
+@@ -319,7 +322,7 @@ void usage(enum logcode F)
  enum {OPT_VERSION = 1000, OPT_SENDER, OPT_EXCLUDE, OPT_EXCLUDE_FROM,
        OPT_DELETE_AFTER, OPT_DELETE_EXCLUDED, OPT_LINK_DEST,
        OPT_INCLUDE, OPT_INCLUDE_FROM, OPT_MODIFY_WINDOW,
@@ -54,7 +54,7 @@
        OPT_REFUSED_BASE = 9000};
  
  static struct poptOption long_options[] = {
-@@ -363,6 +366,7 @@ static struct poptOption long_options[] 
+@@ -374,6 +377,7 @@ static struct poptOption long_options[] 
    {"rsh",             'e', POPT_ARG_STRING, &shell_cmd, 0, 0, 0 },
    {"block-size",      'B', POPT_ARG_INT,    &block_size, 0, 0, 0 },
    {"max-delete",       0,  POPT_ARG_INT,    &max_delete, 0, 0, 0 },
@@ -62,7 +62,7 @@
    {"timeout",          0,  POPT_ARG_INT,    &io_timeout, OPT_TIMEOUT, 0, 0 },
    {"temp-dir",        'T', POPT_ARG_STRING, &tmpdir, 0, 0, 0 },
    {"compare-dest",     0,  POPT_ARG_STRING, &compare_dest, 0, 0, 0 },
-@@ -577,6 +581,32 @@ int parse_arguments(int *argc, const cha
+@@ -604,6 +608,33 @@ int parse_arguments(int *argc, const cha
                        read_batch = 1;
                        break;
  
@@ -86,7 +86,8 @@
 +                              break;
 +                      default:
 +                              rprintf(FERROR,
-+                                      "--max-size value is invalid.\n");
++                                      "--max-size value is invalid: %s\n",
++                                      max_size_arg);
 +                              exit_cleanup(RERR_SYNTAX);
 +                              break;
 +                      }
@@ -95,7 +96,7 @@
                case OPT_TIMEOUT:
                        if (io_timeout && io_timeout < select_timeout)
                                select_timeout = io_timeout;
-@@ -883,6 +913,11 @@ void server_options(char **args,int *arg
+@@ -983,6 +1014,11 @@ void server_options(char **args,int *arg
                args[ac++] = arg;
        }
  
        if (io_timeout) {
                if (asprintf(&arg, "--timeout=%d", io_timeout) < 0)
                        goto oom;
---- orig/rsync.yo      2004-07-15 02:21:11
+--- orig/rsync.yo      2004-08-13 07:18:59
 +++ rsync.yo   2004-07-03 20:20:46
-@@ -315,6 +315,7 @@ verb(
+@@ -345,6 +345,7 @@ verb(
       --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
 +     --max-size=SIZE         don't transfer any file larger than SIZE
       --partial               keep partially transferred files
+      --partial-dir=DIR       put a partially transferred file into DIR
       --force                 force deletion of dirs even if not empty
-      --numeric-ids           don't map uid/gid values by user/group name
-@@ -577,6 +578,11 @@ dit(bf(--max-delete=NUM)) This tells rsy
+@@ -628,6 +629,11 @@ dit(bf(--max-delete=NUM)) This tells rsy
  files or directories. This is useful when mirroring very large trees
  to prevent disasters.