diff options
author | Matt Johnston <matt@ucc.asn.au> | 2015-02-27 00:02:48 +0800 |
---|---|---|
committer | Matt Johnston <matt@ucc.asn.au> | 2015-02-27 00:02:48 +0800 |
commit | 0ae00730181d8645dd9f1df1205ca096eda5f6f0 (patch) | |
tree | 14981db070967e0e58822dcb0d2ea3ca5debcac1 | |
parent | ef04e65bdc3d5979ac1813878f0b0f62990f8257 (diff) | |
download | dropbear-0ae00730181d8645dd9f1df1205ca096eda5f6f0.tar.gz |
EINPROGRESS for sendmsg() means it's working OK
-rw-r--r-- | netio.c | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -103,7 +103,7 @@ static void connect_try_next(struct dropbear_progress_connection *c) { message.msg_iov = packet_queue_to_iovec(c->writequeue, &iovlen); message.msg_iovlen = iovlen; res = sendmsg(c->sock, &message, MSG_FASTOPEN); - if (res < 0) { + if (res < 0 && errno != EINPROGRESS) { /* Not entirely sure which kind of errors are normal - 2.6.32 seems to return EPIPE for any (nonblocking?) sendmsg(). just fall back */ TRACE(("sendmsg tcp_fastopen failed, falling back. %s", strerror(errno))); |