Wayne Davison [Tue, 1 Feb 2005 09:45:09 +0000 (09:45 +0000)]
Changed who_am_i() to output "server" or "client" when am_sender
is negative. This will only occur during the startup phase
before we know if we're the sender or not (e.g. when parsing
client-side --filter/--exclude/--include options).
Wayne Davison [Tue, 1 Feb 2005 09:23:59 +0000 (09:23 +0000)]
Make sure the %f expansion handles the new dir.root properly.
Wayne Davison [Tue, 1 Feb 2005 09:21:32 +0000 (09:21 +0000)]
- Made flist_find() and receive_file_entry() static functions.
- Changed receive_file_entry() args.
- We now store the directory depth into file->dir.depth when
receiving the file list. This will be used to aid in the
traversal of the file list on the receiving side for things
such as the future --fuzzy option and better --delete-during
processing.
- Fixed a bug when -R was used with "." as a source directory:
subdirectories were not being promoted to FLAG_DEL_START when
--delete-during was specified.
- Refer to the old basedir variable as dir.root.
- Got rid of the first-push code -- I decided that it wasn't
the right thing to do for per-dir merge-file processing.
- Improved the flist_find() function to make it a little more
optimal. The new code no longer needs the inline function
flist_up().
- In clean_flist() we now set two new values in the flist struct:
"low" and "high". These are used by the new flist_find().
- Tweaked the output_flist() function to output each entry's
flags and to output the directory-depth on the receiving side
in place of the directory-root (which is still output on the
sending side).
Wayne Davison [Tue, 1 Feb 2005 09:21:30 +0000 (09:21 +0000)]
- Put "basedir" into a union "dir" and named it "root". The other
member of the union is "depth".
- Added members "low" and "high" to the file list structure (which
are set when the list is cleaned).
- Got rid of the flist_up() inline function.
Wayne Davison [Tue, 1 Feb 2005 09:21:28 +0000 (09:21 +0000)]
Refer to the old basedir variable as dir.root.
Wayne Davison [Tue, 1 Feb 2005 08:12:00 +0000 (08:12 +0000)]
Fixed a typo in a variable name.
Wayne Davison [Mon, 31 Jan 2005 23:57:35 +0000 (23:57 +0000)]
Changed the "s" modifier to "w" for word-splitting tokens from a
merge filter file. Also sprinkled some bf(...) macros into that
section.
Wayne Davison [Mon, 31 Jan 2005 23:51:54 +0000 (23:51 +0000)]
Changed the "s" modifier to "w" for a word-splitting merge file.
Wayne Davison [Mon, 31 Jan 2005 23:41:08 +0000 (23:41 +0000)]
- Mark references to command-line switches with the bf(...) macro.
- Changed some verb(...) macros to use other yodl idioms because
yodl inserts way too much vertical whitespace surrounding the
item.
- Some items weren't indenting enough in the manpage, though they
were indenting fine in the HTML version, so used some creative
idioms to get things to render well in both.
- Got rid of some empty lines in lists.
- Made several quote(...) items also tt(...).
Wayne Davison [Mon, 31 Jan 2005 19:13:19 +0000 (19:13 +0000)]
Tweaked one or more warning messages.
Wayne Davison [Mon, 31 Jan 2005 18:09:23 +0000 (18:09 +0000)]
Improved the exclude tests to make sure that the filter files
are interacting with --delete-during correctly.
Wayne Davison [Sun, 30 Jan 2005 20:24:11 +0000 (20:24 +0000)]
Added "need_first_push" logic to delete_in_dir().
Wayne Davison [Sun, 30 Jan 2005 10:06:18 +0000 (10:06 +0000)]
The --delete-during processing only happens during the first phase
(not the redo phase). We also call delete_in_dir(NULL, NULL) to
make sure that all the local filter files get popped.
Wayne Davison [Sun, 30 Jan 2005 10:01:21 +0000 (10:01 +0000)]
delete_in_dir() now mananges the push/pop levels of nested
directories properly.
Wayne Davison [Sun, 30 Jan 2005 09:12:55 +0000 (09:12 +0000)]
- Now delete_in_dir() calls send_directory(), not send_file_name().
- Moved the local-list push/pop code out of send_directory() so that
the callers (send_file_name() and delete_in_dir()) can call the
push/pop functions themselves. This is in preparation for
delete_in_dir() getting fully correct push/pop semantics (for
its --delete-during handling of per-dir filter files).
Wayne Davison [Sun, 30 Jan 2005 07:35:13 +0000 (07:35 +0000)]
- Restored the io_error test to delete_files().
- Sanity check the dir_list value from send_file_list().
Wayne Davison [Sat, 29 Jan 2005 22:35:53 +0000 (22:35 +0000)]
- Made delete_files() call send_file_list() and delete_missing()
instead of delete_in_dir().
- Tweaked check in front of delete_files() call.
Wayne Davison [Sat, 29 Jan 2005 22:35:50 +0000 (22:35 +0000)]
If --recurse wasn't specified, turn off all the --delete* options.
Wayne Davison [Sat, 29 Jan 2005 22:35:47 +0000 (22:35 +0000)]
Tweaked check in front of delete_files() call.
Wayne Davison [Sat, 29 Jan 2005 22:35:44 +0000 (22:35 +0000)]
- Improved the handling of -x with -K.
- Changed delete_in_dir() to only be used by the --delete-during
option.
- Added delete_missing() that is used by both delete_files() and
delete_in_dir().
- delete_files() still uses send_file_list(), but delete_in_dir()
now uses send_file_name().
Wayne Davison [Sat, 29 Jan 2005 21:25:44 +0000 (21:25 +0000)]
The --dirs was sending -k instead of -d.
Wayne Davison [Sat, 29 Jan 2005 20:48:27 +0000 (20:48 +0000)]
- Document the new "/" modifier for -/+.
- "=" is no longer a valid separator for a filter rule.
Wayne Davison [Sat, 29 Jan 2005 20:48:23 +0000 (20:48 +0000)]
Renamed XFLG_ABS_PATH XFLG_ANCHORED2ABS.
Wayne Davison [Sat, 29 Jan 2005 20:48:20 +0000 (20:48 +0000)]
Moved the module_id define into clientserver.c.
Wayne Davison [Sat, 29 Jan 2005 20:48:17 +0000 (20:48 +0000)]
- Renamed make_filter() to filter_rule().
- Added the "/" modifier to the -/+ filter rules to allow the
rule to specify an absolute path (sets MATCHFLG_ABS_PATH).
- Added the passing of the xflgags to filter_rule() and key off
XFLG_ANCHORED2ABS to prepend the current dirbuf value (was
keing off MATCHFLG_ABS_PATH).
- We no longer allow a '=' to separate the filter rule from its
arg (just a single space or an underscore).
- For triple verbose levels, mention when we look for a filter
file even if we don't find it (used to only mention the file
when it was found).
- A chrooted daemon process now includes /.cvsignore (inside the
chrooted hierarchy) instead of $HOME/.cvsignore.
Wayne Davison [Sat, 29 Jan 2005 20:48:14 +0000 (20:48 +0000)]
- Moved the module_id definition from options.c to here.
- Use the new XFLG_ANCHORED2ABS name for the old XFLG_ABS_PATH
define.
Wayne Davison [Sat, 29 Jan 2005 20:29:06 +0000 (20:29 +0000)]
Change one call to add_cvs_excludes() to add_filter() to just add
the per-dir .cvsignore rule for protocols < 29.
Wayne Davison [Fri, 28 Jan 2005 23:00:58 +0000 (23:00 +0000)]
A minor change to the HAVE_GETPGRP code.
Wayne Davison [Fri, 28 Jan 2005 22:01:02 +0000 (22:01 +0000)]
Fixed some typos.
Wayne Davison [Fri, 28 Jan 2005 21:48:32 +0000 (21:48 +0000)]
Mention a few more things.
Wayne Davison [Fri, 28 Jan 2005 21:32:20 +0000 (21:32 +0000)]
Pass an unsigned character to isdigit().
Wayne Davison [Fri, 28 Jan 2005 21:28:08 +0000 (21:28 +0000)]
Don't allow the user to specify a filter file that is excluded
by a daemon's config options.
Wayne Davison [Fri, 28 Jan 2005 21:07:05 +0000 (21:07 +0000)]
Got rid of an unreachable free() call.
Wayne Davison [Fri, 28 Jan 2005 21:05:50 +0000 (21:05 +0000)]
Cast each value referenced from the struct mallinfo to a long
in order to print it.
Wayne Davison [Fri, 28 Jan 2005 21:03:50 +0000 (21:03 +0000)]
Don't set unsigned del_heir_name_len to -1 -- it's only used
if in_del_hier is non-zero, so it doesn't need to take on an
invalid value.
Wayne Davison [Fri, 28 Jan 2005 21:02:15 +0000 (21:02 +0000)]
Case uchar pointer to a char pointer when calling strlen().
Wayne Davison [Fri, 28 Jan 2005 21:01:21 +0000 (21:01 +0000)]
- Use "uchar" instead of "unsigned char".
- Tweaked an initializer to try to avoid a compiler warning.
Wayne Davison [Fri, 28 Jan 2005 20:43:09 +0000 (20:43 +0000)]
Call the right stat function based on USE_STAT64_FUNCS.
Wayne Davison [Fri, 28 Jan 2005 20:41:36 +0000 (20:41 +0000)]
Changed direct call to fstat() into a call to do_fstat().
Wayne Davison [Fri, 28 Jan 2005 20:33:55 +0000 (20:33 +0000)]
Use new USE_STAT64_FUNCS define.
Wayne Davison [Fri, 28 Jan 2005 20:32:47 +0000 (20:32 +0000)]
- Use off_t if SIZEOF_OFF_T is 8.
- Define USE_STAT64_FUNCS if we defined STRUCT_STAT as
"struct stat64".
Wayne Davison [Fri, 28 Jan 2005 20:24:23 +0000 (20:24 +0000)]
Changed "char" to "uchar" in delayed_bits's new_array() call.
Wayne Davison [Fri, 28 Jan 2005 20:15:08 +0000 (20:15 +0000)]
Make use of new HAVE_STRUCT_STAT64 define.
Wayne Davison [Fri, 28 Jan 2005 20:15:06 +0000 (20:15 +0000)]
Added a check for "struct stat64".
Wayne Davison [Fri, 28 Jan 2005 19:03:16 +0000 (19:03 +0000)]
Do a better job defining an int32. Also define SIZEOF_INT32
instead of the (unused) LARGE_INT32 variable.
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 18:50:49 +0000 (18:50 +0000)]
Use "#if" (not "#ifdef") for configure-defined macros.
Wayne Davison [Fri, 28 Jan 2005 17:42:21 +0000 (17:42 +0000)]
Made log_open() static and made it die with an error if the
log-file can't be opened.
Wayne Davison [Fri, 28 Jan 2005 17:33:57 +0000 (17:33 +0000)]
No need to call log_open() in start_accept_loop() because
rsync_module() calls log_init() before it gives up its privileges.
Wayne Davison [Fri, 28 Jan 2005 17:11:48 +0000 (17:11 +0000)]
Document the "max verbosity" setting.
Wayne Davison [Fri, 28 Jan 2005 17:10:58 +0000 (17:10 +0000)]
Document the --verbose (-v) option for the daemon.
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 17:07:54 +0000 (17:07 +0000)]
- Added --verbose option parsing to the daemon options.
- Moved read_only into clientserver.c.
Wayne Davison [Fri, 28 Jan 2005 17:06:41 +0000 (17:06 +0000)]
Got rid of unused mmap section.
Wayne Davison [Fri, 28 Jan 2005 16:27:02 +0000 (16:27 +0000)]
Changed HAVE_OFF64_T to SIZEOF_OFF64_T.
Wayne Davison [Fri, 28 Jan 2005 16:21:37 +0000 (16:21 +0000)]
Changed HAVE_OFF64_T to SIZEOF_OFF64_T.
Wayne Davison [Fri, 28 Jan 2005 09:55:36 +0000 (09:55 +0000)]
Improved the option summaries.
Wayne Davison [Fri, 28 Jan 2005 09:55:18 +0000 (09:55 +0000)]
Improved the option-descriptions in the --help text.
Wayne Davison [Fri, 28 Jan 2005 08:01:33 +0000 (08:01 +0000)]
More --delete-before improvements.
Wayne Davison [Fri, 28 Jan 2005 07:50:00 +0000 (07:50 +0000)]
One minor tweak to the --delete-before option-passing code.
Wayne Davison [Fri, 28 Jan 2005 07:39:59 +0000 (07:39 +0000)]
Document --delete-before.
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:51:44 +0000 (06:51 +0000)]
Added a sanity check for the SIZEOF_INT64 define.
Wayne Davison [Fri, 28 Jan 2005 06:46:33 +0000 (06:46 +0000)]
Use the new SIZEOF_INT64 define instead of INT64_IS_OFF_T.
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 06:43:48 +0000 (06:43 +0000)]
Switched the checks for "long long" and "off64_t" to use the
AC_CHECK_SIZEOF() macro since it now fully supports cross-
compiling.
Wayne Davison [Fri, 28 Jan 2005 02:01:18 +0000 (02:01 +0000)]
Use SIGNED_CHAR_OK instead of HAVE_UNSIGNED_CHAR.
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 [Fri, 28 Jan 2005 01:56:50 +0000 (01:56 +0000)]
Added a few more details of changes since 2.6.3.
Wayne Davison [Fri, 28 Jan 2005 00:01:54 +0000 (00:01 +0000)]
Mention the latest changes plus a few missed items.
Wayne Davison [Thu, 27 Jan 2005 22:47:23 +0000 (22:47 +0000)]
Docment the new --delay-updates option.
Wayne Davison [Thu, 27 Jan 2005 22:46:36 +0000 (22:46 +0000)]
Implement the new --delay-updates option.
Wayne Davison [Thu, 27 Jan 2005 22:46:14 +0000 (22:46 +0000)]
Added the new --delay-updates option.
Wayne Davison [Thu, 27 Jan 2005 22:23:30 +0000 (22:23 +0000)]
- Output the new flist time stats (when available).
- For protocol 29 and above, send the flist time stats to the
client side (as needed).
Wayne Davison [Thu, 27 Jan 2005 22:21:45 +0000 (22:21 +0000)]
Set the new stats.flist_buildtime and stats.flist_xfertime values.
Wayne Davison [Thu, 27 Jan 2005 21:55:11 +0000 (21:55 +0000)]
- Added a caveat to the definition of the int64 type.
- Added two time values to the stats struct.
Wayne Davison [Thu, 27 Jan 2005 21:45:32 +0000 (21:45 +0000)]
Added a missing newline to an error message.
Wayne Davison [Thu, 27 Jan 2005 21:42:56 +0000 (21:42 +0000)]
Bumped the copyright year to 2005.
Wayne Davison [Tue, 25 Jan 2005 18:16:34 +0000 (18:16 +0000)]
Added .rsync-filter.
Wayne Davison [Tue, 25 Jan 2005 17:16:13 +0000 (17:16 +0000)]
If rsync is put in the background, output fewer progress-report
lines.
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:07:13 +0000 (12:07 +0000)]
In delete_files(), handle new DEL_NO_RECURSE flag (and use
renamed DEL_FORCE_RECURSE flag.
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 12:02:08 +0000 (12:02 +0000)]
Added DEL_NO_RECURSE and changed DEL_RECURSE to DEL_FORCE_RECURSE.
Wayne Davison [Tue, 25 Jan 2005 11:55:03 +0000 (11:55 +0000)]
Needed to call add_cvs_excludes() from one more code path.
Wayne Davison [Tue, 25 Jan 2005 10:39:14 +0000 (10:39 +0000)]
Renamed several exclude-related functions/variables using new
filter terminology.
Wayne Davison [Tue, 25 Jan 2005 04:00:31 +0000 (04:00 +0000)]
Mention the latest new options.
Wayne Davison [Tue, 25 Jan 2005 03:18:29 +0000 (03:18 +0000)]
Added testing for --filter and merge-file features.
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:09:02 +0000 (03:09 +0000)]
Document the latest --delete options, including --delete-during.
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 02:30:59 +0000 (02:30 +0000)]
Don't try to allocate zero bytes in push_local_excludes().
Wayne Davison [Tue, 25 Jan 2005 00:53:07 +0000 (00:53 +0000)]
Document the new "filter" parameter.
Wayne Davison [Tue, 25 Jan 2005 00:53:03 +0000 (00:53 +0000)]
Document --filter (-f) and -F, with lots of changes to the
include/exclude sections, including a little restructuring.
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:56 +0000 (00:52 +0000)]
- Added parsing for --filter (-f) and -F.
- Changed the include/exclude calls to work with the new XFLG_* values.
Wayne Davison [Tue, 25 Jan 2005 00:52:53 +0000 (00:52 +0000)]
Added the "filter" parameter.
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.