rsync/rsync.git
19 years agoImproved the build rule for getfsdev and added getfsdev.o to the
Wayne Davison [Thu, 12 Aug 2004 18:59:03 +0000 (18:59 +0000)]
Improved the build rule for getfsdev and added getfsdev.o to the
files we cleanup.

19 years agoIf system won't let us set chmod bits, fall back to testing without
Wayne Davison [Thu, 12 Aug 2004 18:51:35 +0000 (18:51 +0000)]
If system won't let us set chmod bits, fall back to testing without
them set.

19 years ago- Made clean_flist()'s collapsing of ".." dirs optional by adding
Wayne Davison [Thu, 12 Aug 2004 18:20:14 +0000 (18:20 +0000)]
- Made clean_flist()'s collapsing of ".." dirs optional by adding
  a "BOOL collapse_dot_dot" arg.
- Improved some comments.

19 years agoCall clean_flist() with its new "collapse_dot_dot" arg.
Wayne Davison [Thu, 12 Aug 2004 18:20:07 +0000 (18:20 +0000)]
Call clean_flist() with its new "collapse_dot_dot" arg.

19 years agoOne (hopefully) last change to the sanitize_path() code.
Wayne Davison [Thu, 12 Aug 2004 10:13:45 +0000 (10:13 +0000)]
One (hopefully) last change to the sanitize_path() code.

19 years agoSimplified sanitize_path() logic a little.
Wayne Davison [Thu, 12 Aug 2004 09:32:16 +0000 (09:32 +0000)]
Simplified sanitize_path() logic a little.

19 years agoMore improvements and a couple missing items.
Wayne Davison [Thu, 12 Aug 2004 01:27:26 +0000 (01:27 +0000)]
More improvements and a couple missing items.

19 years agoImproved a comment.
Wayne Davison [Thu, 12 Aug 2004 00:58:01 +0000 (00:58 +0000)]
Improved a comment.

19 years agoGot rid of a comment that became inapplicable.
Wayne Davison [Thu, 12 Aug 2004 00:52:58 +0000 (00:52 +0000)]
Got rid of a comment that became inapplicable.

19 years ago- Call sanitize_path() with updated args.
Wayne Davison [Wed, 11 Aug 2004 23:41:06 +0000 (23:41 +0000)]
- Call sanitize_path() with updated args.
- Added count_dir_elements() function.
- Changed the args for sanitize_path() so that the caller can request
  the value for the rootdir and so that the caller tells us the current
  subdir depth instead of sending us a string that we have to figure it
  out from.
- Make sure that sanitize_path() doesn't mis-parse multiple adjacent
  slashes.

19 years agoCall sanitize_path() with updated args.
Wayne Davison [Wed, 11 Aug 2004 23:41:03 +0000 (23:41 +0000)]
Call sanitize_path() with updated args.

19 years ago- Set the var lastdir_depth when setting lastdir.
Wayne Davison [Wed, 11 Aug 2004 23:41:00 +0000 (23:41 +0000)]
- Set the var lastdir_depth when setting lastdir.
- Call sanitize_path() with updated args.

19 years agoIgnore new getfsdev executable.
Wayne Davison [Wed, 11 Aug 2004 17:33:52 +0000 (17:33 +0000)]
Ignore new getfsdev executable.

19 years agoMake the text of the --times (-t) option more correct on what
Wayne Davison [Wed, 11 Aug 2004 17:24:37 +0000 (17:24 +0000)]
Make the text of the --times (-t) option more correct on what
happens if it is omitted.

19 years agoA minor improvement in check_one_exclude().
Wayne Davison [Tue, 10 Aug 2004 18:15:33 +0000 (18:15 +0000)]
A minor improvement in check_one_exclude().

19 years agoMention the early-chmod change.
Wayne Davison [Mon, 9 Aug 2004 20:58:26 +0000 (20:58 +0000)]
Mention the early-chmod change.

19 years agoSet each file's permissions and modtime before it gets renamed.
Wayne Davison [Mon, 9 Aug 2004 20:57:10 +0000 (20:57 +0000)]
Set each file's permissions and modtime before it gets renamed.

19 years agoDo some simple tests with various read-only and set[ug]id files.
Wayne Davison [Mon, 9 Aug 2004 20:52:35 +0000 (20:52 +0000)]
Do some simple tests with various read-only and set[ug]id files.

19 years agoAdded a rule for building getfsdev and for requiring it to run "test".
Wayne Davison [Mon, 9 Aug 2004 20:51:44 +0000 (20:51 +0000)]
Added a rule for building getfsdev and for requiring it to run "test".

19 years agoMade robust_rename() return a 1 if it had to copy the file.
Wayne Davison [Mon, 9 Aug 2004 20:48:38 +0000 (20:48 +0000)]
Made robust_rename() return a 1 if it had to copy the file.

19 years agoOutput a device string for each file given on the command-line.
Wayne Davison [Mon, 9 Aug 2004 20:46:54 +0000 (20:46 +0000)]
Output a device string for each file given on the command-line.

19 years agoFixed a bug in clean_fname() that could sometimes leave a "dir/.."
Wayne Davison [Sat, 7 Aug 2004 20:56:41 +0000 (20:56 +0000)]
Fixed a bug in clean_fname() that could sometimes leave a "dir/.."
sequence uncollapsed.

19 years agoMade clean_fname() return the length of the string.
Wayne Davison [Fri, 6 Aug 2004 22:36:55 +0000 (22:36 +0000)]
Made clean_fname() return the length of the string.

19 years agoAn improved clean_fname() routine that is more efficient and will also
Wayne Davison [Fri, 6 Aug 2004 21:24:14 +0000 (21:24 +0000)]
An improved clean_fname() routine that is more efficient and will also
collapse ".." dirs that aren't at the start of the path.  Care was taken
to ensure that the cleaning of a name that goes over the socket is done
in the same way as the old code (because both sides call clean_fname()
on those file-list names).  This ensures compatibility with older rsync
versions.

19 years agoSet "eob" correctly in add_exclude_file().
Wayne Davison [Thu, 5 Aug 2004 22:58:17 +0000 (22:58 +0000)]
Set "eob" correctly in add_exclude_file().

19 years agoMerged alloc_sanitize_path() into sanitize_path(), adding an extra arg
Wayne Davison [Thu, 5 Aug 2004 21:57:11 +0000 (21:57 +0000)]
Merged alloc_sanitize_path() into sanitize_path(), adding an extra arg
that indicates the destination dir for the resulting path (if the dest
is NULL, a buffer will be allocated) and having it return a value.

19 years agoUse the new sanitize_path() calling syntax.
Wayne Davison [Thu, 5 Aug 2004 21:57:09 +0000 (21:57 +0000)]
Use the new sanitize_path() calling syntax.

19 years agoIf dry_run is > 1 then the destination directory was missing, so we
Wayne Davison [Thu, 5 Aug 2004 18:18:36 +0000 (18:18 +0000)]
If dry_run is > 1 then the destination directory was missing, so we
set stat_errno to ENOENT and statret to -1 without calling stat().

19 years agoIn get_local_name(), if we would have created the destination dir but
Wayne Davison [Thu, 5 Aug 2004 18:17:44 +0000 (18:17 +0000)]
In get_local_name(), if we would have created the destination dir but
were prevented by dry_run being set, increment dry_run so that the
generator knows that all the files are missing.

19 years agoIn set_refuse_options(): make sure we scan the whole list of options
Wayne Davison [Wed, 4 Aug 2004 21:20:34 +0000 (21:20 +0000)]
In set_refuse_options(): make sure we scan the whole list of options
and avoid complaining about a wild-card spec that actually matches
one or more options.

19 years agoDecided that we don't need to limit the block size after all now
Wayne Davison [Tue, 3 Aug 2004 15:41:16 +0000 (15:41 +0000)]
Decided that we don't need to limit the block size after all now
that the map_file() code handles large block sizes better.

19 years agoUse MAX_MAP_SIZE in the args to map_file().
Wayne Davison [Tue, 3 Aug 2004 15:37:54 +0000 (15:37 +0000)]
Use MAX_MAP_SIZE in the args to map_file().

19 years ago- Changed the calling syntax for map_file() so that it takes both
Wayne Davison [Tue, 3 Aug 2004 08:05:29 +0000 (08:05 +0000)]
- Changed the calling syntax for map_file() so that it takes both
  a (possibly approximate) window size and an optional block size
  (which is used to round-up the window size if it is non-zero).
- Don't set window_start behind the supplied offset in map_ptr().

19 years agoCall map_file() with its new args, including a suggested window
Wayne Davison [Tue, 3 Aug 2004 08:05:27 +0000 (08:05 +0000)]
Call map_file() with its new args, including a suggested window
size.

19 years agoWe call map_ptr() with a data range than includes any unmatched data
Wayne Davison [Tue, 3 Aug 2004 08:05:23 +0000 (08:05 +0000)]
We call map_ptr() with a data range than includes any unmatched data
(which we might need to reference again) in addition to the current
rolling-checksum block (this prevents the unmatched data from being
lost when we slide the buffer and read more data).

19 years ago- Changed the description for --block-size in the --help text.
Wayne Davison [Tue, 3 Aug 2004 08:05:20 +0000 (08:05 +0000)]
- Changed the description for --block-size in the --help text.
- Use the new MAX_BLOCK_SIZE to limit the block_size value.

19 years ago- Added define for MAX_BLOCK_SIZE.
Wayne Davison [Tue, 3 Aug 2004 08:05:17 +0000 (08:05 +0000)]
- Added define for MAX_BLOCK_SIZE.
- Increased the MAX_MAP_SIZE.

19 years agoUpdated the description of the --block-size option.
Wayne Davison [Tue, 3 Aug 2004 07:58:48 +0000 (07:58 +0000)]
Updated the description of the --block-size option.

19 years agoMention the open64()/mkstemp64() configure change.
Wayne Davison [Mon, 2 Aug 2004 22:06:17 +0000 (22:06 +0000)]
Mention the open64()/mkstemp64() configure change.

19 years agoDon't use mkstemp() if the OS has open64() but not mkstemp64().
Wayne Davison [Mon, 2 Aug 2004 21:56:07 +0000 (21:56 +0000)]
Don't use mkstemp() if the OS has open64() but not mkstemp64().

19 years agoTest for functions open64() and mkstemp64().
Wayne Davison [Mon, 2 Aug 2004 21:54:49 +0000 (21:54 +0000)]
Test for functions open64() and mkstemp64().

19 years agoGot rid of trailing whitespace.
Wayne Davison [Mon, 2 Aug 2004 16:49:20 +0000 (16:49 +0000)]
Got rid of trailing whitespace.

19 years agoMention the "refuse options" change.
Wayne Davison [Mon, 2 Aug 2004 07:41:04 +0000 (07:41 +0000)]
Mention the "refuse options" change.

19 years agoAllow better wildcard matching against the short-option letters in
Wayne Davison [Mon, 2 Aug 2004 07:40:34 +0000 (07:40 +0000)]
Allow better wildcard matching against the short-option letters in
the "refuse options" handling.

19 years agoDocument the improved "refuse options" syntax.
Wayne Davison [Mon, 2 Aug 2004 05:01:36 +0000 (05:01 +0000)]
Document the improved "refuse options" syntax.

19 years ago- Extended the "refuse options" daemon setting to allow wildcards
Wayne Davison [Mon, 2 Aug 2004 05:00:30 +0000 (05:00 +0000)]
- Extended the "refuse options" daemon setting to allow wildcards
  and to allow single-letter option names.
- No need to send the various --delete* options or the --force option
  from the receiver to the sender.

19 years agoGot rid of unused externs.
Wayne Davison [Mon, 2 Aug 2004 04:50:33 +0000 (04:50 +0000)]
Got rid of unused externs.

19 years ago- Changed "read so far" to "received so far".
Wayne Davison [Mon, 2 Aug 2004 02:43:54 +0000 (02:43 +0000)]
- Changed "read so far" to "received so far".
- Output the who_am_i() information in the socket read/write errors to
  make it a little clearer who is complaining about what (for those
  familiar with rsync, at least -- e.g. it will help when users report
  errors).

19 years ago- Changed all the errors in parse_arguments() to use the err_buf so
Wayne Davison [Sat, 31 Jul 2004 20:09:54 +0000 (20:09 +0000)]
- Changed all the errors in parse_arguments() to use the err_buf so
  that a client talking to a daemon server actually gets the error.
- If a daemon has a list of exclusions, apply that list to various
  options to ensure that an excluded file can't be affected.
- Fixed an arg-checking problem when --files-from got passed to a
  daemon.

19 years agoIf we need to return an error during the startup phase and the other
Wayne Davison [Sat, 31 Jul 2004 19:55:42 +0000 (19:55 +0000)]
If we need to return an error during the startup phase and the other
side is expecting us to send them a files-from list, send the list
terminator before sending the error.

19 years agoDon't allow a --partial-dir setting to overwrite a server-excluded
Wayne Davison [Sat, 31 Jul 2004 18:13:20 +0000 (18:13 +0000)]
Don't allow a --partial-dir setting to overwrite a server-excluded
file (affects a daemon receiver only).

19 years ago- Document the change to --copy-links.
Wayne Davison [Sat, 31 Jul 2004 16:20:28 +0000 (16:20 +0000)]
- Document the change to --copy-links.
- Improved the "OUTPUT CHANGES" section.

19 years agoDocument the old side-effect to --copy-links and that it no longer
Wayne Davison [Sat, 31 Jul 2004 16:19:14 +0000 (16:19 +0000)]
Document the old side-effect to --copy-links and that it no longer
happens in a modern rsync w/o --keep-dirlinks.

19 years agoOne call to link_stat() (in set_perms()) needed to honor the setting
Wayne Davison [Sat, 31 Jul 2004 16:15:41 +0000 (16:15 +0000)]
One call to link_stat() (in set_perms()) needed to honor the setting
of keep_dirlinks if the current item is a directory.

19 years agoReset copy_links in the receiver.
Wayne Davison [Sat, 31 Jul 2004 16:14:27 +0000 (16:14 +0000)]
Reset copy_links in the receiver.

19 years agoProminently mention the changes to the text that gets output.
Wayne Davison [Sat, 31 Jul 2004 03:33:05 +0000 (03:33 +0000)]
Prominently mention the changes to the text that gets output.

19 years agoChanged "wrote"/"written" to "sent" and "read" to "received" in
Wayne Davison [Sat, 31 Jul 2004 03:32:42 +0000 (03:32 +0000)]
Changed "wrote"/"written" to "sent" and "read" to "received" in
the text that is output.

19 years ago- Mention the "list = no" change in error handling.
Wayne Davison [Fri, 30 Jul 2004 22:46:07 +0000 (22:46 +0000)]
- Mention the "list = no" change in error handling.
- Improved a few of the NEWS items.

19 years agoIf someone is denied access to a "list = no" module, lie and tell them
Wayne Davison [Fri, 30 Jul 2004 20:07:52 +0000 (20:07 +0000)]
If someone is denied access to a "list = no" module, lie and tell them
that the module is "Unknown" (so the user can't probe to find unlisted
modules).

19 years agoDon't ignore case in lp_number() because the rest of the daemon code
Wayne Davison [Fri, 30 Jul 2004 20:05:37 +0000 (20:05 +0000)]
Don't ignore case in lp_number() because the rest of the daemon code
can't handle the case where the module name doesn't exactly match the
string the user provided.

19 years agoIf we reject a name due to a server-exclude, someone is trying to hack
Wayne Davison [Fri, 30 Jul 2004 07:02:37 +0000 (07:02 +0000)]
If we reject a name due to a server-exclude, someone is trying to hack
rsync (because the generator would not have included this file).  Respond
with an exit.

19 years agoDocument the latest changes.
Wayne Davison [Thu, 29 Jul 2004 18:08:16 +0000 (18:08 +0000)]
Document the latest changes.

19 years agoGot rid of bogus compare_dest scan in skip_file() -- it must checksum
Wayne Davison [Thu, 29 Jul 2004 16:45:48 +0000 (16:45 +0000)]
Got rid of bogus compare_dest scan in skip_file() -- it must checksum
the same file that we used for the stat() (in the parent routine).

19 years agoAdded the new --partial-dir option.
Wayne Davison [Thu, 29 Jul 2004 16:06:38 +0000 (16:06 +0000)]
Added the new --partial-dir option.

19 years agoDocument the new --partial-dir option.
Wayne Davison [Thu, 29 Jul 2004 16:06:34 +0000 (16:06 +0000)]
Document the new --partial-dir option.

19 years agoCheck the error return of flush_write_file().
Wayne Davison [Thu, 29 Jul 2004 07:37:27 +0000 (07:37 +0000)]
Check the error return of flush_write_file().

19 years agoAdded close_multiplexing_in() and renamed io_multiplexing_close()
Wayne Davison [Thu, 29 Jul 2004 07:24:45 +0000 (07:24 +0000)]
Added close_multiplexing_in() and renamed io_multiplexing_close()
to close_multiplexing_out().

19 years agoCall the new close_multiplexing_in() function in the generator.
Wayne Davison [Thu, 29 Jul 2004 07:24:00 +0000 (07:24 +0000)]
Call the new close_multiplexing_in() function in the generator.

19 years agoIf we fail writing to the socket and we're receiving error messages
Wayne Davison [Thu, 29 Jul 2004 07:09:46 +0000 (07:09 +0000)]
If we fail writing to the socket and we're receiving error messages
from the other side via a multiplexed input, read the socket to see
if we get some errors that would explain why they went away.

19 years agoOne more inplace code tweak.
Wayne Davison [Thu, 29 Jul 2004 06:59:30 +0000 (06:59 +0000)]
One more inplace code tweak.

19 years agoSome minor fixes and improvements for the inplace code.
Wayne Davison [Thu, 29 Jul 2004 06:40:26 +0000 (06:40 +0000)]
Some minor fixes and improvements for the inplace code.

19 years ago- Explicitly save the stat()'s errno so that we can be sure we're
Wayne Davison [Wed, 28 Jul 2004 10:04:06 +0000 (10:04 +0000)]
- Explicitly save the stat()'s errno so that we can be sure we're
  testing the right thing lower down (and so that future code doesn't
  always have to remember to save it off and restore it).
- Improved a chunk of link_dest code.
- Handle the removal of a non-regular file without so much duplicated
  code.

19 years agoUse the new safe_fname() function.
Wayne Davison [Mon, 26 Jul 2004 16:36:59 +0000 (16:36 +0000)]
Use the new safe_fname() function.

19 years agoAllow safe_fname() to tweak up to two name at a time.
Wayne Davison [Mon, 26 Jul 2004 16:34:36 +0000 (16:34 +0000)]
Allow safe_fname() to tweak up to two name at a time.

19 years agoUse safe_fname() in full_fname().
Wayne Davison [Mon, 26 Jul 2004 15:59:51 +0000 (15:59 +0000)]
Use safe_fname() in full_fname().

19 years agoAdded safe_fname() that converts any newlines in a name into '?'s.
Wayne Davison [Mon, 26 Jul 2004 15:52:25 +0000 (15:52 +0000)]
Added safe_fname() that converts any newlines in a name into '?'s.

19 years agoMade a comment better.
Wayne Davison [Mon, 26 Jul 2004 05:38:02 +0000 (05:38 +0000)]
Made a comment better.

19 years agoSome batch-mode changes.
Wayne Davison [Sat, 24 Jul 2004 16:51:58 +0000 (16:51 +0000)]
Some batch-mode changes.

19 years agoMade the new option-twiddling message only output when verbose.
Wayne Davison [Sat, 24 Jul 2004 16:51:16 +0000 (16:51 +0000)]
Made the new option-twiddling message only output when verbose.

19 years agoCall read_stream_flags() as soon as we open the batch file for
Wayne Davison [Sat, 24 Jul 2004 16:40:41 +0000 (16:40 +0000)]
Call read_stream_flags() as soon as we open the batch file for
reading.

19 years agoCall write_stream_flags() from start_write_batch().
Wayne Davison [Sat, 24 Jul 2004 16:39:53 +0000 (16:39 +0000)]
Call write_stream_flags() from start_write_batch().

19 years agoAdded write_stream_flags() to write the state of certain flags into
Wayne Davison [Sat, 24 Jul 2004 16:38:49 +0000 (16:38 +0000)]
Added write_stream_flags() to write the state of certain flags into
the batchfile and read_stream_flags() to read and twiddle the same
flags.  This ensures that the batchfile reading doesn't get confused
about what data to expect from the socket.

19 years agoTweaked a compound line.
Wayne Davison [Fri, 23 Jul 2004 16:59:38 +0000 (16:59 +0000)]
Tweaked a compound line.

19 years agoAdded a comment.
Wayne Davison [Fri, 23 Jul 2004 16:59:22 +0000 (16:59 +0000)]
Added a comment.

19 years agoSome basic batch-mode tests.
Wayne Davison [Fri, 23 Jul 2004 02:13:34 +0000 (02:13 +0000)]
Some basic batch-mode tests.

19 years agoChris added a missing "not" to a comment.
Wayne Davison [Fri, 23 Jul 2004 01:40:22 +0000 (01:40 +0000)]
Chris added a missing "not" to a comment.

19 years agoFixed the opening comments.
Wayne Davison [Fri, 23 Jul 2004 01:39:19 +0000 (01:39 +0000)]
Fixed the opening comments.

19 years agoIf we sucessfully renamed a file that has multiple links to it, unlink()
Wayne Davison [Thu, 22 Jul 2004 22:52:39 +0000 (22:52 +0000)]
If we sucessfully renamed a file that has multiple links to it, unlink()
it to ensure that rename() didn't lie to us (which it does if you try to
rename() a file over another link to the same file).

19 years agoChanged NO_INT64 to INT64_IS_OFF_T because off_t might actually be
Wayne Davison [Thu, 22 Jul 2004 19:28:45 +0000 (19:28 +0000)]
Changed NO_INT64 to INT64_IS_OFF_T because off_t might actually be
64 bits.  The code now only complains if int64 is really too short.

19 years agoSome --help text fixes.
Wayne Davison [Thu, 22 Jul 2004 15:43:28 +0000 (15:43 +0000)]
Some --help text fixes.

19 years agoSome more --inplace improvements.
Wayne Davison [Thu, 22 Jul 2004 15:41:09 +0000 (15:41 +0000)]
Some more --inplace improvements.

19 years agoShould always call finish_transfer() for inplace handling, just like
Wayne Davison [Thu, 22 Jul 2004 15:31:06 +0000 (15:31 +0000)]
Should always call finish_transfer() for inplace handling, just like
for keep_partial handling.

19 years agoThe inplace handling in finish_transfer() now passes PERMS_SKIP_MTIME
Wayne Davison [Thu, 22 Jul 2004 15:30:04 +0000 (15:30 +0000)]
The inplace handling in finish_transfer() now passes PERMS_SKIP_MTIME
to set_perms() if ok_to_set_time wasn't specified.

19 years agoNeed to output the "failed verification" error before sending the
Wayne Davison [Thu, 22 Jul 2004 08:16:35 +0000 (08:16 +0000)]
Need to output the "failed verification" error before sending the
MSG_REDO so that the output comes out in the right order.

19 years agoAdded a warning message when a file fails to verify, letting the user
Wayne Davison [Thu, 22 Jul 2004 04:15:18 +0000 (04:15 +0000)]
Added a warning message when a file fails to verify, letting the user
know if we retained it or discarded it.  Especially useful for batch-
reading mode where the old code could look like it did the update when
it really silently failed.

19 years agoAdded even more double-quoting.
Wayne Davison [Thu, 22 Jul 2004 03:23:04 +0000 (03:23 +0000)]
Added even more double-quoting.

19 years agoNo need to check both delete_after and delete_mode since the former
Wayne Davison [Thu, 22 Jul 2004 02:52:57 +0000 (02:52 +0000)]
No need to check both delete_after and delete_mode since the former
implies the latter.

19 years agoIn read_batch mode, we read ints from the new batch_gen_fd pipe and
Wayne Davison [Wed, 21 Jul 2004 23:59:37 +0000 (23:59 +0000)]
In read_batch mode, we read ints from the new batch_gen_fd pipe and
only process the updates from the batch file when the generator has
indicated that it is ready (which ensures that all the necessary
dirs have been created).

19 years agoGot rid of read_batch special case.
Wayne Davison [Wed, 21 Jul 2004 23:59:33 +0000 (23:59 +0000)]
Got rid of read_batch special case.

19 years agoSetup for read_batch mode a little differently:
Wayne Davison [Wed, 21 Jul 2004 23:59:31 +0000 (23:59 +0000)]
Setup for read_batch mode a little differently:
- Avoid calling local_child().
- Create a pipe that lets the generator send us index values.
- Set batch_gen_fd for the receiver to read the pipe.