diff options
author | Andreas Schneider <asn@cryptomilk.org> | 2018-12-31 11:10:35 +0100 |
---|---|---|
committer | Andreas Schneider <asn@cryptomilk.org> | 2018-12-31 11:10:35 +0100 |
commit | a1338e927d5a209528024236c370360719fa9c66 (patch) | |
tree | b79c3214fc9319fb33a82a4954c6a31cd997700f | |
parent | 22acb3a3384357e2f97c70fa70d81cb7632f75cd (diff) | |
download | csync-a1338e927d5a209528024236c370360719fa9c66.tar.gz csync-a1338e927d5a209528024236c370360719fa9c66.tar.xz csync-a1338e927d5a209528024236c370360719fa9c66.zip |
modules: Disable Nagle's Algorithm (TCP_NODELAY) for sftp
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
-rw-r--r-- | modules/csync_sftp.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/modules/csync_sftp.c b/modules/csync_sftp.c index 9181513..050bb7f 100644 --- a/modules/csync_sftp.c +++ b/modules/csync_sftp.c @@ -169,6 +169,7 @@ static int _sftp_connect(const char *uri) int rc = -1; int state = SSH_SERVER_ERROR; int timeout = 20; + int nodelay = 1; int method; char *verbosity; char errbuf[256] = {0}; @@ -205,6 +206,16 @@ static int _sftp_connect(const char *uri) goto out; } + /* Disable Nagle's Algorithm (TCP_NODELAY). Usually faster for sftp. */ + rc = ssh_options_set(_ssh_session, SSH_OPTIONS_NODELAY, &nodelay); + if (rc < 0) { + c_strerror_r(errno, errbuf, sizeof(errbuf)); + fprintf(stderr, + "csync_sftp - error setting nodelay: %s\n", + errbuf); + goto out; + } + rc = ssh_options_set(_ssh_session, SSH_OPTIONS_COMPRESSION_C_S, "none"); if (rc < 0) { c_strerror_r(errno, errbuf, sizeof(errbuf)); |