Changed rprintf() calls that included strerror() to use rsyserr().
This commit is contained in:
36
backup.c
36
backup.c
@@ -49,7 +49,8 @@ static int make_simple_backup(char *fname)
|
||||
if (do_rename(fname, fnamebak) != 0) {
|
||||
/* cygwin (at least version b19) reports EINVAL */
|
||||
if (errno != ENOENT && errno != EINVAL) {
|
||||
rsyserr(FERROR, errno, "rename %s to backup %s", fname, fnamebak);
|
||||
rsyserr(FERROR, errno,
|
||||
"rename %s to backup %s", fname, fnamebak);
|
||||
return 0;
|
||||
}
|
||||
} else if (verbose > 1) {
|
||||
@@ -84,9 +85,9 @@ static int make_bak_dir(char *fullpath)
|
||||
if (do_mkdir(fullpath, 0777 & ~orig_umask) == 0)
|
||||
break;
|
||||
if (errno != ENOENT) {
|
||||
rprintf(FERROR,
|
||||
"make_bak_dir mkdir %s failed: %s\n",
|
||||
full_fname(fullpath), strerror(errno));
|
||||
rsyserr(FERROR, errno,
|
||||
"make_bak_dir mkdir %s failed",
|
||||
full_fname(fullpath));
|
||||
goto failure;
|
||||
}
|
||||
}
|
||||
@@ -98,9 +99,9 @@ static int make_bak_dir(char *fullpath)
|
||||
/* Try to transfer the directory settings of the
|
||||
* actual dir that the files are coming from. */
|
||||
if (do_lstat(rel, &st) != 0) {
|
||||
rprintf(FERROR,
|
||||
"make_bak_dir stat %s failed: %s\n",
|
||||
full_fname(rel), strerror(errno));
|
||||
rsyserr(FERROR, errno,
|
||||
"make_bak_dir stat %s failed",
|
||||
full_fname(rel));
|
||||
} else {
|
||||
do_lchown(fullpath, st.st_uid, st.st_gid);
|
||||
do_chmod(fullpath, st.st_mode);
|
||||
@@ -111,9 +112,8 @@ static int make_bak_dir(char *fullpath)
|
||||
if (p == end)
|
||||
break;
|
||||
if (do_mkdir(fullpath, 0777 & ~orig_umask) < 0) {
|
||||
rprintf(FERROR,
|
||||
"make_bak_dir mkdir %s failed: %s\n",
|
||||
full_fname(fullpath), strerror(errno));
|
||||
rsyserr(FERROR, errno, "make_bak_dir mkdir %s failed",
|
||||
full_fname(fullpath));
|
||||
goto failure;
|
||||
}
|
||||
}
|
||||
@@ -172,8 +172,8 @@ static int keep_backup(char *fname)
|
||||
if (do_mknod(backup_dir_buf, file->mode, file->u.rdev) < 0
|
||||
&& (errno != ENOENT || make_bak_dir(backup_dir_buf) < 0
|
||||
|| do_mknod(backup_dir_buf, file->mode, file->u.rdev) < 0)) {
|
||||
rprintf(FERROR, "mknod %s failed: %s\n",
|
||||
full_fname(backup_dir_buf), strerror(errno));
|
||||
rsyserr(FERROR, errno, "mknod %s failed",
|
||||
full_fname(backup_dir_buf));
|
||||
} else if (verbose > 2) {
|
||||
rprintf(FINFO,
|
||||
"make_backup: DEVICE %s successful.\n",
|
||||
@@ -190,8 +190,8 @@ static int keep_backup(char *fname)
|
||||
if (do_mkdir(backup_dir_buf, file->mode) < 0
|
||||
&& (errno != ENOENT || make_bak_dir(backup_dir_buf) < 0
|
||||
|| do_mkdir(backup_dir_buf, file->mode) < 0)) {
|
||||
rprintf(FINFO, "mkdir %s failed: %s\n",
|
||||
full_fname(backup_dir_buf), strerror(errno));
|
||||
rsyserr(FINFO, errno, "mkdir %s failed",
|
||||
full_fname(backup_dir_buf));
|
||||
}
|
||||
|
||||
ret_code = do_rmdir(fname);
|
||||
@@ -214,8 +214,8 @@ static int keep_backup(char *fname)
|
||||
if (do_symlink(file->u.link, backup_dir_buf) < 0
|
||||
&& (errno != ENOENT || make_bak_dir(backup_dir_buf) < 0
|
||||
|| do_symlink(file->u.link, backup_dir_buf) < 0)) {
|
||||
rprintf(FERROR, "link %s -> %s : %s\n",
|
||||
full_fname(backup_dir_buf), file->u.link, strerror(errno));
|
||||
rsyserr(FERROR, errno, "link %s -> \"%s\"",
|
||||
full_fname(backup_dir_buf), file->u.link);
|
||||
}
|
||||
do_unlink(fname);
|
||||
kept = 1;
|
||||
@@ -230,8 +230,8 @@ static int keep_backup(char *fname)
|
||||
/* move to keep tree if a file */
|
||||
if (!kept) {
|
||||
if (robust_move(fname, backup_dir_buf) != 0) {
|
||||
rprintf(FERROR, "keep_backup failed: %s -> \"%s\": %s\n",
|
||||
full_fname(fname), backup_dir_buf, strerror(errno));
|
||||
rsyserr(FERROR, errno, "keep_backup failed: %s -> \"%s\"",
|
||||
full_fname(fname), backup_dir_buf);
|
||||
}
|
||||
}
|
||||
set_perms(backup_dir_buf, file, NULL, 0);
|
||||
|
||||
39
batch.c
39
batch.c
@@ -34,8 +34,7 @@ void write_batch_flist_info(int flist_count, struct file_struct **files)
|
||||
|
||||
f = do_open(filename, O_WRONLY | O_CREAT | O_TRUNC, S_IRUSR | S_IWUSR);
|
||||
if (f < 0) {
|
||||
rprintf(FERROR, "Batch file %s open error: %s\n",
|
||||
filename, strerror(errno));
|
||||
rsyserr(FERROR, errno, "Batch file %s open error", filename);
|
||||
exit_cleanup(1);
|
||||
}
|
||||
|
||||
@@ -72,8 +71,7 @@ void write_batch_argvs_file(int argc, char *argv[])
|
||||
f = do_open(filename, O_WRONLY | O_CREAT | O_TRUNC,
|
||||
S_IRUSR | S_IWUSR | S_IEXEC);
|
||||
if (f < 0) {
|
||||
rprintf(FERROR, "Batch file %s open error: %s\n",
|
||||
filename, strerror(errno));
|
||||
rsyserr(FERROR, errno, "Batch file %s open error", filename);
|
||||
exit_cleanup(1);
|
||||
}
|
||||
buff[0] = '\0';
|
||||
@@ -111,8 +109,7 @@ void write_batch_argvs_file(int argc, char *argv[])
|
||||
}
|
||||
strlcat(buff, "\n", sizeof buff);
|
||||
if (!write(f, buff, strlen(buff))) {
|
||||
rprintf(FERROR, "Batch file %s write error: %s\n",
|
||||
filename, strerror(errno));
|
||||
rsyserr(FERROR, errno, "Batch file %s write error", filename);
|
||||
close(f);
|
||||
exit_cleanup(1);
|
||||
}
|
||||
@@ -131,8 +128,7 @@ struct file_list *create_flist_from_batch(void)
|
||||
|
||||
f = do_open(filename, O_RDONLY, 0);
|
||||
if (f < 0) {
|
||||
rprintf(FERROR, "Batch file %s open error: %s\n",
|
||||
filename, strerror(errno));
|
||||
rsyserr(FERROR, errno, "Batch file %s open error", filename);
|
||||
exit_cleanup(1);
|
||||
}
|
||||
|
||||
@@ -161,8 +157,7 @@ struct file_list *create_flist_from_batch(void)
|
||||
void write_batch_csums_file(void *buff, int bytes_to_write)
|
||||
{
|
||||
if (write(f_csums, buff, bytes_to_write) < 0) {
|
||||
rprintf(FERROR, "Batch file write error: %s\n",
|
||||
strerror(errno));
|
||||
rsyserr(FERROR, errno, "Batch file write error");
|
||||
close(f_csums);
|
||||
exit_cleanup(1);
|
||||
}
|
||||
@@ -196,8 +191,8 @@ void write_batch_csum_info(int *flist_entry, struct sum_struct *s)
|
||||
f_csums = do_open(filename, O_WRONLY | O_CREAT | O_TRUNC,
|
||||
S_IRUSR | S_IWUSR);
|
||||
if (f_csums < 0) {
|
||||
rprintf(FERROR, "Batch file %s open error: %s\n",
|
||||
filename, strerror(errno));
|
||||
rsyserr(FERROR, errno, "Batch file %s open error",
|
||||
filename);
|
||||
close(f_csums);
|
||||
exit_cleanup(1);
|
||||
}
|
||||
@@ -221,7 +216,7 @@ int read_batch_csums_file(char *buff, int len)
|
||||
int bytes_read;
|
||||
|
||||
if ((bytes_read = read(f_csums, buff, len)) < 0) {
|
||||
rprintf(FERROR, "Batch file read error: %s\n", strerror(errno));
|
||||
rsyserr(FERROR, errno, "Batch file read error");
|
||||
close(f_csums);
|
||||
exit_cleanup(1);
|
||||
}
|
||||
@@ -244,8 +239,8 @@ void read_batch_csum_info(int flist_entry, struct sum_struct *s,
|
||||
|
||||
f_csums = do_open(filename, O_RDONLY, 0);
|
||||
if (f_csums < 0) {
|
||||
rprintf(FERROR, "Batch file %s open error: %s\n",
|
||||
filename, strerror(errno));
|
||||
rsyserr(FERROR, errno, "Batch file %s open error",
|
||||
filename);
|
||||
close(f_csums);
|
||||
exit_cleanup(1);
|
||||
}
|
||||
@@ -284,15 +279,14 @@ void write_batch_delta_file(char *buff, int bytes_to_write)
|
||||
f_delta = do_open(filename, O_WRONLY | O_CREAT | O_TRUNC,
|
||||
S_IRUSR | S_IWUSR);
|
||||
if (f_delta < 0) {
|
||||
rprintf(FERROR, "Batch file %s open error: %s\n",
|
||||
filename, strerror(errno));
|
||||
rsyserr(FERROR, errno, "Batch file %s open error",
|
||||
filename);
|
||||
exit_cleanup(1);
|
||||
}
|
||||
}
|
||||
|
||||
if (write(f_delta, buff, bytes_to_write) < 0) {
|
||||
rprintf(FERROR, "Batch file %s write error: %s\n",
|
||||
filename, strerror(errno));
|
||||
rsyserr(FERROR, errno, "Batch file %s write error", filename);
|
||||
close(f_delta);
|
||||
exit_cleanup(1);
|
||||
}
|
||||
@@ -315,8 +309,8 @@ int read_batch_delta_file(char *buff, int len)
|
||||
|
||||
f_delta = do_open(filename, O_RDONLY, 0);
|
||||
if (f_delta < 0) {
|
||||
rprintf(FERROR, "Batch file %s open error: %s\n",
|
||||
filename, strerror(errno));
|
||||
rsyserr(FERROR, errno, "Batch file %s open error",
|
||||
filename);
|
||||
close(f_delta);
|
||||
exit_cleanup(1);
|
||||
}
|
||||
@@ -324,8 +318,7 @@ int read_batch_delta_file(char *buff, int len)
|
||||
|
||||
bytes_read = read(f_delta, buff, len);
|
||||
if (bytes_read < 0) {
|
||||
rprintf(FERROR, "Batch file %s read error: %s\n",
|
||||
filename, strerror(errno));
|
||||
rsyserr(FERROR, errno, "Batch file %s read error", filename);
|
||||
close(f_delta);
|
||||
exit_cleanup(1);
|
||||
}
|
||||
|
||||
@@ -170,8 +170,7 @@ void client_sockaddr(int fd,
|
||||
|
||||
if (getpeername(fd, (struct sockaddr *) ss, ss_len)) {
|
||||
/* FIXME: Can we really not continue? */
|
||||
rprintf(FERROR, RSYNC_NAME ": getpeername on fd%d failed: %s\n",
|
||||
fd, strerror(errno));
|
||||
rsyserr(FERROR, errno, "getpeername on fd%d failed", fd);
|
||||
exit_cleanup(RERR_SOCKETIO);
|
||||
}
|
||||
|
||||
|
||||
@@ -233,10 +233,10 @@ static int rsync_module(int f_in, int f_out, int i)
|
||||
|
||||
if (!claim_connection(lp_lock_file(i), lp_max_connections(i))) {
|
||||
if (errno) {
|
||||
rprintf(FERROR,"failed to open lock file %s : %s\n",
|
||||
lp_lock_file(i), strerror(errno));
|
||||
io_printf(f_out, "@ERROR: failed to open lock file %s : %s\n",
|
||||
lp_lock_file(i), strerror(errno));
|
||||
rsyserr(FERROR, errno, "failed to open lock file %s",
|
||||
lp_lock_file(i));
|
||||
io_printf(f_out, "@ERROR: failed to open lock file %s\n",
|
||||
lp_lock_file(i));
|
||||
} else {
|
||||
rprintf(FERROR,"max connections (%d) reached\n",
|
||||
lp_max_connections(i));
|
||||
|
||||
26
flist.c
26
flist.c
@@ -778,8 +778,8 @@ struct file_struct *make_file(char *fname,
|
||||
}
|
||||
else {
|
||||
io_error |= IOERR_GENERAL;
|
||||
rprintf(FERROR, "readlink %s failed: %s\n",
|
||||
full_fname(thisname), strerror(save_errno));
|
||||
rsyserr(FERROR, save_errno, "readlink %s failed",
|
||||
full_fname(thisname));
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
@@ -970,8 +970,7 @@ static void send_directory(int f, struct file_list *flist, char *dir)
|
||||
d = opendir(dir);
|
||||
if (!d) {
|
||||
io_error |= IOERR_GENERAL;
|
||||
rprintf(FERROR, "opendir %s failed: %s\n",
|
||||
full_fname(dir), strerror(errno));
|
||||
rsyserr(FERROR, errno, "opendir %s failed", full_fname(dir));
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -1018,8 +1017,7 @@ static void send_directory(int f, struct file_list *flist, char *dir)
|
||||
}
|
||||
if (errno) {
|
||||
io_error |= IOERR_GENERAL;
|
||||
rprintf(FERROR, "readdir(%s): (%d) %s\n",
|
||||
dir, errno, strerror(errno));
|
||||
rsyserr(FERROR, errno, "readdir(%s)", dir);
|
||||
}
|
||||
|
||||
closedir(d);
|
||||
@@ -1054,8 +1052,8 @@ struct file_list *send_file_list(int f, int argc, char *argv[])
|
||||
io_start_buffering_out(f);
|
||||
if (filesfrom_fd >= 0) {
|
||||
if (argv[0] && !push_dir(argv[0])) {
|
||||
rprintf(FERROR, "push_dir %s failed: %s\n",
|
||||
full_fname(argv[0]), strerror(errno));
|
||||
rsyserr(FERROR, errno, "push_dir %s failed",
|
||||
full_fname(argv[0]));
|
||||
exit_cleanup(RERR_FILESELECT);
|
||||
}
|
||||
use_ff_fd = 1;
|
||||
@@ -1092,8 +1090,8 @@ struct file_list *send_file_list(int f, int argc, char *argv[])
|
||||
if (link_stat(fname, &st) != 0) {
|
||||
if (f != -1) {
|
||||
io_error |= IOERR_GENERAL;
|
||||
rprintf(FERROR, "link_stat %s failed: %s\n",
|
||||
full_fname(fname), strerror(errno));
|
||||
rsyserr(FERROR, errno, "link_stat %s failed",
|
||||
full_fname(fname));
|
||||
}
|
||||
continue;
|
||||
}
|
||||
@@ -1162,8 +1160,8 @@ struct file_list *send_file_list(int f, int argc, char *argv[])
|
||||
|
||||
if (!push_dir(dir)) {
|
||||
io_error |= IOERR_GENERAL;
|
||||
rprintf(FERROR, "push_dir %s failed: %s\n",
|
||||
full_fname(dir), strerror(errno));
|
||||
rsyserr(FERROR, errno, "push_dir %s failed",
|
||||
full_fname(dir));
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -1185,8 +1183,8 @@ struct file_list *send_file_list(int f, int argc, char *argv[])
|
||||
flist_dir = NULL;
|
||||
flist_dir_len = 0;
|
||||
if (!pop_dir(olddir)) {
|
||||
rprintf(FERROR, "pop_dir %s failed: %s\n",
|
||||
full_fname(dir), strerror(errno));
|
||||
rsyserr(FERROR, errno, "pop_dir %s failed",
|
||||
full_fname(dir));
|
||||
exit_cleanup(RERR_FILESELECT);
|
||||
}
|
||||
}
|
||||
|
||||
43
generator.c
43
generator.c
@@ -309,19 +309,20 @@ void recv_generator(char *fname, struct file_struct *file, int i, int f_out)
|
||||
if (dry_run) return; /* XXXX -- might cause inaccuracies?? -- mbp */
|
||||
if (statret == 0 && !S_ISDIR(st.st_mode)) {
|
||||
if (robust_unlink(fname) != 0) {
|
||||
rprintf(FERROR,
|
||||
"recv_generator: unlink %s to make room for directory: %s\n",
|
||||
full_fname(fname), strerror(errno));
|
||||
rsyserr(FERROR, errno,
|
||||
"recv_generator: unlink %s to make room for directory",
|
||||
full_fname(fname));
|
||||
return;
|
||||
}
|
||||
statret = -1;
|
||||
}
|
||||
if (statret != 0 && do_mkdir(fname,file->mode) != 0 && errno != EEXIST) {
|
||||
if (!(relative_paths && errno==ENOENT &&
|
||||
create_directory_path(fname, orig_umask)==0 &&
|
||||
do_mkdir(fname,file->mode)==0)) {
|
||||
rprintf(FERROR, "recv_generator: mkdir %s failed: %s\n",
|
||||
full_fname(fname), strerror(errno));
|
||||
if (!(relative_paths && errno == ENOENT
|
||||
&& create_directory_path(fname, orig_umask) == 0
|
||||
&& do_mkdir(fname, file->mode) == 0)) {
|
||||
rsyserr(FERROR, errno,
|
||||
"recv_generator: mkdir %s failed",
|
||||
full_fname(fname));
|
||||
}
|
||||
}
|
||||
/* f_out is set to -1 when doing final directory
|
||||
@@ -362,8 +363,8 @@ void recv_generator(char *fname, struct file_struct *file, int i, int f_out)
|
||||
delete_file(fname);
|
||||
}
|
||||
if (do_symlink(file->u.link,fname) != 0) {
|
||||
rprintf(FERROR, "symlink %s -> \"%s\" failed: %s\n",
|
||||
full_fname(fname), file->u.link, strerror(errno));
|
||||
rsyserr(FERROR, errno, "symlink %s -> \"%s\" failed",
|
||||
full_fname(fname), file->u.link);
|
||||
} else {
|
||||
set_perms(fname,file,NULL,0);
|
||||
if (verbose) {
|
||||
@@ -380,12 +381,13 @@ void recv_generator(char *fname, struct file_struct *file, int i, int f_out)
|
||||
st.st_mode != file->mode ||
|
||||
st.st_rdev != file->u.rdev) {
|
||||
delete_file(fname);
|
||||
if (verbose > 2)
|
||||
if (verbose > 2) {
|
||||
rprintf(FINFO,"mknod(%s,0%o,0x%x)\n",
|
||||
fname,(int)file->mode,(int)file->u.rdev);
|
||||
}
|
||||
if (do_mknod(fname,file->mode,file->u.rdev) != 0) {
|
||||
rprintf(FERROR, "mknod %s failed: %s\n",
|
||||
full_fname(fname), strerror(errno));
|
||||
rsyserr(FERROR, errno, "mknod %s failed",
|
||||
full_fname(fname));
|
||||
} else {
|
||||
set_perms(fname,file,NULL,0);
|
||||
if (verbose)
|
||||
@@ -421,9 +423,8 @@ void recv_generator(char *fname, struct file_struct *file, int i, int f_out)
|
||||
else if (link_dest && !dry_run) {
|
||||
if (do_link(fnamecmpbuf, fname) != 0) {
|
||||
if (verbose > 0) {
|
||||
rprintf(FINFO,"link %s => %s : %s\n",
|
||||
fnamecmpbuf, fname,
|
||||
strerror(errno));
|
||||
rsyserr(FINFO, errno, "link %s => %s",
|
||||
fnamecmpbuf, fname);
|
||||
}
|
||||
}
|
||||
fnamecmp = fnamecmpbuf;
|
||||
@@ -440,9 +441,9 @@ void recv_generator(char *fname, struct file_struct *file, int i, int f_out)
|
||||
write_int(f_out,i);
|
||||
if (!dry_run) write_sum_head(f_out, NULL);
|
||||
} else if (verbose > 1) {
|
||||
rprintf(FERROR,
|
||||
"recv_generator: failed to open %s: %s\n",
|
||||
full_fname(fname), strerror(errno));
|
||||
rsyserr(FERROR, errno,
|
||||
"recv_generator: failed to open %s",
|
||||
full_fname(fname));
|
||||
}
|
||||
return;
|
||||
}
|
||||
@@ -493,8 +494,8 @@ void recv_generator(char *fname, struct file_struct *file, int i, int f_out)
|
||||
fd = do_open(fnamecmp, O_RDONLY, 0);
|
||||
|
||||
if (fd == -1) {
|
||||
rprintf(FERROR, "failed to open %s, continuing: %s\n",
|
||||
full_fname(fnamecmp), strerror(errno));
|
||||
rsyserr(FERROR, errno, "failed to open %s, continuing",
|
||||
full_fname(fnamecmp));
|
||||
/* pretend the file didn't exist */
|
||||
if (preserve_hard_links && hard_link_check(file, HL_SKIP))
|
||||
return;
|
||||
|
||||
11
hlink.c
11
hlink.c
@@ -154,8 +154,8 @@ static void hard_link_one(char *hlink1, char *hlink2)
|
||||
{
|
||||
if (do_link(hlink1, hlink2)) {
|
||||
if (verbose) {
|
||||
rprintf(FINFO, "link %s => %s failed: %s\n",
|
||||
hlink2, hlink1, strerror(errno));
|
||||
rsyserr(FINFO, errno, "link %s => %s failed",
|
||||
hlink2, hlink1);
|
||||
}
|
||||
}
|
||||
else if (verbose)
|
||||
@@ -196,10 +196,9 @@ void do_hard_links(void)
|
||||
continue;
|
||||
} else if (robust_unlink(hlink2)) {
|
||||
if (verbose > 0) {
|
||||
rprintf(FINFO,
|
||||
"unlink %s failed: %s\n",
|
||||
full_fname(hlink2),
|
||||
strerror(errno));
|
||||
rsyserr(FINFO, errno,
|
||||
"unlink %s failed",
|
||||
full_fname(hlink2));
|
||||
}
|
||||
continue;
|
||||
}
|
||||
|
||||
25
io.c
25
io.c
@@ -137,7 +137,7 @@ static void check_timeout(void)
|
||||
|
||||
if (last_io && io_timeout && (t-last_io) >= io_timeout) {
|
||||
if (!am_server && !am_daemon) {
|
||||
rprintf(FERROR,"io timeout after %d seconds - exiting\n",
|
||||
rprintf(FERROR, "io timeout after %d seconds - exiting\n",
|
||||
(int)(t-last_io));
|
||||
}
|
||||
exit_cleanup(RERR_TIMEOUT);
|
||||
@@ -334,10 +334,9 @@ static void whine_about_eof(void)
|
||||
if (kludge_around_eof)
|
||||
exit_cleanup(0);
|
||||
else {
|
||||
rprintf(FERROR,
|
||||
"%s: connection unexpectedly closed "
|
||||
rprintf(FERROR, RSYNC_NAME ": connection unexpectedly closed "
|
||||
"(%.0f bytes read so far)\n",
|
||||
RSYNC_NAME, (double)stats.total_read);
|
||||
(double)stats.total_read);
|
||||
|
||||
exit_cleanup(RERR_STREAMIO);
|
||||
}
|
||||
@@ -349,8 +348,7 @@ static void die_from_readerr(int err)
|
||||
/* this prevents us trying to write errors on a dead socket */
|
||||
io_multiplexing_close();
|
||||
|
||||
rprintf(FERROR, "%s: read error: %s\n",
|
||||
RSYNC_NAME, strerror(err));
|
||||
rsyserr(FERROR, err, "read error");
|
||||
exit_cleanup(RERR_STREAMIO);
|
||||
}
|
||||
|
||||
@@ -368,7 +366,7 @@ static void die_from_readerr(int err)
|
||||
*/
|
||||
static int read_timeout(int fd, char *buf, size_t len)
|
||||
{
|
||||
int n, ret=0;
|
||||
int n, ret = 0;
|
||||
|
||||
io_flush(NORMAL_FLUSH);
|
||||
|
||||
@@ -508,8 +506,8 @@ static int read_timeout(int fd, char *buf, size_t len)
|
||||
whine_about_eof();
|
||||
return -1; /* doesn't return */
|
||||
} else if (n < 0) {
|
||||
if (errno == EINTR || errno == EWOULDBLOCK ||
|
||||
errno == EAGAIN)
|
||||
if (errno == EINTR || errno == EWOULDBLOCK
|
||||
|| errno == EAGAIN)
|
||||
continue;
|
||||
die_from_readerr(errno);
|
||||
}
|
||||
@@ -671,7 +669,7 @@ static int read_unbuffered(int fd, char *buf, size_t len)
|
||||
static void readfd(int fd, char *buffer, size_t N)
|
||||
{
|
||||
int ret;
|
||||
size_t total=0;
|
||||
size_t total = 0;
|
||||
|
||||
while (total < N) {
|
||||
ret = read_unbuffered(fd, buffer + total, N-total);
|
||||
@@ -829,10 +827,9 @@ static void writefd_unbuffered(int fd,char *buf,size_t len)
|
||||
/* Don't try to write errors back
|
||||
* across the stream */
|
||||
io_multiplexing_close();
|
||||
rprintf(FERROR, RSYNC_NAME
|
||||
": writefd_unbuffered failed to write %ld bytes: phase \"%s\": %s\n",
|
||||
(long) len, io_write_phase,
|
||||
strerror(errno));
|
||||
rsyserr(FERROR, errno,
|
||||
"writefd_unbuffered failed to write %ld bytes: phase \"%s\"",
|
||||
(long) len, io_write_phase);
|
||||
exit_cleanup(RERR_STREAMIO);
|
||||
}
|
||||
|
||||
|
||||
4
params.c
4
params.c
@@ -491,8 +491,8 @@ static FILE *OpenConfFile( char *FileName )
|
||||
OpenedFile = fopen( FileName, "r" );
|
||||
if( NULL == OpenedFile )
|
||||
{
|
||||
rprintf(FERROR,"rsync: unable to open configuration file \"%s\": %s\n",
|
||||
FileName, strerror(errno));
|
||||
rsyserr(FERROR, errno, "rsync: unable to open configuration file \"%s\"",
|
||||
FileName);
|
||||
}
|
||||
|
||||
return( OpenedFile );
|
||||
|
||||
20
pipe.c
20
pipe.c
@@ -52,14 +52,14 @@ pid_t piped_child(char **command, int *f_in, int *f_out)
|
||||
}
|
||||
|
||||
if (fd_pair(to_child_pipe) < 0 || fd_pair(from_child_pipe) < 0) {
|
||||
rprintf(FERROR, "pipe: %s\n", strerror(errno));
|
||||
rsyserr(FERROR, errno, "pipe");
|
||||
exit_cleanup(RERR_IPC);
|
||||
}
|
||||
|
||||
|
||||
pid = do_fork();
|
||||
if (pid == -1) {
|
||||
rprintf(FERROR, "fork: %s\n", strerror(errno));
|
||||
rsyserr(FERROR, errno, "fork");
|
||||
exit_cleanup(RERR_IPC);
|
||||
}
|
||||
|
||||
@@ -68,8 +68,7 @@ pid_t piped_child(char **command, int *f_in, int *f_out)
|
||||
close(to_child_pipe[1]) < 0 ||
|
||||
close(from_child_pipe[0]) < 0 ||
|
||||
dup2(from_child_pipe[1], STDOUT_FILENO) < 0) {
|
||||
rprintf(FERROR, "Failed to dup/close : %s\n",
|
||||
strerror(errno));
|
||||
rsyserr(FERROR, errno, "Failed to dup/close");
|
||||
exit_cleanup(RERR_IPC);
|
||||
}
|
||||
if (to_child_pipe[0] != STDIN_FILENO)
|
||||
@@ -81,13 +80,12 @@ pid_t piped_child(char **command, int *f_in, int *f_out)
|
||||
if (blocking_io > 0)
|
||||
set_blocking(STDOUT_FILENO);
|
||||
execvp(command[0], command);
|
||||
rprintf(FERROR, "Failed to exec %s : %s\n",
|
||||
command[0], strerror(errno));
|
||||
rsyserr(FERROR, errno, "Failed to exec %s", command[0]);
|
||||
exit_cleanup(RERR_IPC);
|
||||
}
|
||||
|
||||
if (close(from_child_pipe[1]) < 0 || close(to_child_pipe[0]) < 0) {
|
||||
rprintf(FERROR, "Failed to close : %s\n", strerror(errno));
|
||||
rsyserr(FERROR, errno, "Failed to close");
|
||||
exit_cleanup(RERR_IPC);
|
||||
}
|
||||
|
||||
@@ -106,14 +104,14 @@ pid_t local_child(int argc, char **argv,int *f_in,int *f_out,
|
||||
|
||||
if (fd_pair(to_child_pipe) < 0 ||
|
||||
fd_pair(from_child_pipe) < 0) {
|
||||
rprintf(FERROR,"pipe: %s\n",strerror(errno));
|
||||
rsyserr(FERROR, errno, "pipe");
|
||||
exit_cleanup(RERR_IPC);
|
||||
}
|
||||
|
||||
|
||||
pid = do_fork();
|
||||
if (pid == -1) {
|
||||
rprintf(FERROR,"fork: %s\n",strerror(errno));
|
||||
rsyserr(FERROR, errno, "fork");
|
||||
exit_cleanup(RERR_IPC);
|
||||
}
|
||||
|
||||
@@ -128,7 +126,7 @@ pid_t local_child(int argc, char **argv,int *f_in,int *f_out,
|
||||
close(to_child_pipe[1]) < 0 ||
|
||||
close(from_child_pipe[0]) < 0 ||
|
||||
dup2(from_child_pipe[1], STDOUT_FILENO) < 0) {
|
||||
rprintf(FERROR,"Failed to dup/close : %s\n",strerror(errno));
|
||||
rsyserr(FERROR, errno, "Failed to dup/close");
|
||||
exit_cleanup(RERR_IPC);
|
||||
}
|
||||
if (to_child_pipe[0] != STDIN_FILENO) close(to_child_pipe[0]);
|
||||
@@ -141,7 +139,7 @@ pid_t local_child(int argc, char **argv,int *f_in,int *f_out,
|
||||
|
||||
if (close(from_child_pipe[1]) < 0 ||
|
||||
close(to_child_pipe[0]) < 0) {
|
||||
rprintf(FERROR,"Failed to close : %s\n",strerror(errno));
|
||||
rsyserr(FERROR, errno, "Failed to close");
|
||||
exit_cleanup(RERR_IPC);
|
||||
}
|
||||
|
||||
|
||||
33
receiver.c
33
receiver.c
@@ -51,16 +51,17 @@ static void delete_one(char *fn, int is_dir)
|
||||
{
|
||||
if (!is_dir) {
|
||||
if (robust_unlink(fn) != 0) {
|
||||
rprintf(FERROR, "delete_one: unlink %s failed: %s\n",
|
||||
full_fname(fn), strerror(errno));
|
||||
rsyserr(FERROR, errno, "delete_one: unlink %s failed",
|
||||
full_fname(fn));
|
||||
} else if (verbose) {
|
||||
rprintf(FINFO, "deleting %s\n", fn);
|
||||
}
|
||||
} else {
|
||||
if (do_rmdir(fn) != 0) {
|
||||
if (errno != ENOTEMPTY && errno != EEXIST) {
|
||||
rprintf(FERROR, "delete_one: rmdir %s failed: %s\n",
|
||||
full_fname(fn), strerror(errno));
|
||||
rsyserr(FERROR, errno,
|
||||
"delete_one: rmdir %s failed",
|
||||
full_fname(fn));
|
||||
}
|
||||
} else if (verbose) {
|
||||
rprintf(FINFO, "deleting directory %s\n", fn);
|
||||
@@ -223,8 +224,8 @@ static int receive_data(int f_in,struct map_struct *mapbuf,int fd,char *fname,
|
||||
sum_update(data,i);
|
||||
|
||||
if (fd != -1 && write_file(fd,data,i) != i) {
|
||||
rprintf(FERROR, "write failed on %s: %s\n",
|
||||
full_fname(fname), strerror(errno));
|
||||
rsyserr(FERROR, errno, "write failed on %s",
|
||||
full_fname(fname));
|
||||
exit_cleanup(RERR_FILEIO);
|
||||
}
|
||||
offset += i;
|
||||
@@ -251,8 +252,8 @@ static int receive_data(int f_in,struct map_struct *mapbuf,int fd,char *fname,
|
||||
}
|
||||
|
||||
if (fd != -1 && write_file(fd,map,len) != (int) len) {
|
||||
rprintf(FERROR, "write failed on %s: %s\n",
|
||||
full_fname(fname), strerror(errno));
|
||||
rsyserr(FERROR, errno, "write failed on %s",
|
||||
full_fname(fname));
|
||||
exit_cleanup(RERR_FILEIO);
|
||||
}
|
||||
offset += len;
|
||||
@@ -264,8 +265,8 @@ static int receive_data(int f_in,struct map_struct *mapbuf,int fd,char *fname,
|
||||
end_progress(total_size);
|
||||
|
||||
if (fd != -1 && offset > 0 && sparse_end(fd) != 0) {
|
||||
rprintf(FERROR, "write failed on %s: %s\n",
|
||||
full_fname(fname), strerror(errno));
|
||||
rsyserr(FERROR, errno, "write failed on %s",
|
||||
full_fname(fname));
|
||||
exit_cleanup(RERR_FILEIO);
|
||||
}
|
||||
|
||||
@@ -371,8 +372,8 @@ int recv_files(int f_in,struct file_list *flist,char *local_name)
|
||||
}
|
||||
|
||||
if (fd1 != -1 && do_fstat(fd1,&st) != 0) {
|
||||
rprintf(FERROR, "fstat %s failed: %s\n",
|
||||
full_fname(fnamecmp), strerror(errno));
|
||||
rsyserr(FERROR, errno, "fstat %s failed",
|
||||
full_fname(fnamecmp));
|
||||
receive_data(f_in,NULL,-1,NULL,file->length);
|
||||
close(fd1);
|
||||
continue;
|
||||
@@ -436,8 +437,8 @@ int recv_files(int f_in,struct file_list *flist,char *local_name)
|
||||
fd2 = do_mkstemp(fnametmp, file->mode & INITACCESSPERMS);
|
||||
}
|
||||
if (fd2 == -1) {
|
||||
rprintf(FERROR, "mkstemp %s failed: %s\n",
|
||||
full_fname(fnametmp), strerror(errno));
|
||||
rsyserr(FERROR, errno, "mkstemp %s failed",
|
||||
full_fname(fnametmp));
|
||||
receive_data(f_in,mapbuf,-1,NULL,file->length);
|
||||
if (mapbuf) unmap_file(mapbuf);
|
||||
if (fd1 != -1) close(fd1);
|
||||
@@ -460,8 +461,8 @@ int recv_files(int f_in,struct file_list *flist,char *local_name)
|
||||
close(fd1);
|
||||
}
|
||||
if (close(fd2) < 0) {
|
||||
rprintf(FERROR, "close failed on %s: %s\n",
|
||||
full_fname(fnametmp), strerror(errno));
|
||||
rsyserr(FERROR, errno, "close failed on %s",
|
||||
full_fname(fnametmp));
|
||||
exit_cleanup(RERR_FILEIO);
|
||||
}
|
||||
|
||||
|
||||
40
rsync.c
40
rsync.c
@@ -68,8 +68,8 @@ int delete_file(char *fname)
|
||||
if (!S_ISDIR(st.st_mode)) {
|
||||
if (robust_unlink(fname) == 0 || errno == ENOENT)
|
||||
return 0;
|
||||
rprintf(FERROR, "delete_file: unlink %s failed: %s\n",
|
||||
full_fname(fname), strerror(errno));
|
||||
rsyserr(FERROR, errno, "delete_file: unlink %s failed",
|
||||
full_fname(fname));
|
||||
return -1;
|
||||
}
|
||||
|
||||
@@ -77,15 +77,15 @@ int delete_file(char *fname)
|
||||
return 0;
|
||||
if (!force_delete || !recurse
|
||||
|| (errno != ENOTEMPTY && errno != EEXIST)) {
|
||||
rprintf(FERROR, "delete_file: rmdir %s failed: %s\n",
|
||||
full_fname(fname), strerror(errno));
|
||||
rsyserr(FERROR, errno, "delete_file: rmdir %s failed",
|
||||
full_fname(fname));
|
||||
return -1;
|
||||
}
|
||||
|
||||
/* now we do a recsursive delete on the directory ... */
|
||||
if (!(d = opendir(fname))) {
|
||||
rprintf(FERROR, "delete_file: opendir %s failed: %s\n",
|
||||
full_fname(fname), strerror(errno));
|
||||
rsyserr(FERROR, errno, "delete_file: opendir %s failed",
|
||||
full_fname(fname));
|
||||
return -1;
|
||||
}
|
||||
|
||||
@@ -103,8 +103,8 @@ int delete_file(char *fname)
|
||||
}
|
||||
}
|
||||
if (errno) {
|
||||
rprintf(FERROR, "delete_file: readdir %s failed: %s\n",
|
||||
full_fname(fname), strerror(errno));
|
||||
rsyserr(FERROR, errno, "delete_file: readdir %s failed",
|
||||
full_fname(fname));
|
||||
closedir(d);
|
||||
return -1;
|
||||
}
|
||||
@@ -112,8 +112,8 @@ int delete_file(char *fname)
|
||||
closedir(d);
|
||||
|
||||
if (do_rmdir(fname) != 0) {
|
||||
rprintf(FERROR, "delete_file: rmdir %s failed: %s\n",
|
||||
full_fname(fname), strerror(errno));
|
||||
rsyserr(FERROR, errno, "delete_file: rmdir %s failed",
|
||||
full_fname(fname));
|
||||
return -1;
|
||||
}
|
||||
|
||||
@@ -131,8 +131,8 @@ int set_perms(char *fname,struct file_struct *file,STRUCT_STAT *st,
|
||||
|
||||
if (!st) {
|
||||
if (link_stat(fname,&st2) != 0) {
|
||||
rprintf(FERROR, "stat %s failed: %s\n",
|
||||
full_fname(fname), strerror(errno));
|
||||
rsyserr(FERROR, errno, "stat %s failed",
|
||||
full_fname(fname));
|
||||
return 0;
|
||||
}
|
||||
st = &st2;
|
||||
@@ -146,8 +146,8 @@ int set_perms(char *fname,struct file_struct *file,STRUCT_STAT *st,
|
||||
* because some filesystems can't do it */
|
||||
if (set_modtime(fname,file->modtime) != 0 &&
|
||||
!S_ISDIR(st->st_mode)) {
|
||||
rprintf(FERROR, "failed to set times on %s: %s\n",
|
||||
full_fname(fname), strerror(errno));
|
||||
rsyserr(FERROR, errno, "failed to set times on %s",
|
||||
full_fname(fname));
|
||||
return 0;
|
||||
}
|
||||
updated = 1;
|
||||
@@ -174,9 +174,9 @@ int set_perms(char *fname,struct file_struct *file,STRUCT_STAT *st,
|
||||
change_gid ? file->gid : st->st_gid) != 0) {
|
||||
/* shouldn't have attempted to change uid or gid
|
||||
* unless have the privilege */
|
||||
rprintf(FERROR, "%s %s failed: %s\n",
|
||||
rsyserr(FERROR, errno, "%s %s failed",
|
||||
change_uid ? "chown" : "chgrp",
|
||||
full_fname(fname), strerror(errno));
|
||||
full_fname(fname));
|
||||
return 0;
|
||||
}
|
||||
/* a lchown had been done - we have to re-stat if the
|
||||
@@ -193,8 +193,8 @@ int set_perms(char *fname,struct file_struct *file,STRUCT_STAT *st,
|
||||
if ((st->st_mode & CHMOD_BITS) != (file->mode & CHMOD_BITS)) {
|
||||
updated = 1;
|
||||
if (do_chmod(fname,(file->mode & CHMOD_BITS)) != 0) {
|
||||
rprintf(FERROR, "failed to set permissions on %s: %s\n",
|
||||
full_fname(fname), strerror(errno));
|
||||
rsyserr(FERROR, errno, "failed to set permissions on %s",
|
||||
full_fname(fname));
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
@@ -239,9 +239,9 @@ void finish_transfer(char *fname, char *fnametmp, struct file_struct *file,
|
||||
/* move tmp file over real file */
|
||||
ret = robust_rename(fnametmp, fname, file->mode & INITACCESSPERMS);
|
||||
if (ret < 0) {
|
||||
rprintf(FERROR, "%s %s -> \"%s\": %s\n",
|
||||
rsyserr(FERROR, errno, "%s %s -> \"%s\"",
|
||||
ret == -2 ? "copy" : "rename",
|
||||
full_fname(fnametmp), fname, strerror(errno));
|
||||
full_fname(fnametmp), fname);
|
||||
do_unlink(fnametmp);
|
||||
} else {
|
||||
set_perms(fname, file, NULL,
|
||||
|
||||
13
sender.c
13
sender.c
@@ -201,8 +201,9 @@ void send_files(struct file_list *flist, int f_out, int f_in)
|
||||
full_fname(fname));
|
||||
} else {
|
||||
io_error |= IOERR_GENERAL;
|
||||
rprintf(FERROR, "send_files failed to open %s: %s\n",
|
||||
full_fname(fname), strerror(errno));
|
||||
rsyserr(FERROR, errno,
|
||||
"send_files failed to open %s",
|
||||
full_fname(fname));
|
||||
}
|
||||
free_sums(s);
|
||||
continue;
|
||||
@@ -211,7 +212,7 @@ void send_files(struct file_list *flist, int f_out, int f_in)
|
||||
/* map the local file */
|
||||
if (do_fstat(fd, &st) != 0) {
|
||||
io_error |= IOERR_GENERAL;
|
||||
rprintf(FERROR, "fstat failed: %s\n", strerror(errno));
|
||||
rsyserr(FERROR, errno, "fstat failed");
|
||||
free_sums(s);
|
||||
close(fd);
|
||||
return;
|
||||
@@ -287,9 +288,9 @@ void send_files(struct file_list *flist, int f_out, int f_in)
|
||||
j = unmap_file(mbuf);
|
||||
if (j) {
|
||||
io_error |= IOERR_GENERAL;
|
||||
rprintf(FERROR,
|
||||
"read errors mapping %s: (%d) %s\n",
|
||||
full_fname(fname), j, strerror(j));
|
||||
rsyserr(FERROR, j,
|
||||
"read errors mapping %s",
|
||||
full_fname(fname));
|
||||
}
|
||||
}
|
||||
close(fd);
|
||||
|
||||
32
socket.c
32
socket.c
@@ -71,15 +71,13 @@ static int establish_proxy_connection(int fd, char *host, int port,
|
||||
host, port, authhdr, authbuf);
|
||||
len = strlen(buffer);
|
||||
if (write(fd, buffer, len) != len) {
|
||||
rprintf(FERROR, "failed to write to proxy: %s\n",
|
||||
strerror(errno));
|
||||
rsyserr(FERROR, errno, "failed to write to proxy");
|
||||
return -1;
|
||||
}
|
||||
|
||||
for (cp = buffer; cp < &buffer[sizeof buffer - 1]; cp++) {
|
||||
if (read(fd, cp, 1) != 1) {
|
||||
rprintf(FERROR, "failed to read from proxy: %s\n",
|
||||
strerror(errno));
|
||||
rsyserr(FERROR, errno, "failed to read from proxy");
|
||||
return -1;
|
||||
}
|
||||
if (*cp == '\n')
|
||||
@@ -108,8 +106,8 @@ static int establish_proxy_connection(int fd, char *host, int port,
|
||||
while (1) {
|
||||
for (cp = buffer; cp < &buffer[sizeof buffer - 1]; cp++) {
|
||||
if (read(fd, cp, 1) != 1) {
|
||||
rprintf(FERROR, "failed to read from proxy: %s\n",
|
||||
strerror(errno));
|
||||
rsyserr(FERROR, errno,
|
||||
"failed to read from proxy");
|
||||
return -1;
|
||||
}
|
||||
if (*cp == '\n')
|
||||
@@ -278,8 +276,7 @@ int open_socket_out(char *host, int port, const char *bind_address,
|
||||
}
|
||||
freeaddrinfo(res0);
|
||||
if (s < 0) {
|
||||
rprintf(FERROR, RSYNC_NAME ": failed to connect to %s: %s\n",
|
||||
h, strerror(errno));
|
||||
rsyserr(FERROR, errno, "failed to connect to %s", h);
|
||||
return -1;
|
||||
}
|
||||
return s;
|
||||
@@ -450,8 +447,7 @@ void start_accept_loop(int port, int (*fn)(int, int))
|
||||
FD_ZERO(&deffds);
|
||||
for (i = 0, maxfd = -1; sp[i] >= 0; i++) {
|
||||
if (listen(sp[i], 5) < 0) {
|
||||
rprintf(FERROR, "listen() on socket failed: %s\n",
|
||||
strerror(errno));
|
||||
rsyserr(FERROR, errno, "listen() on socket failed");
|
||||
#ifdef INET6
|
||||
if (errno == EADDRINUSE && i > 0) {
|
||||
rprintf(FINFO,
|
||||
@@ -513,10 +509,8 @@ void start_accept_loop(int port, int (*fn)(int, int))
|
||||
close_all();
|
||||
_exit(ret);
|
||||
} else if (pid < 0) {
|
||||
rprintf(FERROR,
|
||||
RSYNC_NAME
|
||||
": could not create child server process: %s\n",
|
||||
strerror(errno));
|
||||
rsyserr(FERROR, errno,
|
||||
"could not create child server process");
|
||||
close(fd);
|
||||
/* This might have happened because we're
|
||||
* overloaded. Sleep briefly before trying to
|
||||
@@ -633,9 +627,10 @@ void set_socket_options(int fd, char *options)
|
||||
break;
|
||||
}
|
||||
|
||||
if (ret != 0)
|
||||
rprintf(FERROR, "failed to set socket option %s: %s\n", tok,
|
||||
strerror(errno));
|
||||
if (ret != 0) {
|
||||
rsyserr(FERROR, errno,
|
||||
"failed to set socket option %s", tok);
|
||||
}
|
||||
}
|
||||
|
||||
free(options);
|
||||
@@ -765,8 +760,7 @@ int sock_exec(const char *prog)
|
||||
int fd[2];
|
||||
|
||||
if (socketpair_tcp(fd) != 0) {
|
||||
rprintf(FERROR, RSYNC_NAME ": socketpair_tcp failed (%s)\n",
|
||||
strerror(errno));
|
||||
rsyserr(FERROR, errno, "socketpair_tcp failed");
|
||||
return -1;
|
||||
}
|
||||
if (verbose >= 2)
|
||||
|
||||
23
util.c
23
util.c
@@ -252,29 +252,25 @@ int copy_file(char *source, char *dest, mode_t mode)
|
||||
|
||||
ifd = do_open(source, O_RDONLY, 0);
|
||||
if (ifd == -1) {
|
||||
rprintf(FERROR,"open %s: %s\n",
|
||||
full_fname(source), strerror(errno));
|
||||
rsyserr(FERROR, errno, "open %s", full_fname(source));
|
||||
return -1;
|
||||
}
|
||||
|
||||
if (robust_unlink(dest) && errno != ENOENT) {
|
||||
rprintf(FERROR,"unlink %s: %s\n",
|
||||
full_fname(dest), strerror(errno));
|
||||
rsyserr(FERROR, errno, "unlink %s", full_fname(dest));
|
||||
return -1;
|
||||
}
|
||||
|
||||
ofd = do_open(dest, O_WRONLY | O_CREAT | O_TRUNC | O_EXCL, mode);
|
||||
if (ofd == -1) {
|
||||
rprintf(FERROR,"open %s: %s\n",
|
||||
full_fname(dest), strerror(errno));
|
||||
rsyserr(FERROR, errno, "open %s", full_fname(dest));
|
||||
close(ifd);
|
||||
return -1;
|
||||
}
|
||||
|
||||
while ((len = safe_read(ifd, buf, sizeof buf)) > 0) {
|
||||
if (full_write(ofd, buf, len) < 0) {
|
||||
rprintf(FERROR,"write %s: %s\n",
|
||||
full_fname(dest), strerror(errno));
|
||||
rsyserr(FERROR, errno, "write %s", full_fname(dest));
|
||||
close(ifd);
|
||||
close(ofd);
|
||||
return -1;
|
||||
@@ -282,21 +278,20 @@ int copy_file(char *source, char *dest, mode_t mode)
|
||||
}
|
||||
|
||||
if (len < 0) {
|
||||
rprintf(FERROR, "read %s: %s\n",
|
||||
full_fname(source), strerror(errno));
|
||||
rsyserr(FERROR, errno, "read %s", full_fname(source));
|
||||
close(ifd);
|
||||
close(ofd);
|
||||
return -1;
|
||||
}
|
||||
|
||||
if (close(ifd) < 0) {
|
||||
rprintf(FINFO, "close failed on %s: %s\n",
|
||||
full_fname(source), strerror(errno));
|
||||
rsyserr(FINFO, errno, "close failed on %s",
|
||||
full_fname(source));
|
||||
}
|
||||
|
||||
if (close(ofd) < 0) {
|
||||
rprintf(FERROR, "close failed on %s: %s\n",
|
||||
full_fname(dest), strerror(errno));
|
||||
rsyserr(FERROR, errno, "close failed on %s",
|
||||
full_fname(dest));
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user