-
-
Notifications
You must be signed in to change notification settings - Fork 7.1k
Description
I did this
When making HTTP/3 requests over interfaces with a low MTU (starting at 1470), curl gets stuck with 100% CPU usage.
It's especially an issue when using VPN connections or tunnels of another kind.
To easily reproduce, set the MTU to any value lower than or equal to 1470, for example:
ip link set mtu 1420 dev enp47s0
Then run:
curl --http3 https://google.com/
I expected the following
No hang
curl/libcurl version
curl 8.18.0 (x86_64-pc-linux-gnu) libcurl/8.18.0 OpenSSL/3.6.0 zlib/1.3.1.zlib-ng brotli/1.2.0 zstd/1.5.7 libidn2/2.3.8 libpsl/0.21.5 libssh2/1.11.1 nghttp2/1.68.0 ngtcp2/1.20.0 nghttp3/1.15.0 librtmp/2.3 mit-krb5/1.21.3
Release-Date: 2026-01-07
Protocols: dict file ftp ftps gopher gophers http https imap imaps ipfs ipns mqtt pop3 pop3s rtmp rtsp scp sftp smb smbs smtp smtps telnet tftp ws wss
Features: alt-svc AsynchDNS brotli GSS-API HSTS HTTP2 HTTP3 HTTPS-proxy IDN IPv6 Kerberos Largefile libz NTLM PSL SPNEGO SSL threadsafe TLS-SRP UnixSockets zstd
operating system
Arch linux, Linux arch-lenovo 6.18.7-1-cachyos #1 SMP PREEMPT_DYNAMIC Fri, 23 Jan 2026 23:19:52 +0000 x86_64 GNU/Linux