Fix McpHeaderEncoder.DecodeValue throwing on the degenerate base64 wrapper (#1805)

This commit is contained in:
Recoordinate 2026-08-13 18:27:48 +12:00 • committed by GitHub
commit bba45c44bf
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -126,7 +126,8 @@ public static class McpHeaderEncoder
// Check for Base64 wrapper. The spec requires the sentinel markers to be
// case-sensitive and exactly lowercase per SEP-2243.
if (headerValue.StartsWith(Base64Prefix, StringComparison.Ordinal) &&
if (headerValue.Length >= Base64Prefix.Length + Base64Suffix.Length &&
headerValue.StartsWith(Base64Prefix, StringComparison.Ordinal) &&
headerValue.EndsWith(Base64Suffix, StringComparison.Ordinal))
{
var base64Content = headerValue.Substring(