This adds the --ignore-case option, which makes rsync compare filenames
in a case-insensitive manner.
---- orig/lib/wildmatch.c 2003-07-14 15:12:59
+--- orig/lib/wildmatch.c 2005-01-28 21:01:21
+++ lib/wildmatch.c 2004-08-13 16:43:27
@@ -53,6 +53,8 @@
#define ISUPPER(c) (ISASCII(c) && isupper(c))
#ifdef WILD_TEST_ITERATIONS
int wildmatch_iteration_count;
#endif
-@@ -76,9 +78,19 @@ static int domatch(const unsigned char *
+@@ -76,9 +78,19 @@ static int domatch(const uchar *p, const
ch = *++p;
/* FALLTHROUGH */
default:
case '?':
/* Match anything but '/'. */
if (*text == '/')
---- orig/options.c 2004-08-12 18:34:38
-+++ options.c 2004-07-29 16:13:45
-@@ -92,6 +92,7 @@ int opt_ignore_existing = 0;
- int max_delete = 0;
+--- orig/options.c 2005-10-15 16:39:46
++++ options.c 2005-10-14 19:19:18
+@@ -102,6 +102,7 @@ OFF_T max_size = 0;
+ OFF_T min_size = 0;
int ignore_errors = 0;
int modify_window = 0;
+int ignore_case = 0;
int blocking_io = -1;
int checksum_seed = 0;
int inplace = 0;
-@@ -288,6 +289,7 @@ void usage(enum logcode F)
- rprintf(F," --include-from=FILE don't exclude patterns listed in FILE\n");
- rprintf(F," --files-from=FILE read FILE for list of source-file names\n");
- rprintf(F," -0, --from0 all *-from file lists are delimited by nulls\n");
+@@ -334,6 +335,7 @@ void usage(enum logcode F)
+ rprintf(F," --include-from=FILE read include patterns from FILE\n");
+ rprintf(F," --files-from=FILE read list of source-file names from FILE\n");
+ rprintf(F," -0, --from0 all *-from/filter files are delimited by 0s\n");
+ rprintf(F," --ignore-case ignore case when comparing filenames\n");
- rprintf(F," --version print version number\n");
- rprintf(F," --daemon run as an rsync daemon\n");
- rprintf(F," --no-detach do not detach from the parent\n");
-@@ -343,6 +345,7 @@ static struct poptOption long_options[]
- {"include", 0, POPT_ARG_STRING, 0, OPT_INCLUDE, 0, 0 },
- {"exclude-from", 0, POPT_ARG_STRING, 0, OPT_EXCLUDE_FROM, 0, 0 },
- {"include-from", 0, POPT_ARG_STRING, 0, OPT_INCLUDE_FROM, 0, 0 },
+ rprintf(F," --address=ADDRESS bind address for outgoing socket to daemon\n");
+ rprintf(F," --port=PORT specify double-colon alternate port number\n");
+ rprintf(F," --blocking-io use blocking I/O for the remote shell\n");
+@@ -471,6 +473,7 @@ static struct poptOption long_options[]
+ {"only-write-batch", 0, POPT_ARG_STRING, &batch_name, OPT_ONLY_WRITE_BATCH, 0, 0 },
+ {"files-from", 0, POPT_ARG_STRING, &files_from, 0, 0, 0 },
+ {"from0", '0', POPT_ARG_NONE, &eol_nulls, 0, 0, 0},
+ {"ignore-case", 0, POPT_ARG_NONE, &ignore_case, 0, 0, 0 },
- {"safe-links", 0, POPT_ARG_NONE, &safe_symlinks, 0, 0, 0 },
- {"help", 'h', POPT_ARG_NONE, 0, 'h', 0, 0 },
- {"backup", 'b', POPT_ARG_NONE, &make_backups, 0, 0, 0 },
-@@ -1037,6 +1040,9 @@ void server_options(char **args,int *arg
+ {"numeric-ids", 0, POPT_ARG_NONE, &numeric_ids, 0, 0, 0 },
+ {"timeout", 0, POPT_ARG_INT, &io_timeout, 0, 0, 0 },
+ {"rsh", 'e', POPT_ARG_STRING, &shell_cmd, 0, 0, 0 },
+@@ -1521,6 +1524,9 @@ void server_options(char **args,int *arg
args[ac++] = arg;
}
+ args[ac++] = "--ignore-case";
+
if (partial_dir && am_sender) {
- args[ac++] = "--partial-dir";
- args[ac++] = partial_dir;
---- orig/t_stub.c 2004-07-29 16:08:04
-+++ t_stub.c 2004-08-13 17:19:56
-@@ -28,6 +28,7 @@
-
+ if (partial_dir != partialdir_for_delayupdate) {
+ args[ac++] = "--partial-dir";
+--- orig/t_stub.c 2005-10-16 22:38:39
++++ t_stub.c 2005-10-18 08:18:25
+@@ -29,6 +29,7 @@
int modify_window = 0;
int module_id = -1;
+ int relative_paths = 0;
+int ignore_case = 0;
char *partial_dir;
- struct exclude_list_struct server_exclude_list;
+ struct filter_list_struct server_filter_list;
---- orig/util.c 2004-08-13 07:18:59
-+++ util.c 2004-08-13 16:40:34
-@@ -31,6 +31,7 @@ extern int verbose;
- extern int dry_run;
+--- orig/util.c 2005-10-16 22:38:40
++++ util.c 2005-10-18 08:18:39
+@@ -32,6 +32,7 @@ extern int dry_run;
extern int module_id;
extern int modify_window;
+ extern int relative_paths;
+extern int ignore_case;
extern char *partial_dir;
- extern struct exclude_list_struct server_exclude_list;
+ extern struct filter_list_struct server_filter_list;
-@@ -1015,11 +1016,23 @@ int u_strcmp(const char *cs1, const char
+@@ -1044,11 +1045,23 @@ int u_strcmp(const char *cs1, const char
{
const uchar *s1 = (const uchar *)cs1;
const uchar *s2 = (const uchar *)cs2;