fix(quic): bound the client handshake
QUIC_SETTINGS never set HandshakeIdleTimeoutMs, so it inherited the 120s idle timeout. The constructor blocks until msquic reports the connection either up or shut down, which meant dialling a host that does not answer parked the caller for minutes. Bound it to 10s. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
parent
42a34de244
commit
f14b85694f
2 changed files with 10 additions and 0 deletions
|
|
@ -180,6 +180,8 @@ namespace Crafter {
|
|||
|
||||
// Client constructor: connects to host:port using QUIC. ALPN must
|
||||
// match the listener. Throws QUICException on connect failure.
|
||||
// Blocks for at most the handshake idle timeout (10s), so a host that
|
||||
// never answers fails in seconds rather than at the idle timeout.
|
||||
ClientQUIC(const char* host, std::uint16_t port, std::string alpn,
|
||||
QUICClientCredentials creds = {});
|
||||
ClientQUIC(std::string host, std::uint16_t port, std::string alpn,
|
||||
|
|
|
|||
Loading…
Reference in a new issue