Commit 6d7b6081 authored by Andrew Tridgell's avatar Andrew Tridgell

damn!

the last pre-release had a bug that didn't setup the multiplexing
correctly. This means that pre-release will get "unexpected tag -7"
whenm talking to the fixed code.
parent 31b7d79a
...@@ -407,8 +407,8 @@ static void mplex_write(int fd, enum logcode code, char *buf, int len) ...@@ -407,8 +407,8 @@ static void mplex_write(int fd, enum logcode code, char *buf, int len)
SIVAL(buffer, 0, ((MPLEX_BASE + (int)code)<<24) + len); SIVAL(buffer, 0, ((MPLEX_BASE + (int)code)<<24) + len);
if (n > (sizeof(buf)-4)) { if (n > (sizeof(buffer)-4)) {
n = sizeof(buf)-4; n = sizeof(buffer)-4;
} }
memcpy(&buffer[4], buf, n); memcpy(&buffer[4], buf, n);
...@@ -417,7 +417,9 @@ static void mplex_write(int fd, enum logcode code, char *buf, int len) ...@@ -417,7 +417,9 @@ static void mplex_write(int fd, enum logcode code, char *buf, int len)
len -= n; len -= n;
buf += n; buf += n;
writefd_unbuffered(fd, buf, len); if (len) {
writefd_unbuffered(fd, buf, len);
}
} }
......
...@@ -94,7 +94,7 @@ void rwrite(enum logcode code, char *buf, int len) ...@@ -94,7 +94,7 @@ void rwrite(enum logcode code, char *buf, int len)
extern int quiet; extern int quiet;
/* recursion can happen with certain fatal conditions */ /* recursion can happen with certain fatal conditions */
if (quiet != 0 && code == FINFO) return; if (quiet && code == FINFO) return;
if (len < 0) exit_cleanup(RERR_MESSAGEIO); if (len < 0) exit_cleanup(RERR_MESSAGEIO);
...@@ -105,7 +105,13 @@ void rwrite(enum logcode code, char *buf, int len) ...@@ -105,7 +105,13 @@ void rwrite(enum logcode code, char *buf, int len)
return; return;
} }
if (io_error_write(log_error_fd, code, buf, strlen(buf))) return; if (io_error_write(log_error_fd, code, buf, strlen(buf))) {
return;
}
if (io_multiplex_write(code, buf, strlen(buf))) {
return;
}
if (am_daemon) { if (am_daemon) {
static int depth; static int depth;
...@@ -117,9 +123,7 @@ void rwrite(enum logcode code, char *buf, int len) ...@@ -117,9 +123,7 @@ void rwrite(enum logcode code, char *buf, int len)
depth++; depth++;
log_open(); log_open();
if (!io_multiplex_write(code, buf, strlen(buf))) { logit(priority, buf);
logit(priority, buf);
}
depth--; depth--;
return; return;
......
...@@ -393,11 +393,11 @@ void start_server(int f_in, int f_out, int argc, char *argv[]) ...@@ -393,11 +393,11 @@ void start_server(int f_in, int f_out, int argc, char *argv[])
extern int am_sender; extern int am_sender;
extern int remote_version; extern int remote_version;
setup_protocol(f_out, f_in);
if (remote_version >= 23) if (remote_version >= 23)
io_start_multiplex_out(f_out); io_start_multiplex_out(f_out);
setup_protocol(f_out, f_in);
if (am_sender) { if (am_sender) {
recv_exclude_list(f_in); recv_exclude_list(f_in);
if (cvs_exclude) if (cvs_exclude)
...@@ -418,10 +418,10 @@ int client_run(int f_in, int f_out, int pid, int argc, char *argv[]) ...@@ -418,10 +418,10 @@ int client_run(int f_in, int f_out, int pid, int argc, char *argv[])
extern int list_only; extern int list_only;
extern int remote_version; extern int remote_version;
setup_protocol(f_out,f_in);
if (remote_version >= 23) if (remote_version >= 23)
io_start_multiplex_in(f_in); io_start_multiplex_in(f_in);
setup_protocol(f_out,f_in);
if (am_sender) { if (am_sender) {
extern int cvs_exclude; extern int cvs_exclude;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment