Wayne Davison [Mon, 4 Sep 2017 21:20:16 +0000 (14:20 -0700)]
Add "daemon chroot|uid|gid" parameters.
This allows the daemon to run chrooted as any uid+gid you like
(prior to the transfer possibly changing the chroot and/or the
uid+gid further). Based on the patch in #12817.
Wayne Davison [Thu, 31 Aug 2017 15:22:14 +0000 (08:22 -0700)]
Add nanosecond mtime support for Mac OS X.
Slightly tweaked the patch contributed by Heikki Lindholm.
Wayne Davison [Sat, 29 Apr 2017 18:07:39 +0000 (11:07 -0700)]
Add "syslog tag" to rsync daemon config.
Wayne Davison [Mon, 20 Feb 2017 19:04:06 +0000 (11:04 -0800)]
Don't allow --daemon or --server alias via popt.
Fixes bug 12576.
Wayne Davison [Mon, 23 Jan 2017 00:01:45 +0000 (16:01 -0800)]
Add a way to specify xattr name filtering.
Wayne Davison [Sun, 22 Jan 2017 23:44:18 +0000 (15:44 -0800)]
Join some lines.
Wayne Davison [Sun, 22 Jan 2017 23:42:36 +0000 (15:42 -0800)]
Get rid of some superfluous double-quotes in error messages.
Wayne Davison [Mon, 31 Oct 2016 16:06:50 +0000 (09:06 -0700)]
Fix extern of preallocated_len w/o SUPPORT_PREALLOCATION.
Wayne Davison [Sat, 29 Oct 2016 21:47:58 +0000 (14:47 -0700)]
More fixes for --progress quirks.
This patch avoids inconsistent evaluation of options in the
show_filelist_p() function by turning it into a var. We
also avoid setting "output_needs_newline" if --quiet was
specified.
Wayne Davison [Sat, 29 Oct 2016 21:33:44 +0000 (14:33 -0700)]
We need a LF after filelist-progress with a CR.
Fixes bug 12367.
Wayne Davison [Sat, 15 Oct 2016 18:13:28 +0000 (11:13 -0700)]
Use S_BLKSIZE when multiplying st_blocks.
Wayne Davison [Mon, 10 Oct 2016 18:49:50 +0000 (11:49 -0700)]
Support --sparse combined with --preallocate or --inplace.
The new code tries to punch holes in the destination file using newer
Linux fallocate features. It also supports a --whole-file + --sparse +
--inplace copy on any filesystem by truncating the destination file.
Stefan Metzmacher [Fri, 22 Jul 2016 17:46:46 +0000 (19:46 +0200)]
xattrs: maintain a hashtable in order to speed up find_matching_xattr()
As a testcase I've used one directory on gpfs with
1000000 files,
each with an xattr called 'name$i' having a value of 'value$i'.
So we also have
1000000 unique xattrs. The source and dest directories
are already in sync before. So the rsync command is basically a noop,
just verifying that everything is already in sync.
The results before this patchset are:
[gpfs]# time rsync -a -P -X -q source-xattr/ dest-with-xattr/
real 8m46.191s
user 6m29.016s
sys 0m24.883s
[gpfs]# time rsync -a -P -q source-xattr/ dest-without-xattr/
real 1m58.462s
user 0m0.957s
sys 0m11.801s
With the patchset I got:
[gpfs]# time /gpfs/rsync.install/bin/rsync -a -P -X -q source-xattr/ dest-with-xattr/
real 2m4.150s
user 0m1.917s
sys 0m17.077s
[gpfs]# time /gpfs/rsync.install/bin/rsync -a -P -q source-xattr/ dest-without-xattr/
real 1m59.534s
user 0m0.924s
sys 0m11.599s
It means the time in userspace dropped from 6m29.016s down to 0m1.917s!
Without -X we get ~ 0m0.9s with or without the patch.
Part of a patchset for bug 5324.
Stefan Metzmacher [Fri, 22 Jul 2016 16:35:18 +0000 (18:35 +0200)]
hashtable: add hashlittle() from lookup3.c, by Bob Jenkins
Part of a patchset for bug 5324.
Stefan Metzmacher [Fri, 22 Jul 2016 16:32:04 +0000 (18:32 +0200)]
xattrs: introduce a rsync_xa_list struct as layer between two nested item_lists
We have the global 'item_list rsync_xal_l', this maintains an array
of rsync_xa_list structure, one per file.
Each rsync_xa_list structure maintains an array of rsync_xa structure,
while each represent a single xattr with name and value.
Part of a patchset for bug 5324.
Stefan Metzmacher [Fri, 22 Jul 2016 16:14:40 +0000 (18:14 +0200)]
xattrs: let rsync_xal_store() return ndx.
Part of a patchset for bug 5324.
Stefan Metzmacher [Fri, 22 Jul 2016 12:43:27 +0000 (14:43 +0200)]
xattrs: add const to empty_xattr
Part of a patchset for bug 5324.
Greg Whiteley [Wed, 20 Jul 2016 07:13:56 +0000 (17:13 +1000)]
Makefile: rounding.h generation requires proto.h via h
Bug 12029 - Makefile missing dep gives parallel race for rounding.h
Signed-off-by: Greg Whiteley <greg.whiteley@gmail.com>
Wayne Davison [Sun, 26 Jun 2016 18:46:18 +0000 (11:46 -0700)]
Fix "could not find xattr #1" errors.
The abbreviated-xattr code can get requests that are not in the same
order as the xattr list, so we need to support wrap-around scanning
of the available xattrs. Fixes bug 6590.
Wayne Davison [Sat, 4 Jun 2016 18:53:33 +0000 (11:53 -0700)]
Fix path check when prior_dir_file is NULL.
Wayne Davison [Sat, 7 May 2016 22:42:20 +0000 (15:42 -0700)]
Improve the top-level section on include/exclude traversal.
This is my edit of some suggestions by Karl O. Pinc.
Wayne Davison [Sun, 1 May 2016 23:32:45 +0000 (16:32 -0700)]
Add --checksum-choice option to choose the checksum algorithms.
Wayne Davison [Sun, 1 May 2016 23:29:34 +0000 (16:29 -0700)]
Tweak indentation only.
Wayne Davison [Sun, 17 Apr 2016 23:31:57 +0000 (16:31 -0700)]
If a backup fails (e.g. full disk) rsync should fail.
Fixes bug 11668.
Wayne Davison [Sun, 17 Apr 2016 23:07:25 +0000 (16:07 -0700)]
Output "UNKNOWN" if starttime or endtime is -1.
Fixes bug 11382.
Wayne Davison [Sun, 17 Apr 2016 22:53:11 +0000 (15:53 -0700)]
Support only splitting users/groups on commas.
Fixes bug 11817.
Wayne Davison [Sun, 17 Apr 2016 18:43:46 +0000 (11:43 -0700)]
Tweak non-fatal output when man pages cannot be created.
Wayne Davison [Sun, 17 Apr 2016 18:20:38 +0000 (11:20 -0700)]
Fix use of obsolete compile macro.
Fixes bug 11813.
Wayne Davison [Sun, 17 Apr 2016 18:06:58 +0000 (11:06 -0700)]
Only output about new backup dirs when requested.
Fixes bug 11812.
Wayne Davison [Sun, 31 Jan 2016 22:40:47 +0000 (14:40 -0800)]
Fix/improve the sort functions.
Fixes bug 11704.
Wayne Davison [Sun, 24 Jan 2016 19:12:38 +0000 (11:12 -0800)]
Add support for comparing nanoseconds on the receiver.
This patch adds the ability to specify --modify-window=-1 (aka -@-1) to
ask rsync to compare files with the full nanosecond timestamps. The
default is still -@0 for the moment, which ignores nanoseconds in time
comparisons. Changing the default to -1 would cause a copy from ext4 to
ext3 to constantly compare as different, or a copy there and back again
to do a full copy as it zeroed all the nanosecond times. Such a change
might be too much of a functional difference for things like backup
solutions to handle without a warning period. The current plan is to
support nanosecond comparisons for those that want them, and possibly
change the default window value from 0 to -1 at some point in the
future.
Wayne Davison [Sun, 24 Jan 2016 19:12:24 +0000 (11:12 -0800)]
Prepare the repository for more development.
Wayne Davison [Thu, 24 Dec 2015 21:09:47 +0000 (13:09 -0800)]
Fix a tweak that should have been untweaked.
Wayne Davison [Mon, 21 Dec 2015 20:00:49 +0000 (12:00 -0800)]
Preparing for release of 3.1.2
Wayne Davison [Mon, 21 Dec 2015 19:56:24 +0000 (11:56 -0800)]
Improve the "use chroot" & "numeric ids" info a bit more.
Wayne Davison [Mon, 21 Dec 2015 18:54:02 +0000 (10:54 -0800)]
Improve the comment a bit more.
Wayne Davison [Sat, 19 Dec 2015 00:09:58 +0000 (16:09 -0800)]
Fix rule for out-of-tree builds.
Fixes bug 11635.
Wayne Davison [Fri, 18 Dec 2015 22:46:28 +0000 (14:46 -0800)]
Don't allow an empty flag name to --info & --debug.
Wayne Davison [Fri, 18 Dec 2015 22:38:10 +0000 (14:38 -0800)]
Document expand_item_list's args & make sure incr==0 works OK.
Wayne Davison [Sat, 5 Dec 2015 19:10:24 +0000 (11:10 -0800)]
Fix return of stat info from try_dests_reg().
The try_dests_reg() function could sometimes tweak the stat struct's
info when it should have been left unchanged. This fixes bug 11545
(where an ACL check of a file that was mistakenly thought to be a
directory failed).
Wayne Davison [Sun, 13 Sep 2015 23:15:17 +0000 (16:15 -0700)]
Add -wo option for write-only rrsync mode.
Wayne Davison [Mon, 7 Sep 2015 16:46:31 +0000 (09:46 -0700)]
Fixed logging of %b & %c when using --log-file.
The %b and %c escapes were outputting cumulative values when logged via
--log-file only (the bug didn't affect daemon transfer logging or the
output of the client's --out-format info). Also unified the %b & %c
switch case to make it easier to maintain. Fixes bug 11496.
Wayne Davison [Wed, 2 Sep 2015 19:20:50 +0000 (12:20 -0700)]
Add support for netbsd in xattrs case.
Closes bug-suggestion 11484.
Wayne Davison [Mon, 24 Aug 2015 18:23:31 +0000 (11:23 -0700)]
Change daemon's gid list to use an "item_list".
Wayne Davison [Mon, 24 Aug 2015 17:07:43 +0000 (10:07 -0700)]
Add configure option to set max daemon gid list.
Fixes bug 11456.
Wayne Davison [Mon, 24 Aug 2015 03:58:04 +0000 (20:58 -0700)]
Avoid creating even the top-level backup dir until needed.
Fixes bug 11423.
Wayne Davison [Mon, 24 Aug 2015 03:52:59 +0000 (20:52 -0700)]
Improve make_path() error return for non-dir element.
Wayne Davison [Sat, 8 Aug 2015 19:47:35 +0000 (12:47 -0700)]
Preparing for release of 3.1.2pre1
Wayne Davison [Sat, 8 Aug 2015 19:47:03 +0000 (12:47 -0700)]
Update the copyright year.
Wayne Davison [Sat, 8 Aug 2015 19:28:55 +0000 (12:28 -0700)]
Mention latest fixes.
Wayne Davison [Sat, 8 Aug 2015 19:19:42 +0000 (12:19 -0700)]
Don't create so many empty backup dirs.
Fixes bug 10724.
Wayne Davison [Sat, 18 Jul 2015 21:31:08 +0000 (14:31 -0700)]
Allow samba.org hostname to be overridden.
Wayne Davison [Mon, 13 Jul 2015 17:56:13 +0000 (10:56 -0700)]
Improve mergedir filter handling internals.
Fixes bug 10995.
Wayne Davison [Sun, 12 Jul 2015 21:00:45 +0000 (14:00 -0700)]
Make sure chk subdir can't diverge in time from its src subdir.
Wayne Davison [Sun, 12 Jul 2015 20:25:37 +0000 (13:25 -0700)]
Avoid --remove-sent-file issue for non-regular files.
Wayne Davison [Sun, 12 Jul 2015 20:10:05 +0000 (13:10 -0700)]
Mention local-only effect of --msgs2stderr.
Wayne Davison [Sun, 12 Jul 2015 17:38:32 +0000 (10:38 -0700)]
Mention how we handle a module named "global".
Wayne Davison [Tue, 7 Jul 2015 17:33:58 +0000 (10:33 -0700)]
Brant Gurganus's autoconf updates.
This improves some obsolete autoconf macros and increases the minimum
autoconf version from 2.60 to 2.69. Fixes bug 11369.
Wayne Davison [Sat, 4 Jul 2015 23:08:08 +0000 (16:08 -0700)]
Add parent-dir validation for --no-inc-recurse too.
Wayne Davison [Wed, 10 Jun 2015 22:20:01 +0000 (15:20 -0700)]
Change "fail" to "test_fail".
Fixes bug 11322.
Wayne Davison [Mon, 11 May 2015 21:31:07 +0000 (14:31 -0700)]
Make the checksum_seed a bit harder to predict.
Wayne Davison [Mon, 11 May 2015 19:36:20 +0000 (12:36 -0700)]
Add compat flag to allow proper seed checksum order.
Fixes the equivalent of librsync's CVE-2014-8242 issue.
Wayne Davison [Fri, 1 May 2015 22:17:41 +0000 (15:17 -0700)]
Pass -I option to aclocal.
Tiziano Müller [Wed, 8 Apr 2015 11:29:42 +0000 (13:29 +0200)]
Use AS_IF instead of plain if/then/fi
Tiziano Müller [Wed, 8 Apr 2015 11:29:41 +0000 (13:29 +0200)]
Ignore .deps directories.
Tiziano Müller [Wed, 8 Apr 2015 11:29:40 +0000 (13:29 +0200)]
Check for perl and assign it to a var since it is needed for generating the protocol header.
Tiziano Müller [Wed, 8 Apr 2015 11:29:39 +0000 (13:29 +0200)]
Remove dead targets from build system
Wayne Davison [Mon, 27 Apr 2015 00:30:15 +0000 (17:30 -0700)]
Handle configure's new version style.
Tiziano Müller [Wed, 8 Apr 2015 11:29:38 +0000 (13:29 +0200)]
Specify package name and version in call to AC_INIT
Tiziano Müller [Wed, 8 Apr 2015 11:29:37 +0000 (13:29 +0200)]
Properly quote arguments for AC_LIBOBJ.
Wayne Davison [Fri, 1 May 2015 21:25:50 +0000 (14:25 -0700)]
Must define LIBOBJDIR in the Makefile.
Tiziano Müller [Wed, 8 Apr 2015 11:29:36 +0000 (13:29 +0200)]
Use AC_CONFIG_LIBOBJ_DIR and AC_REPLACE_FUNCS to adhere to autoconf standards
Tiziano Müller [Wed, 8 Apr 2015 11:29:35 +0000 (13:29 +0200)]
Modularize m4 macros
Split acinclude.m4 into one file per function in m4/
Tiziano Müller [Wed, 8 Apr 2015 11:29:34 +0000 (13:29 +0200)]
Properly quote m4 macro
Wayne Davison [Sun, 26 Apr 2015 23:25:56 +0000 (16:25 -0700)]
Update generated-files logic.
Tiziano Müller [Wed, 8 Apr 2015 11:29:33 +0000 (13:29 +0200)]
Rename aclocal.m4 to acinclude.m4 and add make target
It is common practice to split up m4 files for easier maintenance and
generate the required aclocal.m4 using `aclocal` instead.
Stefan Behrens [Tue, 21 Apr 2015 11:50:38 +0000 (13:50 +0200)]
rsync: fix of-by-one in check of snprintf() result.
Fixes bug 11229.
Wayne Davison [Wed, 31 Dec 2014 20:41:03 +0000 (12:41 -0800)]
Complain if an inc-recursive path is not right for its dir.
This ensures that a malicious sender can't use a just-sent
symlink as a trasnfer path.
Wayne Davison [Wed, 31 Dec 2014 19:12:55 +0000 (11:12 -0800)]
Mention that --append can be dangerous.
Wayne Davison [Wed, 31 Dec 2014 19:02:03 +0000 (11:02 -0800)]
Call set_modtime even if only NSEC is different.
Wayne Davison [Thu, 27 Nov 2014 19:57:35 +0000 (11:57 -0800)]
Use usleep() for msleep() if it is available.
Wayne Davison [Fri, 10 Oct 2014 21:15:11 +0000 (14:15 -0700)]
Add a missing closing paren.
Wayne Davison [Sat, 6 Sep 2014 17:52:49 +0000 (10:52 -0700)]
Prepare the repository for more development.
Wayne Davison [Sat, 6 Sep 2014 17:47:13 +0000 (10:47 -0700)]
Mention DRY RUN in --debug=exit output.
Wayne Davison [Thu, 4 Sep 2014 20:06:13 +0000 (13:06 -0700)]
Adding the long options that BackupPC likes to use.
Wayne Davison [Thu, 31 Jul 2014 22:59:32 +0000 (15:59 -0700)]
Set GIT_MERGE_AUTOEDIT=no in the environment.
Wayne Davison [Thu, 31 Jul 2014 21:52:30 +0000 (14:52 -0700)]
Match latest git's repo branch message.
Wayne Davison [Thu, 31 Jul 2014 21:43:32 +0000 (14:43 -0700)]
Match latest git's repo status messages.
Wayne Davison [Thu, 31 Jul 2014 21:39:09 +0000 (14:39 -0700)]
Remove superfluous ${INSTALL_STRIP} uses.
Wayne Davison [Thu, 31 Jul 2014 21:38:16 +0000 (14:38 -0700)]
Fix a typo.
Wayne Davison [Sun, 22 Jun 2014 16:50:03 +0000 (09:50 -0700)]
Preparing for release of 3.1.1
Wayne Davison [Sun, 22 Jun 2014 16:41:17 +0000 (09:41 -0700)]
Add a clarification about shell wildcard expansion.
Wayne Davison [Sun, 22 Jun 2014 16:04:24 +0000 (09:04 -0700)]
Make sure the link() destination file doesn't exist.
Wayne Davison [Mon, 16 Jun 2014 00:30:09 +0000 (17:30 -0700)]
Make sure cmp_time() doesn't mess up due to a time_t overflow.
Fixes bug 10643.
Wayne Davison [Sat, 14 Jun 2014 16:55:37 +0000 (09:55 -0700)]
Updated NEWS & tweaked a comment.
Wayne Davison [Sat, 14 Jun 2014 16:48:56 +0000 (09:48 -0700)]
Put zlib and popt -I options early in the CFLAGS.
Wayne Davison [Fri, 13 Jun 2014 22:58:26 +0000 (15:58 -0700)]
Fix hard-link bugs when receiver isn't capable.
If the receiving side cannot hard-link symlinks and/or special files
(including devices) then we now properly handle incoming hard-linked
items (creating separate identical items).
Wayne Davison [Sun, 8 Jun 2014 17:22:09 +0000 (10:22 -0700)]
Added a flag to disable xattr hlink optimization.
I added a compatibility flag for protocol 31 that will let both sides
know if they should be using the xattr optimization that attempted to
avoid sending xattr info for hardlinked files. Since this optimization
was causing some issues, this compatibility flag will ensure that both
sides know if they should be trying to use the optimization or not.
Wayne Davison [Sun, 8 Jun 2014 17:21:27 +0000 (10:21 -0700)]
I missed this tweak in the undo of a prior xattr optimization.
Wayne Davison [Mon, 26 May 2014 22:42:03 +0000 (15:42 -0700)]
Preparing for release of 3.1.1pre2