}
io_printf(fd,"\n");
- if (remote_version > 17 && !am_sender)
+ if (remote_version >= 22 || (remote_version > 17 && !am_sender))
io_start_multiplex_in(fd);
return client_run(fd, fd, -1, argc, argv);
argp = argv + optind;
optind = 0;
- if (remote_version > 17 && am_sender)
+ if (remote_version >= 22 || (remote_version > 17 && am_sender))
io_start_multiplex_out(fd);
+ if (read_only) {
+ extern int am_sender;
+ if (!am_sender) {
+ rprintf(FERROR,"ERROR: module is read only\n");
+ return -1;
+ }
+ }
+
if (!ret) {
option_error();
}