summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2018-07-20 00:57:28 +0200
committerDaniel Stenberg <daniel@haxx.se>2018-07-20 14:12:04 +0200
commitaef065a5736c885ee32879aba8fbe8cde7fae625 (patch)
tree100557ed953b244b2cae0823d30866a28374da0d
parentdb2ac90eaf45f995608cf97bb1b2f811a143477e (diff)
downloadcurl-bagder/smb_getsock.tar.gz
smb_getsock: always wait for write socket toobagder/smb_getsock
... the protocol is doing read/write a lot, so it needs to write often even when downloading. A more proper fix could check for eactly when it wants to write and only ask for it then.
-rw-r--r--lib/smb.c8
1 files changed, 1 insertions, 7 deletions
diff --git a/lib/smb.c b/lib/smb.c
index fad636252..9ab8710ce 100644
--- a/lib/smb.c
+++ b/lib/smb.c
@@ -941,17 +941,11 @@ static CURLcode smb_disconnect(struct connectdata *conn, bool dead)
static int smb_getsock(struct connectdata *conn, curl_socket_t *socks,
int numsocks)
{
- struct smb_conn *smbc = &conn->proto.smbc;
-
if(!numsocks)
return GETSOCK_BLANK;
socks[0] = conn->sock[FIRSTSOCKET];
-
- if(smbc->send_size || smbc->upload_size)
- return GETSOCK_WRITESOCK(0);
-
- return GETSOCK_READSOCK(0);
+ return GETSOCK_READSOCK(0) | GETSOCK_WRITESOCK(0);
}
static CURLcode smb_parse_url_path(struct connectdata *conn)