Wayne Davison [Thu, 20 Jan 2005 22:59:54 +0000 (22:59 +0000)]
Got rid of the erroneous --dry-run short-circuit in the directory
handling.
Wayne Davison [Thu, 20 Jan 2005 22:58:30 +0000 (22:58 +0000)]
In set_modtime(), the verbose message should be output even if
--dry-run was specified.
Wayne Davison [Thu, 20 Jan 2005 22:43:32 +0000 (22:43 +0000)]
- Got rid of the uint64 typedef.
- Changed the dev/inode vars to use int64.
Wayne Davison [Thu, 20 Jan 2005 22:42:47 +0000 (22:42 +0000)]
Switched uint64 vars over to int64.
Wayne Davison [Thu, 20 Jan 2005 22:37:38 +0000 (22:37 +0000)]
Use int64 instead of uint64.
Wayne Davison [Thu, 20 Jan 2005 19:31:42 +0000 (19:31 +0000)]
Improved a confusing sentence in the description of subcomponent
include/exclude matching.
Wayne Davison [Thu, 20 Jan 2005 00:53:15 +0000 (00:53 +0000)]
When outputting the file list created for the delete pass, identify
it as such.
Wayne Davison [Wed, 19 Jan 2005 21:07:09 +0000 (21:07 +0000)]
Added an example of running mnt-excl remotely via ssh for a pull.
Wayne Davison [Wed, 19 Jan 2005 21:00:26 +0000 (21:00 +0000)]
A perl script that outputs excludes for all mount points that affect
the supplied source dir (or all mount points if the arg is omitted).
The excludes are appropriately anchored relative to the supplied dir,
and honor rsync's trailing-slash idiom.
Wayne Davison [Wed, 19 Jan 2005 20:32:25 +0000 (20:32 +0000)]
Mention a change in the verbose output when deleting directories.
Wayne Davison [Wed, 19 Jan 2005 20:11:03 +0000 (20:11 +0000)]
- Updated delete_file() to take a flag arg that makes it more
flexible. Optimized away a stat() call since the caller knows
if the item to delete is a directory or not.
- Tweaked delete_file()'s "deleting ..." messages to include a
trailing slash when we're deleting a directory.
- No need for conditional code around do_lstat() anymore.
Wayne Davison [Wed, 19 Jan 2005 20:11:00 +0000 (20:11 +0000)]
Define the new DEL_* flags.
Wayne Davison [Wed, 19 Jan 2005 20:10:57 +0000 (20:10 +0000)]
- Moved write_sum_head() to io.c.
- Use the new delete_file() calling syntax.
Wayne Davison [Wed, 19 Jan 2005 20:10:53 +0000 (20:10 +0000)]
Got rid of delete_one() since we can (and do) use the updated
delete_file() call now.
Wayne Davison [Wed, 19 Jan 2005 20:10:50 +0000 (20:10 +0000)]
Moved write_sum_head() here from generator.c.
Wayne Davison [Wed, 19 Jan 2005 19:30:29 +0000 (19:30 +0000)]
No need for conditional code around do_lstat() anymore.
Wayne Davison [Wed, 19 Jan 2005 19:29:20 +0000 (19:29 +0000)]
When SUPPORT_LINKS is not defined, we now go ahead and provide
the do_lstat() function and just have it call do_stat().
Wayne Davison [Wed, 19 Jan 2005 00:34:13 +0000 (00:34 +0000)]
A slight simplification to the no-implied-dirs change.
Wayne Davison [Wed, 19 Jan 2005 00:24:35 +0000 (00:24 +0000)]
Use the new "keep_dirs" var instead of separately checking the
"recurse" and "files_from" vars. This also simplifies the case
where the code wants to send the implied dirs without recursing.
Wayne Davison [Wed, 19 Jan 2005 00:23:32 +0000 (00:23 +0000)]
- Added new int, keep_dirs, which is set if either recurse or
files_from was specified.
- Pass the the sender the --no-implied-dirs option if --relative
was specified (or implied) and the sender is not the client.
Paul Green [Tue, 18 Jan 2005 21:19:42 +0000 (21:19 +0000)]
Fix typo in handling of lchown when the host operating system does
not implement it. It should get mapped to chown.
Wayne Davison [Mon, 17 Jan 2005 23:55:15 +0000 (23:55 +0000)]
Mention the latest changes.
Wayne Davison [Mon, 17 Jan 2005 23:11:26 +0000 (23:11 +0000)]
For --inplace over protocol-version 29 or greater, read the
type the type of basis file the generator is using from the
socket and set the new updating_basis_file var.
Wayne Davison [Mon, 17 Jan 2005 23:11:22 +0000 (23:11 +0000)]
Mention the change in restrictions for --inplace. Also talk about
how --backup makes an --inplace transfer more optimal.
Wayne Davison [Mon, 17 Jan 2005 23:11:18 +0000 (23:11 +0000)]
We don't need to complain about --inplace being combined with one
of the --FOO-dest options anymore.
Wayne Davison [Mon, 17 Jan 2005 23:11:13 +0000 (23:11 +0000)]
Changed the checks for --inplace to use the new updating_basis_file
variable.
Wayne Davison [Mon, 17 Jan 2005 23:11:05 +0000 (23:11 +0000)]
For --inplace over protocol-version 29 or greater, tell the
sender what kind of a basis file we've selected.
Wayne Davison [Mon, 17 Jan 2005 22:51:29 +0000 (22:51 +0000)]
- Moved read_sum_head() to io.c (because the generator uses it too).
- Tweaked the read_size var (formerly map_size) that gets passed to
map_file().
Wayne Davison [Mon, 17 Jan 2005 22:51:27 +0000 (22:51 +0000)]
Tweaked the read_size var (formerly map_size) that gets passed to
map_file().
Wayne Davison [Mon, 17 Jan 2005 22:51:24 +0000 (22:51 +0000)]
Moved read_sum_head() here from sender.c (because the generator uses it
too) and improved it with better error checking.
Wayne Davison [Mon, 17 Jan 2005 22:51:21 +0000 (22:51 +0000)]
Make sure that we don't compute a block size larger than MAX_BLOCK_SIZE.
Wayne Davison [Mon, 17 Jan 2005 22:51:17 +0000 (22:51 +0000)]
- Changed the map_size parameter to map_file() to be an int32 named
"read_size".
- Changed some int vars in map_ptr() needed to be int32 vars.
- All callers expect map_ptr() to return back the full "len" bytes,
so we never shorten this value, even near EOF--the read will
just get zero-padded, as needed.
- Die with an error if someone calls map_ptr() with a len < 0, or
if read_size is computed as a value < 0.
Wayne Davison [Mon, 17 Jan 2005 22:51:15 +0000 (22:51 +0000)]
- Incremented the PROTOCOL_VERSION to 29.
- Added define for MAX_BLOCK_SIZE.
- Reorder the variables in the structure defs to sort by size.
- Some vars in map_struct needed to be int32 instead of int.
Wayne Davison [Mon, 17 Jan 2005 22:25:53 +0000 (22:25 +0000)]
Got rid of an unneeded assert().
Wayne Davison [Mon, 17 Jan 2005 22:24:08 +0000 (22:24 +0000)]
Added a commented-out RSYNC initialization that uses valgrind.
Wayne Davison [Mon, 17 Jan 2005 22:23:09 +0000 (22:23 +0000)]
Put double-quotes around the --rsync-path arg.
Wayne Davison [Mon, 17 Jan 2005 06:00:44 +0000 (06:00 +0000)]
Collapsed two sed invocations into one.
Wayne Davison [Sat, 15 Jan 2005 21:23:04 +0000 (21:23 +0000)]
Fixed an off-by-one comparison against MAX_BASIS_DIRS.
Wayne Davison [Sat, 15 Jan 2005 21:17:39 +0000 (21:17 +0000)]
Use the new FNAMECMP_BASIS_DIR_HIGH to improve a compare-dest check.
Wayne Davison [Sat, 15 Jan 2005 21:17:36 +0000 (21:17 +0000)]
Define FNAMECMP_BASIS_DIR_LOW and FNAMECMP_BASIS_DIR_HIGH instead of
FNAMECMP_BASIS_DIR.
Wayne Davison [Sat, 15 Jan 2005 21:14:27 +0000 (21:14 +0000)]
Make sure that the generator sent us a valid index into basis_dir[].
Wayne Davison [Sat, 15 Jan 2005 21:12:58 +0000 (21:12 +0000)]
Made basis_dir_cnt non-static.
Wayne Davison [Sat, 15 Jan 2005 20:54:25 +0000 (20:54 +0000)]
Made compare_dest non-static.
Wayne Davison [Sat, 15 Jan 2005 20:22:54 +0000 (20:22 +0000)]
Some inplace-checking code should have been inside the #ifdef that
handles the case where --inplace cannot be supported.
Wayne Davison [Sat, 15 Jan 2005 20:06:48 +0000 (20:06 +0000)]
Simplified the logic in allow_access() and tweaked some whitespace.
Wayne Davison [Sat, 15 Jan 2005 04:40:06 +0000 (04:40 +0000)]
Simplified one "if" that checks if one of the --FOO-dest options
was specified.
Wayne Davison [Fri, 14 Jan 2005 19:49:35 +0000 (19:49 +0000)]
Improved the docs on --delete and --delete-after.
Wayne Davison [Fri, 14 Jan 2005 19:23:20 +0000 (19:23 +0000)]
- We now remove the DEST~old~ dir instead of renaming it to DEST~new~.
- Improved the usage message and added an introductory comment.
Wayne Davison [Fri, 14 Jan 2005 18:20:46 +0000 (18:20 +0000)]
Make sure that the presence of a partial-dir file is noted, even
if --whole-file is in effect. Also needed to force statret to 0
when using a partial-dir file.
Wayne Davison [Fri, 14 Jan 2005 18:18:31 +0000 (18:18 +0000)]
We also need the "name pipe" from the generator to the receiver
when --partial-dir was specified.
Wayne Davison [Fri, 14 Jan 2005 18:17:32 +0000 (18:17 +0000)]
For the "unexpected tag" or "multiplexing overflow" messages, we
now output who_am_i() so we know who had the problem.
Wayne Davison [Thu, 13 Jan 2005 22:01:56 +0000 (22:01 +0000)]
Aid forward-compatibility in the include/exclude syntax by putting
a "- " in front of any name that starts with a '+' or a '-' and would
otherwise be unprefixed (the old code only did this if the '+' or '-'
was followed by a space).
Wayne Davison [Wed, 12 Jan 2005 19:20:07 +0000 (19:20 +0000)]
- Allow multiple source paths to be specified (and checked).
- Allow spaces and a few other extra chars in file names.
- For safety, disallow any option that takes an arg. This should
be improved in the future because it blocks options such as
--block-size=N, but without this rule the user could specify
something like --files-from=FILE or --backup-dir=DIR and have
it affect files outside the desired SUBDIR restriction.
- Switched to SSH_CONNECTION from the deprecated SSH_CLIENT.
- Strip "::ffff:" from the start of an IP from SSH_CONNECTION.
Wayne Davison [Wed, 12 Jan 2005 18:48:26 +0000 (18:48 +0000)]
This is Joe Smith's rrsync (restricted rsync) perl script.
Wayne Davison [Tue, 11 Jan 2005 18:37:37 +0000 (18:37 +0000)]
A simple Makefile.
Wayne Davison [Tue, 11 Jan 2005 18:36:31 +0000 (18:36 +0000)]
A debug program to help diagnose data-transfer corruption problems.
Wayne Davison [Mon, 10 Jan 2005 20:52:08 +0000 (20:52 +0000)]
Fixed the file_checksum1() function that is compiled only when
TEST_MDFOUR is defined: it did not have the fix that the main
rsync code got back in protocol 27 to properly handle files
that are a multiple of 64-bytes long.
Wayne Davison [Mon, 10 Jan 2005 10:08:59 +0000 (10:08 +0000)]
Two more fixes.
Wayne Davison [Mon, 10 Jan 2005 10:03:12 +0000 (10:03 +0000)]
Added a "overwriting_basis" arg to finish_transfer().
Wayne Davison [Mon, 10 Jan 2005 10:03:10 +0000 (10:03 +0000)]
- Call finish_transfer() with its new arg. This ensures that we only
create a backup file if we're about to overwrite the basis file.
- Only clear make_backups for the redo phase if partial_dir isn't set.
Wayne Davison [Mon, 10 Jan 2005 10:03:06 +0000 (10:03 +0000)]
Call finish_transfer() with its new arg.
Wayne Davison [Mon, 10 Jan 2005 00:31:55 +0000 (00:31 +0000)]
Moved the reading of the final MSG_DONE message here from main.c
(this message comes from the receiver). This ensures that any
redo-pass files and delete-after processing are known to be done
prior to the start of our hard-link and dir-time-munging loops.
Wayne Davison [Mon, 10 Jan 2005 00:31:55 +0000 (00:31 +0000)]
Moved the reading of the final MSG_DONE message from here to
generator.c (the message comes from the receiver). This ensures
that any redo-pass files and delete-after processing are known to be
done prior to the start of the hard-link and dir-time-munging loops.
Wayne Davison [Thu, 6 Jan 2005 17:15:36 +0000 (17:15 +0000)]
Mention new atomic-rsync script.
Wayne Davison [Thu, 6 Jan 2005 17:13:31 +0000 (17:13 +0000)]
A perl script to effect an atomic transfer of a set of files.
Wayne Davison [Mon, 3 Jan 2005 23:01:19 +0000 (23:01 +0000)]
Decided that a cross-compling configure should default the
chown-follows-symlinks check to "yes".
Wayne Davison [Mon, 3 Jan 2005 22:49:14 +0000 (22:49 +0000)]
Improved the last addition.
Wayne Davison [Mon, 3 Jan 2005 22:47:55 +0000 (22:47 +0000)]
If lchown() is not available, we only skip the call to chown() for a
symlink if it will try to follow the symlink (as a normal OS should).
Wayne Davison [Mon, 3 Jan 2005 22:42:55 +0000 (22:42 +0000)]
- Added a test to see if chown() follows symlinks.
- Check for getpgrp() and tcgetpgrp().
Wayne Davison [Mon, 3 Jan 2005 21:07:02 +0000 (21:07 +0000)]
Mention lchown() fix.
Wayne Davison [Mon, 3 Jan 2005 21:05:39 +0000 (21:05 +0000)]
If there is no lchown(), don't try to set the user & group of a symlink.
Wayne Davison [Mon, 3 Jan 2005 21:03:33 +0000 (21:03 +0000)]
Moved kluged (conditional) define of lchown from h to syscall.c.
Wayne Davison [Sun, 2 Jan 2005 09:08:59 +0000 (09:08 +0000)]
Backed out changes to send_deflated_token() that surrounded the
call to deflate(..., Z_INSERT_ONLY) -- the underlying bug was
caused by the zlib code not handling Z_INSERT_ONLY in the case
where the server has disabled compression.
Wayne Davison [Sun, 2 Jan 2005 09:03:44 +0000 (09:03 +0000)]
Fixed Z_INSERT_ONLY support in deflate_stored().
Wayne Davison [Sun, 2 Jan 2005 08:49:47 +0000 (08:49 +0000)]
The deflate_stored() function needed to support Z_INSERT_ONLY.
Wayne Davison [Sun, 2 Jan 2005 00:55:55 +0000 (00:55 +0000)]
In send_deflated_token(), the section that handles "token != -2"
now breaks up the calls to deflate() into CHUNK_SIZE chunks, just
like the other sections of the code.
Wayne Davison [Sat, 1 Jan 2005 21:08:20 +0000 (21:08 +0000)]
- Use an int32 for the each block-size variable.
- Fixed a problem in send_deflated_token() where the data we are
compressing might not finish processing in one call.
Wayne Davison [Sat, 1 Jan 2005 21:08:17 +0000 (21:08 +0000)]
- Use an int32 for the each block-size variable.
- Fixed a potential overflow in the map_size calculation.
Wayne Davison [Sat, 1 Jan 2005 21:08:14 +0000 (21:08 +0000)]
Use an int32 for the each block-size variable.
Wayne Davison [Sat, 1 Jan 2005 21:08:11 +0000 (21:08 +0000)]
- Use an int32 for the each block-size variable.
- Improved the layout and error-checking of the code that
calculates the block-size and the number of checksum bits.
Wayne Davison [Sat, 1 Jan 2005 21:08:07 +0000 (21:08 +0000)]
- Use an int32 for the each block-size variable.
- Renamed the local block_size arg to blk_size (to avoid
confusion with the global block_size variable).
Wayne Davison [Sat, 1 Jan 2005 21:08:05 +0000 (21:08 +0000)]
- Use an int32 for each checksum length variable.
- Simplified some of the code, removing a useless memcpy().
Wayne Davison [Fri, 31 Dec 2004 09:41:04 +0000 (09:41 +0000)]
Since lp_bind_address() can't return NULL, we need to check if it is
an empty string and ignore it when it is.
Wayne Davison [Fri, 31 Dec 2004 00:41:32 +0000 (00:41 +0000)]
A minor improvement to the just-committed code.
Wayne Davison [Fri, 31 Dec 2004 00:39:59 +0000 (00:39 +0000)]
The code that tries to read an error from the socket in an abnormal-
exit situation was properly forcing the io_timeout value down to 30
seconds, but failing to set the select_timeout value.
Wayne Davison [Fri, 31 Dec 2004 00:35:03 +0000 (00:35 +0000)]
Set select_timeout if the per-module timeout value was lower than
the default select_timeout value.
Wayne Davison [Wed, 22 Dec 2004 09:10:08 +0000 (09:10 +0000)]
If we send --files-from to the remote server and relative-paths
are not enabled, we need to also send --no-relative.
Wayne Davison [Thu, 16 Dec 2004 22:48:31 +0000 (22:48 +0000)]
Mention latest fix.
Wayne Davison [Thu, 16 Dec 2004 22:47:36 +0000 (22:47 +0000)]
The "ignore nonreadable" daemon parameter no longer affects
symlinks that are being copied, even if they point nowhere.
Wayne Davison [Tue, 14 Dec 2004 19:41:19 +0000 (19:41 +0000)]
Got rid of the rare failure caused by a directory-time mismatch.
Wayne Davison [Mon, 13 Dec 2004 17:22:32 +0000 (17:22 +0000)]
Don't call do_lstat() unless SUPPORT_LINKS is defined.
Wayne Davison [Wed, 8 Dec 2004 17:30:40 +0000 (17:30 +0000)]
Document the client version of the --port option.
Wayne Davison [Wed, 8 Dec 2004 17:29:54 +0000 (17:29 +0000)]
Allow --port to be used in client mode (as well as daemon mode).
Wayne Davison [Wed, 8 Dec 2004 17:11:15 +0000 (17:11 +0000)]
If rsync_port is 0, set it to RSYNC_PORT.
Wayne Davison [Wed, 8 Dec 2004 17:09:59 +0000 (17:09 +0000)]
Switching to a better rsync_port fix.
Wayne Davison [Mon, 6 Dec 2004 22:45:10 +0000 (22:45 +0000)]
Document the new "address" global option.
Wayne Davison [Mon, 6 Dec 2004 22:45:07 +0000 (22:45 +0000)]
Made --port and --address point the user at the relevant global
options in the rsyncd.conf manpage.
Wayne Davison [Mon, 6 Dec 2004 22:45:03 +0000 (22:45 +0000)]
Check the global option "address" if the user didn't specify
an --address option when starting the daemon.
Wayne Davison [Mon, 6 Dec 2004 22:45:00 +0000 (22:45 +0000)]
Added support for the "address" option.
Wayne Davison [Mon, 6 Dec 2004 17:57:06 +0000 (17:57 +0000)]
Set default port value for a :: file-spec without a port number.