curl 7.88.1 Release: Bug Fixes for HTTP/2 Multiplexing, Connection Timeout, and Additional Improvements
The curl 7.88.1 update addresses several critical bugs—including HTTP/2 multiplexed data corruption, inaccurate connection timeout handling, uninitialized port values in runtests, missing SRP support checks, HTTP3 fallback when HTTP2 is unavailable, and socketpair EWOULDBLOCK handling—enhancing reliability across platforms.
According to curl author Daniel Stenberg’s roadmap, version 7.88.0 was intended to be the final 7.x release, but a bug in that version prompted a quick follow‑up patch, resulting in the 7.88.1 release.
Bug fixes
HTTP/2 multiplexed data corruption – In certain cases where data is transferred over HTTP/2 multiplexed streams, curl could retrieve incorrect data from its internal buffer, leading to corrupted saved files. This long‑standing bug became more likely after recent changes.
Connection timeout uses full duration – Previously, curl sometimes applied only half of the specified timeout when establishing a connection.
runtests: fix “uninitialized value $port” – Running the test suite in verbose mode triggered an error message about an uninitialized port variable.
Test: ensure gnusev‑tls has SRP support before use – The test suite uses gnusev‑tls to verify SRP authentication. Recent changes to the GnuTLS project disabled SRP by default, so the test now checks for SRP support before attempting to use the tool.
setopt: allow HTTP/3 when HTTP/2 is undefined – If a build does not support HTTP/2, a regression prevented requests from falling back to HTTP/3.
socketpair: allow EWOULDBLOCK when checking read‑pair bytes – Fixes an issue introduced by the 7.88.0 fix that occasionally caused problems (especially on Windows) when validating socketpair emulation, ensuring proper handling of EWOULDBLOCK.
Call to action
Did you find this article helpful? Liking and sharing are the greatest support!
Laravel Tech Community
Specializing in Laravel development, we continuously publish fresh content and grow alongside the elegant, stable Laravel framework.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.