• Home
Name Date Size #Lines LOC

..--

DIR_METADATAD03-May-2024454 1211

README.mdD03-May-20241.8 KiB3632

websocket_basic_handshake_stream.ccD03-May-202419.9 KiB557439

websocket_basic_handshake_stream.hD03-May-20246.7 KiB176102

websocket_basic_handshake_stream_test.ccD03-May-20246.7 KiB165143

websocket_basic_stream.ccD03-May-202420.2 KiB533418

websocket_basic_stream.hD03-May-202410.7 KiB267119

websocket_basic_stream_adapters.ccD03-May-20249.8 KiB354264

websocket_basic_stream_adapters.hD03-May-20247.7 KiB225133

websocket_basic_stream_adapters_test.ccD03-May-202463.7 KiB1,6761,330

websocket_basic_stream_test.ccD03-May-202441 KiB1,029772

websocket_channel.ccD03-May-202436.5 KiB1,019779

websocket_channel.hD03-May-202417.1 KiB399179

websocket_channel_test.ccD03-May-2024114 KiB2,8592,202

websocket_deflate_parameters.ccD03-May-20246.1 KiB181148

websocket_deflate_parameters.hD03-May-20244.8 KiB14197

websocket_deflate_parameters_test.ccD03-May-20249.9 KiB260209

websocket_deflate_predictor.hD03-May-20242.2 KiB6324

websocket_deflate_predictor_impl.ccD03-May-2024644 2413

websocket_deflate_predictor_impl.hD03-May-2024960 3420

websocket_deflate_predictor_impl_test.ccD03-May-2024785 3117

websocket_deflate_stream.ccD03-May-202414.1 KiB400348

websocket_deflate_stream.hD03-May-20244.5 KiB12175

websocket_deflate_stream_fuzzer.ccD03-May-20245.8 KiB149111

websocket_deflate_stream_test.ccD03-May-202450.7 KiB1,3841,203

websocket_deflater.ccD03-May-20244.6 KiB152101

websocket_deflater.hD03-May-20242.2 KiB8039

websocket_deflater_test.ccD03-May-20244.8 KiB138106

websocket_end_to_end_test.ccD03-May-202429.8 KiB761575

websocket_errors.ccD03-May-20241.1 KiB4226

websocket_errors.hD03-May-20241.9 KiB5527

websocket_errors_test.ccD03-May-20241.1 KiB3421

websocket_event_interface.hD03-May-20246.5 KiB16569

websocket_extension.ccD03-May-20242 KiB7450

websocket_extension.hD03-May-20241.8 KiB6035

websocket_extension_parser.ccD03-May-20243.3 KiB151118

websocket_extension_parser.hD03-May-20242 KiB6538

websocket_extension_parser_fuzzer.ccD03-May-2024459 178

websocket_extension_parser_test.ccD03-May-20246.2 KiB173131

websocket_extension_test.ccD03-May-20241.6 KiB6144

websocket_frame.ccD03-May-20249.2 KiB252175

websocket_frame.hD03-May-20247.8 KiB20680

websocket_frame_parser.ccD03-May-20247.4 KiB211174

websocket_frame_parser.hD03-May-20243.5 KiB9233

websocket_frame_parser_fuzzer.ccD03-May-2024864 2717

websocket_frame_parser_test.ccD03-May-202421 KiB583507

websocket_frame_perftest.ccD03-May-20242.5 KiB7553

websocket_frame_test.ccD03-May-202415.4 KiB371292

websocket_handshake_challenge.ccD03-May-2024572 2112

websocket_handshake_challenge.hD03-May-2024624 229

websocket_handshake_challenge_test.ccD03-May-2024599 2512

websocket_handshake_constants.ccD03-May-2024852 2714

websocket_handshake_constants.hD03-May-20242.1 KiB6518

websocket_handshake_request_info.ccD03-May-2024529 2010

websocket_handshake_request_info.hD03-May-2024992 3519

websocket_handshake_response_info.ccD03-May-2024768 2817

websocket_handshake_response_info.hD03-May-20241.3 KiB4426

websocket_handshake_stream_base.ccD03-May-20245.2 KiB149121

websocket_handshake_stream_base.hD03-May-20247.4 KiB18492

websocket_handshake_stream_create_helper.ccD03-May-20242.9 KiB7961

websocket_handshake_stream_create_helper.hD03-May-20242.7 KiB7445

websocket_handshake_stream_create_helper_test.ccD03-May-202424.1 KiB568475

websocket_http2_handshake_stream.ccD03-May-202412.6 KiB402314

websocket_http2_handshake_stream.hD03-May-20247.4 KiB203122

websocket_http3_handshake_stream.ccD03-May-202411.8 KiB383281

websocket_http3_handshake_stream.hD03-May-20246.8 KiB190119

websocket_inflater.ccD03-May-20248.2 KiB281222

websocket_inflater.hD03-May-20244.3 KiB13466

websocket_inflater_test.ccD03-May-20247.1 KiB224170

websocket_quic_spdy_stream.ccD03-May-20241.5 KiB6246

websocket_quic_spdy_stream.hD03-May-20241.8 KiB5740

websocket_stream.ccD03-May-202418.7 KiB509386

websocket_stream.hD03-May-202412.8 KiB297129

websocket_stream_cookie_test.ccD03-May-202415.8 KiB502387

websocket_stream_create_test_base.ccD03-May-20245.3 KiB153124

websocket_stream_create_test_base.hD03-May-20243.8 KiB11375

websocket_stream_test.ccD03-May-202471 KiB1,8101,465

websocket_test_util.ccD03-May-202411.3 KiB297251

websocket_test_util.hD03-May-202410 KiB260161

README.md

1# WebSocket protocol
2
3This directory contains the implementation of
4[the WebSocket protocol](https://tools.ietf.org/html/rfc6455).
5
6## Design docs
7
8* [WebSocketBasicHandshakeStream design
9  memo](https://docs.google.com/document/d/1r7dQDA9AQBD_kOk-z-yMi0WgLQZ-5m7psMO5pYLFUL8/edit).
10  Some details have changed, but still a mostly-accurate description of
11  Chromium's current implementation.
12* [WebSocket Throttling
13  Design](https://docs.google.com/document/d/1a8sUFQsbN5uve7ziW61ATkrFr3o9A-Tiyw8ig6T3puA/edit)
14  discusses how we enforce WebSocket connection throttling. Also contains
15  detailed discussion of how WebSockets integrate with the socket pools. Dates
16  from 2014, but still mostly relevant.
17* [WebSockets over
18  HTTP/2](https://docs.google.com/document/d/1ZxaHz4j2BDMa1aI5CQHMjtFI3UxGT459pjYv4To9rFY/edit).
19  Current as of 2019 description of WebSocket over H/2 implementation.
20* [WebSocket + Network Service + WebRequest
21  API](https://docs.google.com/document/d/1L85aXX-m5NaV-g223lH7kKB2HPg6kMi1cjrDVeEptE8/edit):
22  design for how extension callbacks are called when the network service is
23  enabled.
24* [WebSocket HTTP Auth
25  Design](https://docs.google.com/document/d/129rLtf5x3hvhP5rayLiSxnEjOXS8Z7EnLJgBL4CdwjI/edit).
26  This document is very low on detail, but can serve as an overview of how auth
27  works for WebSockets.
28* [Per-renderer WebSocket
29  throttling](https://docs.google.com/document/d/1aw2oN5PKfk-1gLnBrlv1OwLA8K3-ykM2ckwX2lubTg4/edit).
30  While the algorithm described in this document is still used, the code has
31  moved around significantly due to network servicification.
32* [WebSocket Protocol Stack in
33  chrome/net](https://docs.google.com/document/d/11n3hpwb9lD9YVqnjX3OwzE_jHgTmKIqd6GvXE9bDGUg/edit).
34  Early design doc for the current implementation. Mostly of historical interest
35  only.
36