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
Several expansions of $srcdir were not double-quoted.
[rsync/rsync.git]
/
clientserver.c
diff --git
a/clientserver.c
b/clientserver.c
index
531944a
..
faf1593
100644
(file)
--- a/
clientserver.c
+++ b/
clientserver.c
@@
-41,7
+41,6
@@
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 select_timeout;
extern int orig_umask;
extern int no_detach;
extern int default_af_hint;
extern int orig_umask;
extern int no_detach;
extern int default_af_hint;
@@
-100,7
+99,7
@@
int start_socket_client(char *host, char *path, int argc, char *argv[])
ret = start_inband_exchange(user, path, fd, fd, argc);
ret = start_inband_exchange(user, path, fd, fd, argc);
- return ret
< 0
? ret : client_run(fd, fd, -1, argc, argv);
+ return ret ? ret : client_run(fd, fd, -1, argc, argv);
}
int start_inband_exchange(char *user, char *path, int f_in, int f_out,
}
int start_inband_exchange(char *user, char *path, int f_in, int f_out,
@@
-196,10
+195,10
@@
int start_inband_exchange(char *user, char *path, int f_in, int f_out,
rprintf(FERROR, "%s\n", line);
/* This is always fatal; the server will now
* close the socket. */
rprintf(FERROR, "%s\n", line);
/* This is always fatal; the server will now
* close the socket. */
- return RERR_STARTCLIENT;
- } else {
- rprintf(FINFO,"%s\n", line);
+ return -1;
}
}
+
+ rprintf(FINFO, "%s\n", line);
}
kluge_around_eof = 0;
}
kluge_around_eof = 0;
@@
-268,11
+267,9
@@
static int rsync_module(int f_in, int f_out, int i)
return -1;
}
return -1;
}
- auth_user = auth_server(f_in, f_out, i, addr, "@RSYNCD: AUTHREQD ");
+ auth_user = auth_server(f_in, f_out, i,
host,
addr, "@RSYNCD: AUTHREQD ");
if (!auth_user) {
if (!auth_user) {
- rprintf(FLOG, "auth failed on module %s from %s (%s)\n",
- name, host, addr);
io_printf(f_out, "@ERROR: auth failed on module %s\n", name);
return -1;
}
io_printf(f_out, "@ERROR: auth failed on module %s\n", name);
return -1;
}
@@
-283,10
+280,10
@@
static int rsync_module(int f_in, int f_out, int i)
read_only = 1;
if (lp_transfer_logging(i)) {
read_only = 1;
if (lp_transfer_logging(i)) {
- if (
strstr(lp_log_format(i), "%i") != NULL
)
+ if (
log_format_has(lp_log_format(i), 'i')
)
daemon_log_format_has_i = 1;
if (daemon_log_format_has_i
daemon_log_format_has_i = 1;
if (daemon_log_format_has_i
- ||
strstr(lp_log_format(i), "%o") != NULL
)
+ ||
log_format_has(lp_log_format(i), 'o')
)
daemon_log_format_has_o_or_i = 1;
}
daemon_log_format_has_o_or_i = 1;
}
@@
-321,13
+318,11
@@
static int rsync_module(int f_in, int f_out, int i)
/* TODO: Perhaps take a list of gids, and make them into the
* supplementary groups. */
/* TODO: Perhaps take a list of gids, and make them into the
* supplementary groups. */
- if (use_chroot) {
+ if (use_chroot
|| (module_dirlen = strlen(lp_path(i))) == 1
) {
module_dirlen = 0;
set_filter_dir("/", 1);
module_dirlen = 0;
set_filter_dir("/", 1);
- } else {
- module_dirlen = strlen(lp_path(i));
+ } else
set_filter_dir(lp_path(i), module_dirlen);
set_filter_dir(lp_path(i), module_dirlen);
- }
p = lp_filter(i);
parse_rule(&server_filter_list, p, MATCHFLG_WORD_SPLIT,
p = lp_filter(i);
parse_rule(&server_filter_list, p, MATCHFLG_WORD_SPLIT,
@@
-483,8
+478,8
@@
static int rsync_module(int f_in, int f_out, int i)
#ifndef DEBUG
/* don't allow the logs to be flooded too fast */
#ifndef DEBUG
/* don't allow the logs to be flooded too fast */
- if (verbose > lp_max_verbosity())
- verbose = lp_max_verbosity();
+ if (verbose > lp_max_verbosity(
i
))
+ verbose = lp_max_verbosity(
i
);
#endif
if (protocol_version < 23
#endif
if (protocol_version < 23
@@
-522,11
+517,8
@@
static int rsync_module(int f_in, int f_out, int i)
exit_cleanup(RERR_UNSUPPORTED);
}
exit_cleanup(RERR_UNSUPPORTED);
}
- if (lp_timeout(i)) {
- io_timeout = lp_timeout(i);
- if (io_timeout < select_timeout)
- select_timeout = io_timeout;
- }
+ if (lp_timeout(i) && lp_timeout(i) > io_timeout)
+ set_io_timeout(lp_timeout(i));
start_server(f_in, f_out, argc, argp);
start_server(f_in, f_out, argc, argp);