microsoft/msquic

Simplify ALPN re-negotiation path

开放

#6,239 创建于 2026年8月18日

 (2 条评论) (0 个反应) (1 位负责人)C (688 个派生)github user discovery
Area: Coregood first issue

仓库指标

星标
 (4,770 个星标)
PR 合并指标
 (平均合并 6天) (30 天内合并 40 个 PR)

描述

We could probably simplify the ALPN negotiation by only storing the list until the ALPN is fully negotiated.

• In  QuicBindingAcceptConnection , own-copy  ClientAlpnList  but leave  NegotiatedAlpn == NULL . - ClientAlpnList can use SmallAlpnBuffer if the full list fit in it • In  QuicCryptoReNegotiateAlpn , remove the  PrevNegotiatedAlpn  fast path and single-ALPN fallback. • Select from the copied client list, then allocate/copy and assign NegotiatedAlpn . • Preserve Info->NegotiatedAlpn ; the listener callback still exposes that independently. • Keep teardown null-safe.

Originally posted by @guhetier in https://github.com/microsoft/msquic/pull/6171#discussion_r3799265048

贡献者指南