Matt McCutchen's Web Site
/
rsync
/
rsync.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Mention the read-position fix.
[rsync/rsync.git]
/
clientserver.c
diff --git
a/clientserver.c
b/clientserver.c
index
b631ef2
..
a922a8f
100644
(file)
--- a/
clientserver.c
+++ b/
clientserver.c
@@
-42,9
+42,9
@@
extern int filesfrom_fd;
extern int remote_protocol;
extern int protocol_version;
extern int io_timeout;
extern int remote_protocol;
extern int protocol_version;
extern int io_timeout;
-extern int orig_umask;
extern int no_detach;
extern int default_af_hint;
extern int no_detach;
extern int default_af_hint;
+extern mode_t orig_umask;
extern char *bind_address;
extern char *sockopts;
extern char *config_file;
extern char *bind_address;
extern char *sockopts;
extern char *config_file;
@@
-728,19
+728,21
@@
static void send_listing(int fd)
int start_daemon(int f_in, int f_out)
{
char line[1024];
int start_daemon(int f_in, int f_out)
{
char line[1024];
- char *motd;
- char *addr = client_addr(f_in);
- char *host = client_name(f_in);
+ char *motd, *addr, *host;
int i;
int i;
- rprintf(FLOG, "connect from %s (%s)\n", host, addr);
-
io_set_sock_fds(f_in, f_out);
io_set_sock_fds(f_in, f_out);
+ /* We must load the config file before calling any function that
+ * might cause log-file output to occur. This ensures that the
+ * "log file" param gets honored for the 2 non-forked use-cases
+ * (called by init and called by remote shell). */
if (!lp_load(config_file, 0))
exit_cleanup(RERR_SYNTAX);
if (!lp_load(config_file, 0))
exit_cleanup(RERR_SYNTAX);
- log_init();
+ addr = client_addr(f_in);
+ host = client_name(f_in);
+ rprintf(FLOG, "connect from %s (%s)\n", host, addr);
if (!am_server) {
set_socket_options(f_in, "SO_KEEPALIVE");
if (!am_server) {
set_socket_options(f_in, "SO_KEEPALIVE");