authorgravatar for 70151472+Marzin-bot@users.noreply.github.comKuwazy <70151472+Marzin-bot@users.noreply.github.com> 2025-03-25 15:00:50+01:00
committergravatar for noreply@github.comGitHub <noreply@github.com> 2025-03-25 15:00:50+01:00
log6b6dc1cd3ac2690490628e0fee276e143e431b39
tree1c52f566d3d570046c487fa8b3372115138ef9ce
parente1c6af2840edc723db8f89522850b6f882f8234f
signaturebadge-check Signed by PGP key B5690EEEBB952194

Added check for HTTP version and GET method when upgrading WebSocket to comply with RFC 6455. (#23332)


1 files changed, 5 insertions(+), 0 deletions(-)

lib/std/http/WebSocket.zig+5
......@@ -23,6 +23,11 @@ pub fn init(
2323 send_buffer: []u8,
2424 recv_buffer: []align(4) u8,
2525) InitError!bool {
26 switch (request.head.version) {
27 .@"HTTP/1.0" => return false,
28 .@"HTTP/1.1" => if (request.head.method != .GET) return false,
29 }
30
2631 var sec_websocket_key: ?[]const u8 = null;
2732 var upgrade_websocket: bool = false;
2833 var it = request.iterateHeaders();