├── .editorconfig ├── .github ├── copilot-instructions.md └── workflows │ ├── documentation-coverage.yaml │ ├── documentation.yaml │ ├── rubocop.yaml │ ├── test-coverage.yaml │ ├── test-external.yaml │ └── test.yaml ├── .gitignore ├── .rubocop.yml ├── bake.rb ├── config ├── external.yaml ├── sus.rb └── traces.rb ├── context ├── getting-started.md └── index.yaml ├── examples └── http2 │ ├── request.rb │ └── requests.rb ├── fixtures └── protocol │ └── http2 │ ├── a_frame.rb │ └── connection_context.rb ├── fuzz └── framer │ ├── bake.rb │ ├── input │ └── data.txt │ └── script.rb ├── gems.rb ├── guides ├── getting-started │ └── readme.md └── links.yaml ├── lib ├── protocol │ ├── http2.rb │ └── http2 │ │ ├── client.rb │ │ ├── connection.rb │ │ ├── continuation_frame.rb │ │ ├── data_frame.rb │ │ ├── error.rb │ │ ├── flow_controlled.rb │ │ ├── frame.rb │ │ ├── framer.rb │ │ ├── goaway_frame.rb │ │ ├── headers_frame.rb │ │ ├── padded.rb │ │ ├── ping_frame.rb │ │ ├── priority_update_frame.rb │ │ ├── push_promise_frame.rb │ │ ├── reset_stream_frame.rb │ │ ├── server.rb │ │ ├── settings_frame.rb │ │ ├── stream.rb │ │ ├── version.rb │ │ ├── window.rb │ │ └── window_update_frame.rb └── traces │ └── provider │ └── protocol │ ├── http2.rb │ └── http2 │ └── framer.rb ├── license.md ├── protocol-http2.gemspec ├── readme.md ├── release.cert ├── releases.md └── test └── protocol ├── http2.rb └── http2 ├── client.rb ├── connection.rb ├── continuation_frame.rb ├── data_frame.rb ├── error.rb ├── frame.rb ├── framer.rb ├── goaway_frame.rb ├── headers_frame.rb ├── ping_frame.rb ├── priority_update_frame.rb ├── push_promise_frame.rb ├── reset_stream_frame.rb ├── server.rb ├── settings.rb ├── settings_frame.rb ├── stream.rb ├── window.rb └── window_update_frame.rb /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/.editorconfig -------------------------------------------------------------------------------- /.github/copilot-instructions.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/.github/copilot-instructions.md -------------------------------------------------------------------------------- /.github/workflows/documentation-coverage.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/.github/workflows/documentation-coverage.yaml -------------------------------------------------------------------------------- /.github/workflows/documentation.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/.github/workflows/documentation.yaml -------------------------------------------------------------------------------- /.github/workflows/rubocop.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/.github/workflows/rubocop.yaml -------------------------------------------------------------------------------- /.github/workflows/test-coverage.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/.github/workflows/test-coverage.yaml -------------------------------------------------------------------------------- /.github/workflows/test-external.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/.github/workflows/test-external.yaml -------------------------------------------------------------------------------- /.github/workflows/test.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/.github/workflows/test.yaml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/.gitignore -------------------------------------------------------------------------------- /.rubocop.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/.rubocop.yml -------------------------------------------------------------------------------- /bake.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/bake.rb -------------------------------------------------------------------------------- /config/external.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/config/external.yaml -------------------------------------------------------------------------------- /config/sus.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/config/sus.rb -------------------------------------------------------------------------------- /config/traces.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/config/traces.rb -------------------------------------------------------------------------------- /context/getting-started.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/context/getting-started.md -------------------------------------------------------------------------------- /context/index.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/context/index.yaml -------------------------------------------------------------------------------- /examples/http2/request.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/examples/http2/request.rb -------------------------------------------------------------------------------- /examples/http2/requests.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/examples/http2/requests.rb -------------------------------------------------------------------------------- /fixtures/protocol/http2/a_frame.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/fixtures/protocol/http2/a_frame.rb -------------------------------------------------------------------------------- /fixtures/protocol/http2/connection_context.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/fixtures/protocol/http2/connection_context.rb -------------------------------------------------------------------------------- /fuzz/framer/bake.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/fuzz/framer/bake.rb -------------------------------------------------------------------------------- /fuzz/framer/input/data.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/fuzz/framer/input/data.txt -------------------------------------------------------------------------------- /fuzz/framer/script.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/fuzz/framer/script.rb -------------------------------------------------------------------------------- /gems.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/gems.rb -------------------------------------------------------------------------------- /guides/getting-started/readme.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/guides/getting-started/readme.md -------------------------------------------------------------------------------- /guides/links.yaml: -------------------------------------------------------------------------------- 1 | getting-started: 2 | order: 1 3 | -------------------------------------------------------------------------------- /lib/protocol/http2.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/lib/protocol/http2.rb -------------------------------------------------------------------------------- /lib/protocol/http2/client.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/lib/protocol/http2/client.rb -------------------------------------------------------------------------------- /lib/protocol/http2/connection.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/lib/protocol/http2/connection.rb -------------------------------------------------------------------------------- /lib/protocol/http2/continuation_frame.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/lib/protocol/http2/continuation_frame.rb -------------------------------------------------------------------------------- /lib/protocol/http2/data_frame.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/lib/protocol/http2/data_frame.rb -------------------------------------------------------------------------------- /lib/protocol/http2/error.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/lib/protocol/http2/error.rb -------------------------------------------------------------------------------- /lib/protocol/http2/flow_controlled.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/lib/protocol/http2/flow_controlled.rb -------------------------------------------------------------------------------- /lib/protocol/http2/frame.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/lib/protocol/http2/frame.rb -------------------------------------------------------------------------------- /lib/protocol/http2/framer.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/lib/protocol/http2/framer.rb -------------------------------------------------------------------------------- /lib/protocol/http2/goaway_frame.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/lib/protocol/http2/goaway_frame.rb -------------------------------------------------------------------------------- /lib/protocol/http2/headers_frame.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/lib/protocol/http2/headers_frame.rb -------------------------------------------------------------------------------- /lib/protocol/http2/padded.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/lib/protocol/http2/padded.rb -------------------------------------------------------------------------------- /lib/protocol/http2/ping_frame.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/lib/protocol/http2/ping_frame.rb -------------------------------------------------------------------------------- /lib/protocol/http2/priority_update_frame.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/lib/protocol/http2/priority_update_frame.rb -------------------------------------------------------------------------------- /lib/protocol/http2/push_promise_frame.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/lib/protocol/http2/push_promise_frame.rb -------------------------------------------------------------------------------- /lib/protocol/http2/reset_stream_frame.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/lib/protocol/http2/reset_stream_frame.rb -------------------------------------------------------------------------------- /lib/protocol/http2/server.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/lib/protocol/http2/server.rb -------------------------------------------------------------------------------- /lib/protocol/http2/settings_frame.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/lib/protocol/http2/settings_frame.rb -------------------------------------------------------------------------------- /lib/protocol/http2/stream.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/lib/protocol/http2/stream.rb -------------------------------------------------------------------------------- /lib/protocol/http2/version.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/lib/protocol/http2/version.rb -------------------------------------------------------------------------------- /lib/protocol/http2/window.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/lib/protocol/http2/window.rb -------------------------------------------------------------------------------- /lib/protocol/http2/window_update_frame.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/lib/protocol/http2/window_update_frame.rb -------------------------------------------------------------------------------- /lib/traces/provider/protocol/http2.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/lib/traces/provider/protocol/http2.rb -------------------------------------------------------------------------------- /lib/traces/provider/protocol/http2/framer.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/lib/traces/provider/protocol/http2/framer.rb -------------------------------------------------------------------------------- /license.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/license.md -------------------------------------------------------------------------------- /protocol-http2.gemspec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/protocol-http2.gemspec -------------------------------------------------------------------------------- /readme.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/readme.md -------------------------------------------------------------------------------- /release.cert: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/release.cert -------------------------------------------------------------------------------- /releases.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/releases.md -------------------------------------------------------------------------------- /test/protocol/http2.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/test/protocol/http2.rb -------------------------------------------------------------------------------- /test/protocol/http2/client.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/test/protocol/http2/client.rb -------------------------------------------------------------------------------- /test/protocol/http2/connection.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/test/protocol/http2/connection.rb -------------------------------------------------------------------------------- /test/protocol/http2/continuation_frame.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/test/protocol/http2/continuation_frame.rb -------------------------------------------------------------------------------- /test/protocol/http2/data_frame.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/test/protocol/http2/data_frame.rb -------------------------------------------------------------------------------- /test/protocol/http2/error.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/test/protocol/http2/error.rb -------------------------------------------------------------------------------- /test/protocol/http2/frame.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/test/protocol/http2/frame.rb -------------------------------------------------------------------------------- /test/protocol/http2/framer.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/test/protocol/http2/framer.rb -------------------------------------------------------------------------------- /test/protocol/http2/goaway_frame.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/test/protocol/http2/goaway_frame.rb -------------------------------------------------------------------------------- /test/protocol/http2/headers_frame.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/test/protocol/http2/headers_frame.rb -------------------------------------------------------------------------------- /test/protocol/http2/ping_frame.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/test/protocol/http2/ping_frame.rb -------------------------------------------------------------------------------- /test/protocol/http2/priority_update_frame.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/test/protocol/http2/priority_update_frame.rb -------------------------------------------------------------------------------- /test/protocol/http2/push_promise_frame.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/test/protocol/http2/push_promise_frame.rb -------------------------------------------------------------------------------- /test/protocol/http2/reset_stream_frame.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/test/protocol/http2/reset_stream_frame.rb -------------------------------------------------------------------------------- /test/protocol/http2/server.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/test/protocol/http2/server.rb -------------------------------------------------------------------------------- /test/protocol/http2/settings.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/test/protocol/http2/settings.rb -------------------------------------------------------------------------------- /test/protocol/http2/settings_frame.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/test/protocol/http2/settings_frame.rb -------------------------------------------------------------------------------- /test/protocol/http2/stream.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/test/protocol/http2/stream.rb -------------------------------------------------------------------------------- /test/protocol/http2/window.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/test/protocol/http2/window.rb -------------------------------------------------------------------------------- /test/protocol/http2/window_update_frame.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/socketry/protocol-http2/HEAD/test/protocol/http2/window_update_frame.rb --------------------------------------------------------------------------------