Wayne Davison [Fri, 28 Jan 2005 18:50:54 +0000 (18:50 +0000)]
- Changed the main core of system include files to use the same "#if"
idioms that configure uses.
- Use "#if" (not "#ifdef") for configure-defined macros.
- Use "#if !" (not "#ifndef") for configure-defined macros.
Wayne Davison [Fri, 28 Jan 2005 17:10:16 +0000 (17:10 +0000)]
- Moved read_only variable here from options.c
- Set read_only to 1 if the module is read-only.
- Make sure that the verbose level is 0 before we parse the client's
options.
Wayne Davison [Fri, 28 Jan 2005 07:39:09 +0000 (07:39 +0000)]
Added back support for the --delete-before option so that future
verions of rsync can more easily change the default that --delete
implies and still support explicit --delete-before functionality
when interacting with older versions.
Wayne Davison [Fri, 28 Jan 2005 06:45:16 +0000 (06:45 +0000)]
- Switched the int64 code over to using the improved SIZEOF_*
macros.
- Define SIZEOF_INT64 to a value that is useable at compile time.
- Got rid of INT64_IS_OFF_T.
Wayne Davison [Fri, 28 Jan 2005 02:00:40 +0000 (02:00 +0000)]
- Made some of the tests work better when cross-compiling.
- Added descriptions for all config.h variables that had none.
- Changed HAVE_UNSIGNED_CHAR to SIGNED_CHAR_OK.
- Got rid of (the unused) HAVE_SHORT_INO_T.
- Changed version to 2.6.4cvs (long overdue).
Wayne Davison [Tue, 25 Jan 2005 12:13:53 +0000 (12:13 +0000)]
- Use the "--filter=._-" option instead of --exclude-from=- if the
protocol being saved is >= 29.
- Call the new get_rule_prefix() function to figure out the right
rule prefix.
- Strip out the --filter and -f options from the cached command-line.
Wayne Davison [Tue, 25 Jan 2005 12:10:31 +0000 (12:10 +0000)]
- Moved the code that turns rule flags into chars into a new
function called get_rule_prefix().
- Don't pass the per-dir .cvsignore rule from -C for protocols < 29.
Wayne Davison [Tue, 25 Jan 2005 12:05:20 +0000 (12:05 +0000)]
- The call to delete_file() needs DEL_NO_RECURSE when handling
delete_before or delete_after or --dry-run will report too
many deletions.
- Changed DEL_RECURSE to DEL_FORCE_RECURSE.
Wayne Davison [Tue, 25 Jan 2005 03:09:06 +0000 (03:09 +0000)]
Mention that --del is a popt alias for --delete-during, so there's
no need to refuse "del" by name -- just refusing "delete-during" or
"delete*" is sufficient.
Wayne Davison [Tue, 25 Jan 2005 03:08:58 +0000 (03:08 +0000)]
- Changed --delete to go back to defaulting to the delete-before
functionality.
- Got rid of --delete-before.
- Added --delete-during.
- Added a popt alias for --delete-during: --del.
- Fixed a bug in the generation of the proper --delete options
for the server.
- Generate an error if the user tries to specify both --delete-during
and --delete-after.
Wayne Davison [Tue, 25 Jan 2005 00:52:59 +0000 (00:52 +0000)]
Some changes to support the new --filter option:
- Changed XFLG_WORDS_ONLY to XFLG_NO_PREFIXES.
- Added XFLG_DEF_EXCLUDE and XFLG_ABS_PATH.
- Added some new MATCHFLG_* values for the new merge-file support.
- Put the "slash_cnt" var (in the exclude_struct) into a union with
the new megelist pointer.
Wayne Davison [Tue, 25 Jan 2005 00:52:50 +0000 (00:52 +0000)]
The calls into the exclude system changed a little for the new --filter
option:
- The special handling for cvs_exclude went away.
- Call push_local_excludes() and pop_local_excludes() instead of fiddling
with the (no longer present) local_exclude_list var.
Wayne Davison [Tue, 25 Jan 2005 00:52:47 +0000 (00:52 +0000)]
Implemented the core of the merge-file and per-dir merge-file support
for the --filter option. Some noteworthy changes:
- Added push_local_excludes() and pop_local_excludes() to implement
the changes needed as we go from directory to directory (this takes
the place of the old local_exclude_list var that only handled the
.cvsignore files). These per-dir excludes are linked into the same
exclude list as the global excludes.
- The exclude list is transferred as filter rules to an rsync that
talks protocol 29 or above. It limits itself to just include/exclude
rules for older rsyncs.
Wayne Davison [Tue, 25 Jan 2005 00:52:44 +0000 (00:52 +0000)]
Some exclude changes for the new --filter option, including:
- Added module_dirlen var.
- Call set_excludes_dir() instead of setting exclude_path_prefix.
- Use the newest XFLG_* options.
Wayne Davison [Mon, 24 Jan 2005 01:41:51 +0000 (01:41 +0000)]
Moved a call to add_cvs_exclude() from the delete code to one code-
path in this file. This avoids a potential duplication of the
cvs-excludes that would occur in the old logic.
Wayne Davison [Sat, 22 Jan 2005 22:48:34 +0000 (22:48 +0000)]
- We now set a delete_before variable for the --delete option.
- Reordered some of the options in the --help list.
- Made the popt-handling of the delete options simpler.
- Parse the new --keep-dirs option.
- Parse the new --list-only option.
- Set recurse to -1 (infinite) for the -r and -a options.
- Set keep_dirs for --list-only.
Wayne Davison [Sat, 22 Jan 2005 22:48:31 +0000 (22:48 +0000)]
- Implemented a new handling of the recurse variable: if it is
< 0, it specifies infinite recursion, otherwise it contains a
count of how many levels of recursion we will allow.
- If the user is processing/listing a non-recursive directory/
arg, send the contents.
Wayne Davison [Sat, 22 Jan 2005 22:48:27 +0000 (22:48 +0000)]
- Mustn't override a user-specified list_only value.
- Moved the computing of the options for the server down until
after we've figured out the protocol_version for the transfer.
- If we're talking to a protocol-29 server in list-only mode,
force the new --list-only mode (which avoids the -r with
--exclude="/*/*" kluge).
- Output the options we sent to the daemon if verbose > 1.
Wayne Davison [Thu, 20 Jan 2005 23:51:57 +0000 (23:51 +0000)]
In delete_file(): got rid of DEL_NO_RECURSE code and added
DEL_RECURSE code. Improved the verbose output of a recursively
deleted directory when --dry-run is specified.