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;
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);
if (rsync_port == 0 && (rsync_port = lp_rsync_port()) == 0)
rsync_port = RSYNC_PORT;
- if (bind_address == NULL)
+ if (bind_address == NULL && *lp_bind_address())
bind_address = lp_bind_address();
log_init();