Skip to content

Conversation

@icing
Copy link
Contributor

@icing icing commented Oct 22, 2025

The parameter max_pkts was not checked in the recvmsg() implementation of vquic_recv_packets() as the packter counter was never increased. This led to the loop running until an EAGAIN was encountered. Which, in any real case scenario, does no harm as long as libcurl is ingesting packets faster than a server is able to send them.

However on a slow device and a fast network this could happen and allow a denial of serice.

Not a real regression as the vulnerable code has never been released. libcurl 8.16.0 does not have this bug.

The parameter `max_pkts` was not checked in the recvmsg() implementation
of vquic_recv_packets() as the packter counter was never increased. This
led to the loop running until an EAGAIN was encountered. Which, in any
real case scenario, does no harm as long as libcurl is ingesting packets
faster than a server is able to send them.

However on a slow device and a fast network this could happen and allow
a denial of serice.

Not a real regression as the vulnerable code has never been released.
libcurl 8.16.0 does not have this bug.
@icing icing added the HTTP/3 h3 or quic related label Oct 22, 2025
@bagder bagder closed this in bb78c45 Oct 22, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

HTTP/3 h3 or quic related

Development

Successfully merging this pull request may close these issues.

2 participants