X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/0c56b1add7d171499ae60c03b2eee3615f50e8ff..a41a1e87182410ec6c2eeaddb0cd961ec554c404:/clientserver.c diff --git a/clientserver.c b/clientserver.c index 0cb548f3..ec74054f 100644 --- a/clientserver.c +++ b/clientserver.c @@ -43,6 +43,7 @@ extern int filesfrom_fd; extern int remote_protocol; extern int protocol_version; extern int io_timeout; +extern int select_timeout; extern int orig_umask; extern int no_detach; extern int default_af_hint; @@ -88,6 +89,9 @@ int start_socket_client(char *host, char *path, int argc, char *argv[]) *p = '\0'; } + if (rsync_port == 0) + rsync_port = RSYNC_PORT; + fd = open_socket_out_wrapped(host, rsync_port, bind_address, default_af_hint); if (fd == -1) @@ -473,8 +477,11 @@ static int rsync_module(int f_in, int f_out, int i) exit_cleanup(RERR_UNSUPPORTED); } - if (lp_timeout(i)) + if (lp_timeout(i)) { io_timeout = lp_timeout(i); + if (io_timeout < select_timeout) + select_timeout = io_timeout; + } start_server(f_in, f_out, argc, argp); @@ -600,6 +607,8 @@ int daemon_main(void) if (rsync_port == 0 && (rsync_port = lp_rsync_port()) == 0) rsync_port = RSYNC_PORT; + if (bind_address == NULL && *lp_bind_address()) + bind_address = lp_bind_address(); log_init();