Commit Graph

135 Commits

Author SHA1 Message Date
Andrew Tridgell
71c4617611 - on systems (such as intel linux) where off_t is 32 bits but "long long"
is 64 bits use long long to get the totals right when transferring
  more than 2^32 bytes of data.

- use inline on flist_up if the compiler supports it
1998-03-25 11:08:32 +00:00
Andrew Tridgell
3cb6f5d6cb added a --force option.
This options tells rsync to delete directories even if they are not
empty. This applies to both the --delete option and to cases where
rsync tries to copy a normal file but the destination contains a
directory of the same name. Normally rsync will refuse to do a
recursive directory deletion in such cases, by using --force the
recursive deletion will be done.
1998-03-25 06:05:47 +00:00
Andrew Tridgell
366bd9056c changes to make VPATH work correctly, thanks to patl@cag.lcs.mit.edu 1998-03-25 04:14:18 +00:00
Andrew Tridgell
ac71984aae added this so the lib directory gets created when using VPATH 1998-03-25 04:13:17 +00:00
Andrew Tridgell
649d65edf3 - fixed a bug wth the handling of duplicate names with the new fist
structures

- send intermediate directories when using --relative to ensure the
  permissions are set correctly
1998-03-25 03:34:52 +00:00
Andrew Tridgell
7796395a0a don't show basedir in printed path (a aesthetic change only) 1998-03-25 01:59:23 +00:00
Andrew Tridgell
76076c4bbd fixed the problem where you couldn't specify multiple remote
filenames. The fix will need some testing.
1998-03-25 00:40:47 +00:00
Andrew Tridgell
f92ef572b9 check a few HAVE_* macros 1998-03-24 06:42:11 +00:00
Andrew Tridgell
7308bd66e0 added chmod() and chown() to syscall.c 1998-03-24 06:39:16 +00:00
Andrew Tridgell
0d0e2e93e8 test for "long long" and %lld in configure. 1998-03-23 14:46:03 +00:00
Andrew Tridgell
31e125226d added wrappers around all the system calls that can change what is on
disk. The wrappers check for dry_run.
1998-03-23 13:25:30 +00:00
Andrew Tridgell
3a6a366fc5 finished 64 bit file offset support. Hopefully rsync can now transfer
files up to 2^64 bytes in size. Now I just need to find enough disk
space to test this :-)

The 64 bit offset code only works if off_t is 64 bits (or bigger!) on
both ends of the link. If one end tries to send a file greater than
2^31 in size and the other end doesn't support it then rsync will
abort.

This commit also cleans up some static declarations so they are in a
unitinitialised segment to save load time.
1998-03-23 12:52:57 +00:00
Andrew Tridgell
0b91056090 started to add some 64 bit file offset support - not complete yet 1998-03-23 08:49:48 +00:00
Andrew Tridgell
a76a0039fc label this version 1.7.0alpha 1998-03-23 07:26:14 +00:00
Andrew Tridgell
2d0bb8eb0f save some more memory by only allocating the checksum when needed 1998-03-23 07:25:21 +00:00
Andrew Tridgell
e7ebc36c70 if the file changes during transfer then don't loop forever trying to
update it
1998-03-23 07:11:51 +00:00
Andrew Tridgell
1aa71c8d57 don't adapt the block size to above half the chunk size 1998-03-23 06:26:08 +00:00
Andrew Tridgell
bd39e9d263 prototype update 1998-03-23 04:47:40 +00:00
Andrew Tridgell
3ba62a8308 - keep a list of pids and send them a SIGUSR1 for cleanup rather than
using setpgrp()

- adapt the block size for really large files to reduce the checksum
  size and memory overheads
1998-03-23 04:44:44 +00:00
Andrew Tridgell
feaa89c410 for systems with a broken select use u_sleep() to ensure the write
process doesn't chew too much cpu time.
1998-03-23 04:14:21 +00:00
Andrew Tridgell
3ec4dd9781 a large change to make rsync much more memory efficient. This is done
in 3 ways:

1) the realloc is done on a list of pointers, not a list of structures
2) only the basename of the file is now kept in the file struct an a
   util function f_name() is now used to access the full name when
   required.
3) pointers to directory names are re-used

hopefully I haven't broken anything. This will need lots of testing.
1998-03-23 03:45:02 +00:00
Andrew Tridgell
ec0e5ac001 compatibility functions now split into their own file 1998-02-24 11:54:10 +00:00
Andrew Tridgell
1e9f155ade *** empty log message *** 1998-01-27 17:51:37 +00:00
Andrew Tridgell
6bbbc08b83 *** empty log message *** v1.6.9 1998-01-13 19:25:59 +00:00
Andrew Tridgell
13dc412d76 *** empty log message *** 1998-01-13 19:19:48 +00:00
Andrew Tridgell
950ab32d38 *** empty log message *** 1998-01-13 18:35:10 +00:00
Andrew Tridgell
d0390cd384 *** empty log message *** 1998-01-13 17:16:14 +00:00
Andrew Tridgell
f6c347425a *** empty log message *** 1998-01-13 15:57:26 +00:00
Andrew Tridgell
3b3a2fbcf0 *** empty log message *** 1998-01-06 16:53:52 +00:00
Andrew Tridgell
95a38e8684 cosmetic changes only
- minor correction to --update docs
- don't print "building file list" stuff when building a local file
list for use in the --delete code.
- remove some spaces at the end of lines in Makefile.in
1998-01-05 23:30:44 +00:00
Andrew Tridgell
c778aaa048 *** empty log message *** 1998-01-01 15:53:05 +00:00
Andrew Tridgell
3fac9b6e93 removed the read_write() call, it's not used anywhere 1997-12-31 16:48:11 +00:00
Andrew Tridgell
964ca2eca5 simplified the logic of whether to skip a file or not. The -c
(always_checksum) option is probably now more useful.
1997-12-31 16:39:34 +00:00
Andrew Tridgell
684b4e3113 buffer overflow patches from mhpower@mit.edu (Matt Power) 1997-12-30 17:36:58 +00:00
Andrew Tridgell
dc7a947853 fixed the --suffix option. It wasn't being propogated to the remote
end in the server_options() function.
1997-12-30 10:54:47 +00:00
rsync-bugs
b73c59a2c4 preparing for release of 1.6.8 v1.6.8 1997-12-28 22:28:21 +00:00
Andrew Tridgell
f3644f1f2d - added a debug message
- rebuilt prototypes
1997-12-28 22:26:51 +00:00
Andrew Tridgell
e3cd198f8e - fixed spelling errors in man page
- fixed bug in hard link handling that could lead to spurious hard
links.
- fixed bug in the string handling in flist.c
1997-12-28 22:13:40 +00:00
Andrew Tridgell
5c36219d40 following a report of problems with Linux/alpha I've changed zlib.c to
use uint32 instead of "long" in several places. Apparently this fixes
things on the alpha. The strange thing is that my own tests on a
OSF/alpha box and a 64 bit IRIX box showed no problems. I wonder what
was actually going wrong? I'll email the zlib maintainers and let them
know.
1997-12-18 11:18:32 +00:00
Andrew Tridgell
f0e5517fb8 added a new mirror site to the README 1997-12-18 11:13:27 +00:00
rsync-bugs
18463a5a5a preparing for release of 1.6.7 v1.6.7 1997-12-17 11:19:01 +00:00
Andrew Tridgell
82306bf6d6 *** empty log message *** 1997-12-17 11:07:17 +00:00
Andrew Tridgell
cbbe489208 handle things more grecefully when one machine supports hard links and
the other doesn't or one machine supports soft links and the other
doesn't.
1997-12-16 23:09:22 +00:00
Andrew Tridgell
6dd1782c42 - check for setlinebuf() in autoconf. Apparently HPUX doesn't have it
- use @exec_prefix@ and @prefix@ in more useful ways in Makefile.in
1997-12-16 22:39:55 +00:00
Andrew Tridgell
fee64929a3 fixed a bug in the handling of the new --relative option. The file was
being opened twice but closed once. The process eventually died with
an out of file descriptors error.
1997-12-16 20:29:35 +00:00
rsync-bugs
bf5e5f68d9 preparing for release of 1.6.6 v1.6.6 1997-12-16 18:20:10 +00:00
Andrew Tridgell
12384c3aff Checker showed that zlib was using a element of its internal state
structure without initialising it. Although it looks harmless I've
added a bzero() to make absolutely sure that the code behaves
consistently across platforms.
1997-12-16 18:18:02 +00:00
Andrew Tridgell
d966ee254a fixed a nasty bug in the handling of the --delete option when there
are duplicate file names in the list of files to be transferred
(eg. the user specifies the same file twice).
1997-12-16 17:59:49 +00:00
Andrew Tridgell
97d6916e2d #if 0 the write exception code for the moment. I need to work out why
it gets a successful write select on a fd followed by a EAGAIN
write yet the fd is still OK.
1997-12-16 09:25:17 +00:00
rsync-bugs
6296e7b0cb preparing for release of 1.6.5 v1.6.5 1997-12-16 09:14:47 +00:00