Wayne Davison [Sat, 19 Apr 2008 02:55:08 +0000 (19:55 -0700)]
Reorder the filenames to touch to try to avoid a weird error on Solaris
5.8. Also, use lsh in one of the runs in order to try a hard-link run
that uses a (pretend) remote shell.
Wayne Davison [Fri, 18 Apr 2008 14:20:30 +0000 (07:20 -0700)]
Added a --no-cd option to support/lsh so that the script can be used by
the testsuite. Improved the home-directory-changing code and added an
error message when "localhost" is not the hostname specified. Use the
updated script in the testsuite instead of creating a pretend-ssh script
in a couple spots.
Wayne Davison [Wed, 16 Apr 2008 16:32:22 +0000 (09:32 -0700)]
Fixed a problem with how the daemon filters deal with
a destination directory with a trailing slash.
Wayne Davison [Wed, 16 Apr 2008 16:30:28 +0000 (09:30 -0700)]
Don't allow '.' dir to be excluded by the daemon's filter rules.
Wayne Davison [Wed, 16 Apr 2008 16:11:15 +0000 (09:11 -0700)]
A few $last_touch tweaks.
Wayne Davison [Tue, 15 Apr 2008 15:39:59 +0000 (08:39 -0700)]
When running in --progress mode with a progress message active, the
client now outputs a newline prior to an error message, which avoids
overwriting the active file's last progress line.
Wayne Davison [Tue, 15 Apr 2008 15:34:17 +0000 (08:34 -0700)]
Moved the setting of the socket options before the connect().
Wayne Davison [Tue, 15 Apr 2008 15:32:41 +0000 (08:32 -0700)]
Fixed the %M escape, which was munging the wrong spaces.
Wayne Davison [Tue, 15 Apr 2008 15:27:38 +0000 (08:27 -0700)]
Use overflow_exit() for overflows, not out_of_memory().
Wayne Davison [Tue, 15 Apr 2008 15:26:00 +0000 (08:26 -0700)]
Consistently call the daemon parameters "parameters", not "options",
which allows us to distinguish them from rsync's command-line options.
Wayne Davison [Tue, 15 Apr 2008 15:12:56 +0000 (08:12 -0700)]
Updated the README and the NEWS file.
Wayne Davison [Sat, 12 Apr 2008 05:32:38 +0000 (22:32 -0700)]
Fix a file-globbing bug in the daemon when chroot is on.
Wayne Davison [Sat, 12 Apr 2008 04:57:17 +0000 (21:57 -0700)]
If the daemon test is run as root, use a --config option.
Wayne Davison [Sat, 12 Apr 2008 04:48:32 +0000 (21:48 -0700)]
Prepare repository for more development.
Wayne Davison [Tue, 8 Apr 2008 15:16:05 +0000 (08:16 -0700)]
Preparing for release of 3.0.2
Wayne Davison [Tue, 8 Apr 2008 15:15:39 +0000 (08:15 -0700)]
Call patch-update in its new location.
Wayne Davison [Tue, 8 Apr 2008 15:01:56 +0000 (08:01 -0700)]
Roll over the NEWS files for the next release.
Wayne Davison [Tue, 8 Apr 2008 15:01:43 +0000 (08:01 -0700)]
Fixed a potential overflow issue with realloc() that Sebastian Krahmer
pointed out.
Wayne Davison [Sun, 6 Apr 2008 05:46:48 +0000 (22:46 -0700)]
Have the spec file put more useful stuff into the doc dir.
Wayne Davison [Sun, 6 Apr 2008 05:45:12 +0000 (22:45 -0700)]
Moving some files from support into packaging.
Wayne Davison [Fri, 4 Apr 2008 07:17:00 +0000 (00:17 -0700)]
Comment out the Source1 tar file by default in the spec file.
Wayne Davison [Fri, 4 Apr 2008 07:05:44 +0000 (00:05 -0700)]
Fixed the code that removes old file versions for a final release.
Wayne Davison [Fri, 4 Apr 2008 07:04:58 +0000 (00:04 -0700)]
Bump the repository version to 3.0.2dev.
Wayne Davison [Fri, 4 Apr 2008 05:37:01 +0000 (22:37 -0700)]
Preparing for release of 3.0.1
Wayne Davison [Wed, 2 Apr 2008 03:00:08 +0000 (20:00 -0700)]
A few more spec-file tweaks.
Wayne Davison [Tue, 1 Apr 2008 19:19:36 +0000 (12:19 -0700)]
Define a "srcdir" in the spec file and use it in the URLs for the
source files so that they use the unchanging src or src-preview
subdirectory location for the file.
Wayne Davison [Mon, 31 Mar 2008 21:10:07 +0000 (14:10 -0700)]
Tweaked spec to use "rsync" in place of "%{name}" in a few
places (which allows for easier creation of adjunct RPMs).
Wayne Davison [Mon, 31 Mar 2008 14:46:47 +0000 (07:46 -0700)]
A simple change to change_pathname() to ensure that the error output
mentions the right path when dir == NULL.
Wayne Davison [Mon, 31 Mar 2008 06:29:43 +0000 (23:29 -0700)]
Preparing for release of 3.0.1pre3
Wayne Davison [Sun, 30 Mar 2008 22:40:34 +0000 (15:40 -0700)]
Improved the chdir() code:
- Renamed push_dir() to change_dir() and revised it a little so that it
can chdir() to a relative path without an intervening chdir() back to
the staring path.
- Renamed push_pathname() to change_pathname() and revised it to take
different args and to only call path_is_daemon_excluded() on a new
path (not a revisit of a file's already-checked path).
- Fixed change_pathname() to set the right pathname value when a chdir()
call fails.
- Set orig_dir once outside of the change_pathname() function.
- Got rid of pop_dir().
Wayne Davison [Sun, 30 Mar 2008 15:05:50 +0000 (08:05 -0700)]
Some argc-based actions in parse_arguments() shouldn't happen on
the server side.
Wayne Davison [Sun, 30 Mar 2008 15:05:42 +0000 (08:05 -0700)]
Fixed a path-exclusion glitch when checking more than one arg.
Wayne Davison [Sun, 30 Mar 2008 05:53:03 +0000 (22:53 -0700)]
Improved the code that protects a '.' dir from exclusion.
This fixed a glitch in the daemon-exclusion code that allowed
an exclude rule such as ".*" or "*/" to affect a '.' dir.
Wayne Davison [Fri, 28 Mar 2008 17:40:17 +0000 (10:40 -0700)]
Extended a test to ensure that hard-linked distant files continues
to work in incremental-recursion mode.
Wayne Davison [Fri, 28 Mar 2008 17:30:19 +0000 (10:30 -0700)]
Allow the file-list sending code to set XMIT_SAME_UID/XMIT_SAME_GID
when owner/group info isn't being preserved. This helps to ensure
that the lower 8 bits of the xflags aren't 0, and is what older
rsync versions did.
Wayne Davison [Fri, 28 Mar 2008 17:30:11 +0000 (10:30 -0700)]
Dump an extraneous empty line.
Wayne Davison [Thu, 27 Mar 2008 00:12:07 +0000 (17:12 -0700)]
Preparing for release of 3.0.1pre2
Wayne Davison [Thu, 27 Mar 2008 00:04:29 +0000 (17:04 -0700)]
Mention two more NEWS items.
Wayne Davison [Wed, 26 Mar 2008 23:49:12 +0000 (16:49 -0700)]
Ensure that a per-dir merge file is also loaded from implied directories
in the sender (was working in incremental mode).
Wayne Davison [Wed, 26 Mar 2008 23:12:39 +0000 (16:12 -0700)]
Fixed the discovery of a prior finished hard-link when the entry
is old enough that it is no longer in the flist data.
Wayne Davison [Wed, 26 Mar 2008 21:01:52 +0000 (14:01 -0700)]
Improved a length check in parse_merge_name().
Wayne Davison [Wed, 26 Mar 2008 18:01:09 +0000 (11:01 -0700)]
Ensure that a per-dir merge file is also loaded from implied directories
in the generator (for protocol 30, at least).
Wayne Davison [Tue, 25 Mar 2008 17:46:06 +0000 (10:46 -0700)]
Fixed the way rsync handles iconv-conversion problems in the file-list:
- If the sender cannot convert a name, the discarding of the entry now
occurs soon enough to avoid affecting the sender's list (which was
causing the file-list on the receiving side to be out of sync).
- If the receiver cannot convert a name, its transformation of the name
into an empty name (which indicates that the entry should be skipped)
is no longer thwarted by the clean_fname() call (which was changing
the name into a ".").
Wayne Davison [Tue, 25 Mar 2008 04:15:51 +0000 (21:15 -0700)]
Preparing for release of 3.0.1pre1
Wayne Davison [Tue, 25 Mar 2008 03:30:44 +0000 (20:30 -0700)]
Some more improvements for the packaging/release-rsync script:
- Check early if the version tag already exists, so it aborts right
away if the release script can't do its work.
- Update the files in the "patches" dir while merging the master branch
into the patch branches (done before creating the release patches for
the rsync-patches tar file).
- Allow the user to ask to visit each patch when updating them.
- Pause after initial patch updating so that any extra patch changes
can be done before the creating of the tar files.
- Ask for the GPG signing passphrase once for all signing commands.
Wayne Davison [Tue, 25 Mar 2008 02:30:51 +0000 (19:30 -0700)]
Some improvements for support/patch-update:
- Added a --shell option which starts a sub-shell on each patch branch.
- Don't allow the user to exit a sub-shell if the branch is not clean.
- If the sub-shell exited with a non-zero exit status, prompt to see if
the user wanted to abort rather than assuming that.
- Wait to start the new patch-file output until after the shell runs.
- Always return to the starting branch on exit.
Wayne Davison [Mon, 24 Mar 2008 17:09:00 +0000 (10:09 -0700)]
Don't send daemon-config filter-action messages back to the user.
Wayne Davison [Mon, 24 Mar 2008 16:33:07 +0000 (09:33 -0700)]
Improved --dirs/--no-dirs/--list-only option handling:
- Moved setting of list_only and xfer_dirs from main.c to options.c.
- Fixed the ability of the user to force --no-dirs.
- Added the --old-dirs/--old-d option to make it easier to interact
in list-only mode with an older rsync.
- Suggest the use of --old-d instead of "-r --exclude='/*/*'".
Wayne Davison [Sun, 23 Mar 2008 17:06:53 +0000 (10:06 -0700)]
Added a couple more NEWS items.
Wayne Davison [Sun, 23 Mar 2008 14:33:24 +0000 (07:33 -0700)]
Properly handle a new patch-branch that is only available locally.
Wayne Davison [Sun, 23 Mar 2008 06:45:05 +0000 (23:45 -0700)]
Changed the way version numbering of pre-releases will be done in
the RPM spec file so that they order prior to the final release.
Wayne Davison [Sun, 23 Mar 2008 05:15:20 +0000 (22:15 -0700)]
More NEWS updates and improvements.
Wayne Davison [Sat, 22 Mar 2008 22:29:34 +0000 (15:29 -0700)]
Made the filename arg-parsing code skip args that have excluded path
components, returning the same errors that would occur if the path
elements didn't actually exist. The glob_match() code was also
changed to no longer truncate an arg with an excluded path element
(it just omits excluded items from glob matching).
Wayne Davison [Sat, 22 Mar 2008 19:34:03 +0000 (12:34 -0700)]
Added XFLG_DIR2WILD3 flag that the daemon uses to transform any
config-file dir/ exclude rule into a dir/*** rule.
Wayne Davison [Sat, 22 Mar 2008 19:30:43 +0000 (12:30 -0700)]
A couple fixes in add_rule() for XFLG_ABS_IF_SLASH:
- Remove the trailing slash earlier, so that it doesn't
affect the XFLG_ABS_IF_SLASH check.
- Count the slashes earlier so that the XFLG_ABS_IF_SLASH
can use it instead of using a strchr() all that could
scan past the end of the input.
Wayne Davison [Sat, 22 Mar 2008 19:21:41 +0000 (12:21 -0700)]
Change ex_len to pre_len in add_rule().
Wayne Davison [Sat, 22 Mar 2008 15:13:04 +0000 (08:13 -0700)]
Improved ENSURE_MEMSPACE() macro and use it in more places in glob code.
Wayne Davison [Sat, 22 Mar 2008 00:50:01 +0000 (17:50 -0700)]
Mention the most recent changes in the NEWS.
Wayne Davison [Fri, 21 Mar 2008 23:28:20 +0000 (16:28 -0700)]
Some RPM spec file improvements:
- Added installation of new /etc/xinetd.d/rsync config file.
- Added commented-out lines to demonstrate how to use rsync-patches.
Wayne Davison [Fri, 21 Mar 2008 22:00:28 +0000 (15:00 -0700)]
Make glob_expand() return an indicator if the glob had no matches.
Wayne Davison [Fri, 21 Mar 2008 14:26:25 +0000 (07:26 -0700)]
Changed d_name() to be a static inline function.
Wayne Davison [Fri, 21 Mar 2008 14:11:37 +0000 (07:11 -0700)]
A couple improvements to the new arg-globbing code:
- Put all the state variables into a single struct.
- Reuse the buffer memory for each glob_expand() call until a final
call with a NULL pointer tells us to free it.
Wayne Davison [Fri, 21 Mar 2008 05:51:03 +0000 (22:51 -0700)]
Changed the arg-globbing routine to use a custom arg-globbing algorithm
that does not include any daemon-excluded items in the matches. It is
also not subverted by the presence of one or more dot-dir elements in
an arg.
Wayne Davison [Thu, 20 Mar 2008 18:59:54 +0000 (11:59 -0700)]
Some improvements to the file-name cleaning code:
- Removed the CFN_KEEP_LEADING_DOT_DIR flag for clean_fname().
- Explicitly add an implied dot-dir to the transfer rather than keeping
a leading a "./" prefix as a part of a relative pathname.
- Added the CFN_KEEP_DOT_DIRS flag for clean_fname().
- Added the SP_KEEP_DOT_DIRS flag for sanitize_path().
- Call clean_fname() a couple more times.
Wayne Davison [Thu, 20 Mar 2008 17:42:43 +0000 (10:42 -0700)]
Changed the name of the server_filter_list to be
daemon_filter_list, for improved clarity.
Wayne Davison [Thu, 20 Mar 2008 17:35:53 +0000 (10:35 -0700)]
Fixed a bug in the truncating of daemon-excluded paths.
Wayne Davison [Wed, 19 Mar 2008 23:44:11 +0000 (16:44 -0700)]
A couple more support/rrsync tweaks:
- Die if the --server option is not first on the command-line.
- Don't allow the --daemon option by default.
Wayne Davison [Wed, 19 Mar 2008 15:57:41 +0000 (08:57 -0700)]
Some more minor changes for the skip/missing/dry_run code.
Matt McCutchen [Wed, 19 Mar 2008 02:16:41 +0000 (22:16 -0400)]
Unsnarl missing_below/dry_run logic.
The generator can skip a directory's contents altogether due to
--ignore-non-existing, a daemon exclude, or a mkdir failure. On a
--dry-run, the generator can also note the missingness of a directory
while still scanning its contents. These two scenarios were conflated
using a single set of missing_below/missing_dir variables in combination
with transient increments in dry_run; this caused at least three bugs.
Now recv_generator has separate variables for the two scenarios, called
skip_dir and dry_missing_dir, respectively. For simplicity, we take the
F_DEPTH instead of having separate *_below variables. We mark both
kinds of missing dirs with FLAG_MISSING_DIR. (dry_run > 1) iff the
*root* of the destination does not exist; it is no longer incremented
for missing subdirs. I added tests for the three fixed bugs in
missing.test.
Matt McCutchen [Tue, 18 Mar 2008 19:28:36 +0000 (15:28 -0400)]
Fix a poorly placed sentence in rsyncd.conf.yo.
Wayne Davison [Tue, 18 Mar 2008 18:41:00 +0000 (11:41 -0700)]
My modified version of Matt's improvements to the sections on
the various filter parameters.
Wayne Davison [Tue, 18 Mar 2008 17:17:02 +0000 (10:17 -0700)]
Improved arg-path checking so that wildcards can't be used to
avoid a daemon-exclude.
Wayne Davison [Tue, 18 Mar 2008 17:10:13 +0000 (10:10 -0700)]
Use the missing_below code to make the daemon-exclusions
work better.
Wayne Davison [Tue, 18 Mar 2008 16:44:42 +0000 (09:44 -0700)]
Reject a daemon-excluded destination.
Wayne Davison [Tue, 18 Mar 2008 15:43:43 +0000 (08:43 -0700)]
Output a non-existent-file error for server-excluded files instead of
silently ignoring them.
Matt McCutchen [Mon, 17 Mar 2008 19:19:13 +0000 (15:19 -0400)]
More typo fixes.
Wayne Davison [Mon, 17 Mar 2008 17:50:11 +0000 (10:50 -0700)]
A couple more changes for dealing with "checker" warnings.
Matt McCutchen [Mon, 17 Mar 2008 15:30:08 +0000 (11:30 -0400)]
Fix typo in rsyncd.conf man page.
Wayne Davison [Mon, 17 Mar 2008 14:34:22 +0000 (07:34 -0700)]
Attempting to silence some more "checker" warnings.
Wayne Davison [Mon, 17 Mar 2008 05:43:35 +0000 (22:43 -0700)]
Mention all the latest changes in the NEWS file.
Wayne Davison [Mon, 17 Mar 2008 04:49:19 +0000 (21:49 -0700)]
If we're not compiling one or more major options (ACLs, xattrs, & iconv),
try to turn off unused-parameter compiler warnings.
Wayne Davison [Mon, 17 Mar 2008 04:43:27 +0000 (21:43 -0700)]
Changed stat() call to do_stat().
Wayne Davison [Mon, 17 Mar 2008 03:39:16 +0000 (20:39 -0700)]
Moved declaration of "int i" outside the ifdef in send_protected_args().
Wayne Davison [Mon, 17 Mar 2008 03:35:18 +0000 (20:35 -0700)]
If the system's popt.h file is not found, use our provided popt code.
Wayne Davison [Mon, 17 Mar 2008 02:48:44 +0000 (19:48 -0700)]
Added "const" to a couple more char * args.
Wayne Davison [Mon, 17 Mar 2008 01:06:47 +0000 (18:06 -0700)]
Fixed hard-linking when some of the files can get skipped. This adds
the FLAG_SKIP_HLINK flag, which gets set on any hard-linked file that
the user wants to skip (e.g. via --ignore-existing, --append, etc.).
The code in hlink.c now deals with the skipped files instead of
triggering an assert() error.
Wayne Davison [Mon, 17 Mar 2008 00:52:01 +0000 (17:52 -0700)]
Made the FLAG_MOUNT_DIR bit only honored on a directory.
Wayne Davison [Mon, 17 Mar 2008 00:50:28 +0000 (17:50 -0700)]
Moved the --append check so that files that don't need to be transferred
still get their non-content attributes updated, and combining --append
with --hard-links will not prevent the discovery of unchanged files.
Wayne Davison [Mon, 17 Mar 2008 00:06:52 +0000 (17:06 -0700)]
Make the --ignore-existing option not overwrite a regular file with
a dir/symlink/device/special-file, just like it already refuses to
overwrite a non-regular file with a regular file.
Wayne Davison [Sun, 16 Mar 2008 19:11:19 +0000 (12:11 -0700)]
A daemon no longer tries to refuse the iconv option when it is not enabled.
Wayne Davison [Sun, 16 Mar 2008 13:56:26 +0000 (06:56 -0700)]
Fixed a hang when using --remove-source-files in dry-run mode.
Wayne Davison [Sat, 15 Mar 2008 21:09:20 +0000 (14:09 -0700)]
Added missing $(CPPFLAGS) from the building of rounding.h.
Wayne Davison [Sat, 15 Mar 2008 18:25:01 +0000 (11:25 -0700)]
Fixed the use of --protect-args (-s) with a daemon.
Wayne Davison [Sat, 15 Mar 2008 15:51:07 +0000 (08:51 -0700)]
Generate a helpful message when we get an option-error from a daemon
while requesting a file-listing and we suspect that the remote rsync
is complaining about the -d option.
Wayne Davison [Sat, 15 Mar 2008 14:27:33 +0000 (07:27 -0700)]
Another optimization of "bp" adding when creating a file_struct.
Wayne Davison [Sat, 15 Mar 2008 14:26:46 +0000 (07:26 -0700)]
Got rid of some useless uses of the -t option.
Wayne Davison [Sat, 15 Mar 2008 07:43:31 +0000 (00:43 -0700)]
- Fixed a crash bug when backing up files with ACLs enabled and we
create a directory in the backup-path area.
- Fixed a bug where make_file() was setting F_PATHNAME() on the
receiving side.
- A non-pool (temp-memory) file structure now stores the size of
its extra_cnt value in the F_DEPTH() int so that unmake_file()
can always be sure of how to free() the memory.
- The ACL-preserving code no longer allocates 4 more bytes per
file entry than it needs.
- Got rid of a useless adding of the symlink length to "bp".
Wayne Davison [Sat, 15 Mar 2008 05:55:59 +0000 (22:55 -0700)]
Have configure check to see if /usr/include/popt/popt.h is around
(rather than /usr/include/popt.h), and use the included popt lib
if it is (to avoid a potential conflict due to our use of -I.).
Wayne Davison [Fri, 14 Mar 2008 00:45:13 +0000 (17:45 -0700)]
(Matt) More itemize clarifications.
Wayne Davison [Wed, 12 Mar 2008 23:51:13 +0000 (16:51 -0700)]
Clarify that the change/checksum itemize flag can be missing
when talking to older rsync versions.