Wayne Davison [Sat, 24 Jul 2004 16:39:53 +0000 (16:39 +0000)]
Call write_stream_flags() from start_write_batch().
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.
Wayne Davison [Fri, 23 Jul 2004 16:59:38 +0000 (16:59 +0000)]
Tweaked a compound line.
Wayne Davison [Fri, 23 Jul 2004 16:59:22 +0000 (16:59 +0000)]
Added a comment.
Wayne Davison [Fri, 23 Jul 2004 02:13:34 +0000 (02:13 +0000)]
Some basic batch-mode tests.
Wayne Davison [Fri, 23 Jul 2004 01:40:22 +0000 (01:40 +0000)]
Chris added a missing "not" to a comment.
Wayne Davison [Fri, 23 Jul 2004 01:39:19 +0000 (01:39 +0000)]
Fixed the opening comments.
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).
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.
Wayne Davison [Thu, 22 Jul 2004 15:43:28 +0000 (15:43 +0000)]
Some --help text fixes.
Wayne Davison [Thu, 22 Jul 2004 15:41:09 +0000 (15:41 +0000)]
Some more --inplace improvements.
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.
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.
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.
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.
Wayne Davison [Thu, 22 Jul 2004 03:23:04 +0000 (03:23 +0000)]
Added even more double-quoting.
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.
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).
Wayne Davison [Wed, 21 Jul 2004 23:59:33 +0000 (23:59 +0000)]
Got rid of read_batch special case.
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.
Wayne Davison [Wed, 21 Jul 2004 23:59:28 +0000 (23:59 +0000)]
Added batch_gen_fd.
Wayne Davison [Wed, 21 Jul 2004 23:59:25 +0000 (23:59 +0000)]
In read_batch mode, we now let the code write out the index value
to the f_out pipe before we return from recv_generator(). This gives
the receiver something to sync with so that it doesn't rush ahead of
us (which could be bad if we didn't have a chance to create the
destination dirs yet).
Wayne Davison [Wed, 21 Jul 2004 23:59:22 +0000 (23:59 +0000)]
Don't write out the protocol_version number in read_batch mode.
Wayne Davison [Wed, 21 Jul 2004 22:50:11 +0000 (22:50 +0000)]
Complain if the user combines --read-batch with --files-from.
Wayne Davison [Wed, 21 Jul 2004 21:06:13 +0000 (21:06 +0000)]
Improved the test a little.
Wayne Davison [Wed, 21 Jul 2004 20:58:32 +0000 (20:58 +0000)]
Adding a test for the --compare-dest option.
Wayne Davison [Wed, 21 Jul 2004 20:17:02 +0000 (20:17 +0000)]
A couple am_sender checks (one negated) were not needed.
Wayne Davison [Tue, 20 Jul 2004 21:35:58 +0000 (21:35 +0000)]
Call map_file() with the new block_size arg (had to delay the
call to map_file() until the block size was known).
Wayne Davison [Tue, 20 Jul 2004 21:35:55 +0000 (21:35 +0000)]
- Call map_file() with the new block_size arg (had to delay the
call to map_file() until the block size was known).
- Got rid of the setting of max_map_size.
Wayne Davison [Tue, 20 Jul 2004 21:35:52 +0000 (21:35 +0000)]
- Added a new block_size arg to map_file(). Use it to set the
new def_window_size member variable.
- Got rid of max_map_size global (we use def_window_size now).
Wayne Davison [Tue, 20 Jul 2004 21:35:49 +0000 (21:35 +0000)]
- Got rid of cleanup_buf (map-file cleanup is not needed).
- Renamed the cleanup_fd* vars.
Wayne Davison [Tue, 20 Jul 2004 21:35:46 +0000 (21:35 +0000)]
Call map_file() with its new block_size arg.
Wayne Davison [Tue, 20 Jul 2004 21:10:20 +0000 (21:10 +0000)]
Tweaked an error message.
Wayne Davison [Tue, 20 Jul 2004 21:08:33 +0000 (21:08 +0000)]
Added a def_window_size variable to struct map_struct.
Wayne Davison [Tue, 20 Jul 2004 18:12:50 +0000 (18:12 +0000)]
- More batch-file improvements.
- A few spelling fixes.
Wayne Davison [Tue, 20 Jul 2004 17:07:55 +0000 (17:07 +0000)]
We now append the exclude list as a "here" document to the end of
the BATCH.sh file.
Wayne Davison [Tue, 20 Jul 2004 16:57:18 +0000 (16:57 +0000)]
Made write_sbuf() non-static.
Wayne Davison [Mon, 19 Jul 2004 17:11:41 +0000 (17:11 +0000)]
Changed write_batch_argvs_file() to new write_batch_shell_file()
call (with extra arg).
Wayne Davison [Mon, 19 Jul 2004 17:05:01 +0000 (17:05 +0000)]
Added new function discard_receive_data().
Wayne Davison [Mon, 19 Jul 2004 16:37:30 +0000 (16:37 +0000)]
- Don't allow some crafty user to try to force us to update a
server-excluded file.
- If get_tmpname() fails we need to discard the update using
receive_data().
Wayne Davison [Mon, 19 Jul 2004 08:27:17 +0000 (08:27 +0000)]
Do a better job of writing out the BATCH.sh file (i.e. quote special
characters and spaces in args, omit all the source args, omit the
include/exclude args if we can).
Wayne Davison [Mon, 19 Jul 2004 03:59:35 +0000 (03:59 +0000)]
Changed batch.rsync_argvs to batch.sh.
Wayne Davison [Mon, 19 Jul 2004 00:53:49 +0000 (00:53 +0000)]
Fixed the argv munging to work properly regardless of whether the
user specified a trailing '=VALUE' or put the value in a separate
arg.
Wayne Davison [Sat, 17 Jul 2004 21:17:34 +0000 (21:17 +0000)]
A very minor optimization was made to read_sbuf(), read_byte(),
write_sbuf(), and write_byte().
Wayne Davison [Sat, 17 Jul 2004 16:44:16 +0000 (16:44 +0000)]
- Improved the warning about --inplace.
- Fixed the sentence describing how to read standard input with
--read-batch.
Wayne Davison [Sat, 17 Jul 2004 16:29:10 +0000 (16:29 +0000)]
Moved the read_batch abort check below the code that handles the
symlinks and devices.
Wayne Davison [Sat, 17 Jul 2004 15:20:00 +0000 (15:20 +0000)]
Revamped some of the io variables and calls to make the various I/O
functions seemlessly work on fds that aren't for the main socket. This
involved changing some fd-variable names (to make them clearer), adding
io_set_sock_fds(), and making input buffering have a better enabled
flag (via an allocated buffer, just like the output buffering). I also
got rid of the fd arg to some functions where the fd arg could only
specify the input or output fd for the socket (which we already know).
Wayne Davison [Sat, 17 Jul 2004 15:19:57 +0000 (15:19 +0000)]
Got rid of the arg to io_start_multiplex_out().
Wayne Davison [Sat, 17 Jul 2004 15:19:54 +0000 (15:19 +0000)]
- Got rid of the arg to the io_start_multiplex_{in,out}() calls.
- Call io_set_sock_fds().
Wayne Davison [Sat, 17 Jul 2004 10:59:14 +0000 (10:59 +0000)]
Changed a MIN() to a MAX() when setting max_map_size.
Wayne Davison [Sat, 17 Jul 2004 00:00:27 +0000 (00:00 +0000)]
Mention the new --inplace option.
Wayne Davison [Fri, 16 Jul 2004 20:06:24 +0000 (20:06 +0000)]
My version of Mark Curtis's --inplace option.
Wayne Davison [Fri, 16 Jul 2004 20:04:20 +0000 (20:04 +0000)]
Added a check for ftruncate.
Wayne Davison [Fri, 16 Jul 2004 18:08:52 +0000 (18:08 +0000)]
Avoid some useless memory copying.
Wayne Davison [Fri, 16 Jul 2004 18:04:23 +0000 (18:04 +0000)]
- Limit the maximum block size we compute for a file.
- Set max_map_size based on the current file's block size (so that
map_ptr() is more efficient with large blocks).
Wayne Davison [Fri, 16 Jul 2004 18:02:30 +0000 (18:02 +0000)]
Added a max_map_size variable, initialized to MAX_MAP_SIZE.
Wayne Davison [Fri, 16 Jul 2004 18:01:30 +0000 (18:01 +0000)]
Limit the block-size that the user can specify.
Wayne Davison [Fri, 16 Jul 2004 17:14:55 +0000 (17:14 +0000)]
Improved a sentence about --whole-file.
Wayne Davison [Fri, 16 Jul 2004 01:32:02 +0000 (01:32 +0000)]
Make wf_writeBufSize based on a multiple of WRITE_SIZE instead
of the unrelated MAX_MAP_SIZE.
Wayne Davison [Thu, 15 Jul 2004 19:06:32 +0000 (19:06 +0000)]
- Complain and die if --dry-run is used with a batch option.
- Improved the warning if a batch option gets sent to the server.
Wayne Davison [Thu, 15 Jul 2004 19:04:54 +0000 (19:04 +0000)]
Changed the batch examples to show how to do a remote read-batch
without first transferring the batch file.
Wayne Davison [Thu, 15 Jul 2004 19:03:50 +0000 (19:03 +0000)]
Expanded the comment on the new batch code.
Wayne Davison [Thu, 15 Jul 2004 17:56:11 +0000 (17:56 +0000)]
Mention that "-" can be used with --read-batch for reading from stdin.
Wayne Davison [Thu, 15 Jul 2004 17:01:51 +0000 (17:01 +0000)]
Allow --read-batch=- to indicate stdin.
Wayne Davison [Thu, 15 Jul 2004 16:27:02 +0000 (16:27 +0000)]
We no longer refer to a batch "prefix".
Wayne Davison [Thu, 15 Jul 2004 03:13:09 +0000 (03:13 +0000)]
Mention new batch-mode changes.
Wayne Davison [Thu, 15 Jul 2004 02:20:08 +0000 (02:20 +0000)]
My modified version of Chris Shoemaker's improved batch-file handling.
Wayne Davison [Wed, 14 Jul 2004 17:11:53 +0000 (17:11 +0000)]
Mention recent changes.
Wayne Davison [Wed, 14 Jul 2004 16:41:10 +0000 (16:41 +0000)]
Tweaked some single-line ifs.
Wayne Davison [Wed, 14 Jul 2004 16:40:08 +0000 (16:40 +0000)]
The "len" to generate_and_send_sums() is supposed to be an OFF_T.
Wayne Davison [Wed, 14 Jul 2004 16:39:08 +0000 (16:39 +0000)]
Committed a space-tweak from Chris Shoemaker.
Wayne Davison [Wed, 14 Jul 2004 07:20:18 +0000 (07:20 +0000)]
Improved the write_batch_argvs_file() routine so that it doesn't
need the character buffers and so that it properly removes the
hostname from the destination arg.
Wayne Davison [Tue, 13 Jul 2004 01:45:51 +0000 (01:45 +0000)]
Got rid of the disable_deltas_p() function (the whole_file value
is now fully set before the generator forks).
Wayne Davison [Tue, 13 Jul 2004 01:44:03 +0000 (01:44 +0000)]
We now conditionally turn on whole_file in do_cmd() right before
calling local_child().
Wayne Davison [Mon, 12 Jul 2004 20:42:48 +0000 (20:42 +0000)]
In generate_files(), changed arg "f" to "f_out", as Chris Shoemaker
suggested.
Wayne Davison [Mon, 12 Jul 2004 07:03:28 +0000 (07:03 +0000)]
Made hard_link_check() compile when SUPPORT_HARD_LINKS isn't enabled.
Wayne Davison [Wed, 7 Jul 2004 08:38:40 +0000 (08:38 +0000)]
Use want_i instead of last_i+1.
Wayne Davison [Wed, 7 Jul 2004 08:25:13 +0000 (08:25 +0000)]
Make the GID_NONE define a little safer.
Wayne Davison [Sun, 4 Jul 2004 08:56:31 +0000 (08:56 +0000)]
Added some missing $(srcdir) references.
Wayne Davison [Sun, 4 Jul 2004 08:07:23 +0000 (08:07 +0000)]
Changed a "for" loop into a "do ... while" loop.
Wayne Davison [Fri, 2 Jul 2004 23:35:30 +0000 (23:35 +0000)]
Optimized away a loop in hash_search().
Wayne Davison [Fri, 2 Jul 2004 18:23:57 +0000 (18:23 +0000)]
Some formatting tweaks.
Wayne Davison [Fri, 2 Jul 2004 18:13:53 +0000 (18:13 +0000)]
Moved the verbose message about renaming the finished file down into
finish_transfer() so that it only gets output when we're actually going
to rename the file.
Wayne Davison [Fri, 2 Jul 2004 18:12:24 +0000 (18:12 +0000)]
Tweaked some formatting.
Wayne Davison [Wed, 30 Jun 2004 07:27:30 +0000 (07:27 +0000)]
Some simple whitespace tweaks.
Wayne Davison [Tue, 29 Jun 2004 19:19:00 +0000 (19:19 +0000)]
Made recv_generator static.
Wayne Davison [Tue, 29 Jun 2004 16:22:54 +0000 (16:22 +0000)]
Optimized away a call to cmp_modtime() for a compare-dest file.
Wayne Davison [Tue, 29 Jun 2004 15:13:18 +0000 (15:13 +0000)]
Mention the extended argv-overflow checking.
Wayne Davison [Tue, 29 Jun 2004 15:12:01 +0000 (15:12 +0000)]
Tweaked an overly-long line.
Wayne Davison [Mon, 28 Jun 2004 17:45:40 +0000 (17:45 +0000)]
A few more improvements to the anti-overflow args[] checking.
Wayne Davison [Mon, 28 Jun 2004 17:25:14 +0000 (17:25 +0000)]
Make sure that do_cmd() doesn't overflow its arg-pointer array
(which was also made larger).
Wayne Davison [Thu, 24 Jun 2004 04:46:02 +0000 (04:46 +0000)]
Got rid of a couple unneeded assignments.
Wayne Davison [Wed, 23 Jun 2004 21:21:19 +0000 (21:21 +0000)]
Restoring correct skip_file() return semantics.
Wayne Davison [Wed, 23 Jun 2004 16:51:21 +0000 (16:51 +0000)]
Thought skip_file() wasn't returning 1 for "skip" and 0 or "keep"
so I reversed the return.
Wayne Davison [Wed, 23 Jun 2004 01:13:09 +0000 (01:13 +0000)]
Fixed a newly-introduced problem in read_timeout() where FD_ZERO(&w_fds)
wasn't always called before w_fds was used.
Wayne Davison [Sun, 20 Jun 2004 21:48:06 +0000 (21:48 +0000)]
Some trivial format tweaks.
Wayne Davison [Sun, 20 Jun 2004 20:37:06 +0000 (20:37 +0000)]
Mentioned the latest socket change and fixed a few typos.
Wayne Davison [Sun, 20 Jun 2004 19:51:19 +0000 (19:51 +0000)]
Restored the code in the IPV6_V6ONLY section that checks the
return value from setsockopt() with one improvement: if the
user has used --ipv6 (-6) we don't discard the IPv6 socket.
This should help people using older Linux kernels that don't
implement IPv6 support quite right.
Wayne Davison [Sun, 20 Jun 2004 19:47:05 +0000 (19:47 +0000)]
Tweaked a comment.
Wayne Davison [Sat, 19 Jun 2004 07:09:57 +0000 (07:09 +0000)]
Must not call check_timeout() before checking the errno value.