Wayne Davison [Wed, 22 Sep 2004 04:14:43 +0000 (04:14 +0000)]
Mention that --partial-dir now sets an exclude that helps to avoid
losing the partial data when deleting, and avoid copying any partial
data from the sender.
Wayne Davison [Tue, 21 Sep 2004 09:24:02 +0000 (09:24 +0000)]
- Turned readlink_stat() into a static function.
- Made readlink_stat() no longer honor keep_dirlinks.
- The make_file() function now checks keep_dirlinks late in the
function so that it only transforms a symlink to a local dir
into a directory if the receiver also has a directory by that
name. This makes the use of --delete with --keep-dirlinks
work much better.
Wayne Davison [Fri, 17 Sep 2004 16:50:53 +0000 (16:50 +0000)]
- Added the ability to parse a literal IPv6 address in an "rsync:" URL
(e.g. rsync://[2001:638:500:101::21]:873/module/dir).
- Improved a couple --files-from error messages.
Wayne Davison [Fri, 17 Sep 2004 16:39:34 +0000 (16:39 +0000)]
When outputting the flist info (in a debug-level of verbosity) we
now mention the UID of the file when we are the sender (as well as
when we are root).
Wayne Davison [Thu, 16 Sep 2004 17:22:31 +0000 (17:22 +0000)]
Actually, since the close calls shouldn't fail (now that listener
is properly set to -1 on close), we don't really need to play the
save-errno game after all.
Wayne Davison [Thu, 16 Sep 2004 17:09:46 +0000 (17:09 +0000)]
- Set "listener" to -1 after we close it so that the error-handler
doesn't try to re-close it.
- Set blocking I/O before the second (final) connect() call.
Wayne Davison [Wed, 8 Sep 2004 07:33:06 +0000 (07:33 +0000)]
Don't try to optimize-away the sending of the --delete option if
--delete-after was specified (since we don't know what the protocol
version will be yet).
Wayne Davison [Tue, 7 Sep 2004 21:45:19 +0000 (21:45 +0000)]
If --backup was used with --inplace, we don't limit the basis-file
matches (as we normally would) because the receiver is using the
backup-file as the basis-file.
Wayne Davison [Thu, 26 Aug 2004 17:39:48 +0000 (17:39 +0000)]
Allow the use of the --exclude*/--include* options to a server
process again, but make sure that the user didn't specify a
server-excluded file for one of the --*-from options.
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.
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.
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.
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.
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.
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().
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).
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.
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).
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.
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.