[Bug 13317] rsync returns success when target filesystem is full
samba-bugs at samba.org
samba-bugs at samba.org
Wed Mar 7 23:26:10 UTC 2018
https://bugzilla.samba.org/show_bug.cgi?id=13317
--- Comment #28 from Dave Gordon <dg32768 at zoho.eu> ---
(In reply to Carson Gaspar from comment #27)
Hmm? If you're referring to line 810 of io.c, which is the only write(2) call I
can see in perform_io(), in the current HEAD it looks like this:
810 if ((n = write(iobuf.out_fd, out->buf + out->pos, len)) <= 0) {
...
822 }
...
835 if ((out->pos += n) == out->size) {
...
so that while the immediate test is only for <= 0, the actual result is stored
in n and subsequently used to adjust counters, pointers, etc. I don't think
there's a bug there.
BTW, AFAICT perform_io() is only used for IPC. The received file is written out
by write_file() in fileio.c:
140 /* write_file does not allow incomplete writes. It loops internally
141 * until len bytes are written or errno is set. Note that use_seek and
142 * offset are only used in sparse processing (see write_sparse()). */
143 int write_file(int f, int use_seek, OFF_T offset, const char *buf, int len)
.Dave.
--
You are receiving this mail because:
You are the QA Contact for the bug.
More information about the rsync
mailing list