* shutdown() of socket connections. This eliminates the abortive
* TCP RST sent by a Winsock-based system when the close() occurs.
**/
-void close_all()
+void close_all(void)
{
#ifdef SHUTDOWN_ALL_SOCKETS
int max_fd;
if (cleanup_fd2 != -1) close(cleanup_fd2);
finish_transfer(cleanup_new_fname, fname, cleanup_file);
}
- io_flush();
+ io_flush(FULL_FLUSH);
if (cleanup_fname)
do_unlink(cleanup_fname);
if (code) {
}
}
- if (code == 0 && (io_error || log_got_error)) {
- code = RERR_PARTIAL;
+ if (code == 0) {
+ if ((io_error & ~IOERR_VANISHED) || log_got_error)
+ code = RERR_PARTIAL;
+ else if (io_error)
+ code = RERR_VANISHED;
}
if (code) log_exit(code, file, line);