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