From b716511f0fdc0eb381390df1677a870daf8bb5fc Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Mon, 12 Dec 2022 16:45:53 +0100 Subject: [PATCH] server/sws: if asked to close connection, skip the websocket handling --- tests/server/sws.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/tests/server/sws.c b/tests/server/sws.c index bcc4d40dce..e4ef0ae4ae 100644 --- a/tests/server/sws.c +++ b/tests/server/sws.c @@ -881,12 +881,12 @@ static int get_request(curl_socket_t sock, struct httprequest *req) req->offset = 0; /* read websocket traffic */ - do { + if(req->open) + do { got = sread(sock, reqbuf + req->offset, REQBUFSIZ - req->offset); if(got > 0) req->offset += got; - logmsg("Got: %d", (int)got); if((got == -1) && ((EAGAIN == errno) || (EWOULDBLOCK == errno))) { int rc; @@ -894,6 +894,7 @@ static int get_request(curl_socket_t sock, struct httprequest *req) fd_set output; struct timeval timeout = {1, 0}; /* 1000 ms */ + logmsg("Got EAGAIN from sread"); FD_ZERO(&input); FD_ZERO(&output); got = 0; @@ -1917,6 +1918,9 @@ static int service_connection(curl_socket_t msgsock, struct httprequest *req, logmsg("=> persistent connection request ended, awaits new request\n"); return 1; } + else { + logmsg("=> NOT a persistent connection, close close CLOSE\n"); + } return -1; } -- 2.47.3