summaryrefslogtreecommitdiff
path: root/receiver.c
Commit message (Collapse)AuthorAgeFilesLines
* Merge signedness security patch from Sebastian KrahmerMartin Pool2002-01-251-47/+47
| | | | | | | <krahmer@suse.de> -- in some cases we were not sufficiently careful about reading integers from the network. Possibly some other changes are required.
* Doc.Martin Pool2002-01-231-1/+1
| | | | | do_hard_links() actually only looks at the global hardlink table, so it can be a (void) fn. (Another gcc warning...)
* Signedness security patch from Sebastian Krahmer <krahmer@suse.de> --Martin Pool2002-01-231-1/+2
| | | | | | | in some cases we were not sufficiently careful about reading integers from the network. Also, make sure log messages are always nul-terminated.
* Always use 64-bit ino_t and dev_t internally, so that we can detectMartin Pool2002-01-111-2/+2
| | | | | hardlinks if coming from a larger platform. Add heaps of comments explaining why this is so.
* imported new snprintf.c from samba, got rid of slprintfAndrew Tridgell2001-05-071-4/+4
|
* use mkstemp on systems where it is secureAndrew Tridgell2001-05-021-15/+11
|
* Better error messages when unlink failsMartin Pool2000-11-081-2/+3
|
* Better error messages when unlink failsMartin Pool2000-11-081-2/+3
|
* add a --ignore-errors optionAndrew Tridgell2000-03-211-1/+2
|
* patch from David Murn to make sure the final 100% is always printedAndrew Tridgell2000-01-251-1/+1
| | | | when using --progress
* fixed a rare SEGV that can happen when a file disappears (due toAndrew Tridgell2000-01-241-3/+5
| | | | another program) during an update
* moved file deletion to before the fork() to prevent a race conditionAndrew Tridgell2000-01-241-7/+1
| | | | pointed out by byrnes@curl.com
* added --backup-dir option from Bob EdwardsAndrew Tridgell2000-01-241-1/+3
| | | | this is very useful for incremental backups
* fix a problem with files > 2GBAndrew Tridgell2000-01-231-6/+6
| | | | (thanks to T.J.Adye@rl.ac.uk)
* added --max-delete optionAndrew Tridgell2000-01-231-1/+4
|
* added some really ugly code to allow errors to propogate toAndrew Tridgell2000-01-231-1/+1
| | | | | | | | | | | | | | clients when writing to a rsync server it works like this: - we have an extra pipe from the receiver to the generator - the server always runs with multiplexing on - errors from the generator go down the multiplexed connection - errors from the receiver go over the pipe, and from there to the multiplexed conn it required some incredibly ugly code. damn.
* added --delete-after option (suggested by Jason)Andrew Tridgell1999-11-081-2/+11
|
* solved the problem of not using the right permissions whenAndrew Tridgell1999-10-311-0/+8
| | | | preserve_perms is off.
* added "ignore errors" option in rsyncd.confAndrew Tridgell1999-10-311-1/+2
|
* use do_open() instead of open() in several places to help the WinXX portAndrew Tridgell1999-10-251-2/+2
| | | | and O_BINARY
* fixed a nasty bug in the handling of "local_name" when setting theAndrew Tridgell1999-04-061-1/+1
| | | | permissions on directories after a transfer.
* Backed out the change to create missing parent directories when usingDavid Dykstra1999-03-241-2/+4
| | | | | | | | | | | | | | | | --compare-dest. It was due to an incomplete analysis of the problem, sorry. I left a comment in its place indicating that normally the parent directories should already have been created. It turned out to actually be a bug in nsbd in which it was not always including all the parent directories in the include list like it was supposed to. The files themselves were still being sent but that was only because my exclude_the_rest optimization was kicking in; if it weren't, excluding the parent directories would have had the side effect of excluding the files too. So it really had nothing to do with the --compare-dest option after all, just with the requirement that if you use --exclude '*' you need to explicitly include all parent directories of files you include.
* Fix bug with --compare-dest option where missing parent directories in theDavid Dykstra1999-03-231-1/+2
| | | | | | | | | | | target destination were not getting created. There was a case in receiver.c to do that but it was only getting invoked when the -R option is specified, although I don't know why it was limited to that. It's too bad I didn't get a chance to more fully test the use of --compare-dest by my nsbd program before releasing rsync 2.3.0. I'll probably need to put a workaround in nsbd too until the next release of rsync.
* When a file cannot be deleted because of ETXTBSY (in particular, when anDavid Dykstra1999-03-111-1/+1
| | | | | executable is busy on HPUX), rename it instead to .rsyncNNN. Most of the code was submitted by Ketil Kristiansen <ketil-k@osc.no>
* The change a couple days ago to create files initially without group andDavid Dykstra1999-03-041-3/+4
| | | | | | | | | | | | | | | | other access resulted in group and other access being left off when the '-p' option was not used. This fixes it by reintroducing the ACCESSPERMS mask and setting permissions to (file->mode & ACCESSPERMS) if preserve_perms is off. I decided to change the mask INITPERMMASK to INITACCESSPERMS at the same time. When preserve_perms is off, rsync is restored to the previous behavior of having the permissions of the original file with the umask and setuid/setgid bits shut off. Also, I decided that a check for "(updated && (file->mode & ~ACCESSPERMS))" is no longer needed since as far as I can tell that would have only affected permissions when not running as root and when a chgrp was done to a group the user was not a member of, using system V chgrp semantics. This is no longer allowed.
* Change the mask used when creating temporary files from 777 to 700, to preventDavid Dykstra1999-03-011-2/+2
| | | | | | | an obscure race-condition security hole where a file may for a short time have the wrong group. Could have used 707 instead but that's just too weird of a permission. The define name used to be ACCESSPERMS but that is defined as 777 on Linux, so changed the name to INITPERMMASK.
* Changed error message that just said "open %s: %s" to "cannot create %s: %s"David Dykstra1999-02-101-1/+1
| | | | | | | | in receiver.c because it confuses people when they do something like rsync /etc/passwd /tmp/nonexistentdir/passwd and it printed out something like open /tmp/noniexistentdir/.passwd.a004d5 : No such file or directory Reported by kurt_granroth@pobox.com in PR #1253.
* Backup deleted files when using --delete and --backup. Based on aDavid Dykstra1998-11-241-2/+11
| | | | suggested patch from Kanai Makoto (kanai@hallab.co.jp).
* changed strlcat() and strlcpy() to have the same semantics as theAndrew Tridgell1998-11-141-4/+4
| | | | | | OpenBSD functions of the same name. changed slprintf() to take buffer length rather than buffer length -1
* Add comment before call to mktemp saying it is deliberately chosen overDavid Dykstra1998-11-051-0/+4
| | | | mkstemp.
* patch from Alberto Accomazzi <aaccomazzi@cfa.harvard.edu> to addAndrew Tridgell1998-11-031-4/+4
| | | | different exit codes for different conditions.
* Jason told me that's its very important for his site to log exactlyAndrew Tridgell1998-11-021-2/+6
| | | | | how many bytes were needed to be transferred for each file. I added %b and %c log format options to cover this. See the man page for details.
* changes to get rsync working on a CRAY J90. This machine doesn't haveAndrew Tridgell1998-10-291-1/+0
| | | | | a 4 byte integer type (short is 8 bytes). I needed to use a new md4 implementation (I used the portable one I wrote for Samba).
* and I thought I wasn't going to do any rsync coding for a while ...Andrew Tridgell1998-10-281-5/+10
| | | | | | | Jason Andrade convinced me to add ftpd style logging of transfers, enabled with a "transfer logging" option in rsyncd.conf you can customise the format in log.c
* Add --compare-dest option which enables specifying an additional destinationDavid Dykstra1998-10-261-4/+17
| | | | | for comparisons when syncing. Useful for syncing into a scratch area and doing a flash-cutover when it is completed.
* handle OSes where you can't rename a open file in the cleanup code.Andrew Tridgell1998-09-091-3/+3
|
* rsync.c was getting a bit unwieldy so I split the code into 3 modules,Andrew Tridgell1998-07-251-0/+450
for the 3 logical stages of rsync; generator, sender and receiver.