From 921c610b68c3c725a346c0b369cff4c82549c546 Mon Sep 17 00:00:00 2001 From: Viktor Szakats Date: Mon, 8 Jun 2026 01:47:41 +0200 Subject: [PATCH] vquic --- lib/curl_setup.h | 6 ++++++ lib/vquic/vquic.c | 8 ++++---- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/lib/curl_setup.h b/lib/curl_setup.h index 3878503271..1840aeff04 100644 --- a/lib/curl_setup.h +++ b/lib/curl_setup.h @@ -1137,6 +1137,12 @@ typedef unsigned int curl_bit; #define SOCKEWOULDBLOCK EWOULDBLOCK #endif +#if EAGAIN != SOCKEWOULDBLOCK +#define SOCK_EAGAIN_EWOULDBLOCK(e) ((e) == EAGAIN || (e) == SOCKEWOULDBLOCK) +#else +#define SOCK_EAGAIN_EWOULDBLOCK(e) ((e) == EAGAIN) +#endif + /* * Macro argv_item_t hides platform details to code using it. */ diff --git a/lib/vquic/vquic.c b/lib/vquic/vquic.c index d187a7d17e..83bca5ad25 100644 --- a/lib/vquic/vquic.c +++ b/lib/vquic/vquic.c @@ -206,7 +206,7 @@ static CURLcode do_sendmsg(struct Curl_cfilter *cf, ; if(!curlx_sztouz(rv, psent)) { - if(SOCKERRNO == EAGAIN || SOCKERRNO == SOCKEWOULDBLOCK) { + if(SOCK_EAGAIN_EWOULDBLOCK(SOCKERRNO)) { result = CURLE_AGAIN; goto out; } @@ -487,7 +487,7 @@ static CURLcode recvmmsg_packets(struct Curl_cfilter *cf, (SOCKERRNO == SOCKEINTR || SOCKERRNO == SOCKEMSGSIZE)) ; if(mcount == -1) { - if(SOCKERRNO == EAGAIN || SOCKERRNO == SOCKEWOULDBLOCK) { + if(SOCK_EAGAIN_EWOULDBLOCK(SOCKERRNO)) { CURL_TRC_CF(data, cf, "ingress, recvmmsg -> EAGAIN"); goto out; } @@ -574,7 +574,7 @@ static CURLcode recvmsg_packets(struct Curl_cfilter *cf, (SOCKERRNO == SOCKEINTR || SOCKERRNO == SOCKEMSGSIZE)) ; if(!curlx_sztouz(rc, &nread)) { - if(SOCKERRNO == EAGAIN || SOCKERRNO == SOCKEWOULDBLOCK) { + if(SOCK_EAGAIN_EWOULDBLOCK(SOCKERRNO)) { goto out; } if(!cf->connected && SOCKERRNO == SOCKECONNREFUSED) { @@ -644,7 +644,7 @@ static CURLcode recvfrom_packets(struct Curl_cfilter *cf, (SOCKERRNO == SOCKEINTR || SOCKERRNO == SOCKEMSGSIZE)) ; if(!curlx_sztouz(rv, &nread)) { - if(SOCKERRNO == EAGAIN || SOCKERRNO == SOCKEWOULDBLOCK) { + if(SOCK_EAGAIN_EWOULDBLOCK(SOCKERRNO)) { CURL_TRC_CF(data, cf, "ingress, recvfrom -> EAGAIN"); goto out; }