Skip to content

Commit

Permalink
fix(https-outcalls): Increase allowed header size limit for HTTP/2 re…
Browse files Browse the repository at this point in the history
…quests (#2292)

After enabling h/2 with outcalls we had a regression where responses to
https outcalls with headers greated than 16KB would fail. In
hyperium/hyper-util#154 (comment)
hyper-util exposes a method to increase the header response limit.

This PR increases the limit to 52KiB, above 48KiB in the spec, to not
block this weeks release in case the spec-compliance tests have any
headers hardcoded that can break the test. We can reduce this limit
closer to 48KiB in the future.
  • Loading branch information
DSharifi authored Oct 28, 2024
1 parent c849165 commit ec12a4e
Show file tree
Hide file tree
Showing 10 changed files with 215 additions and 199 deletions.
42 changes: 21 additions & 21 deletions Cargo.Bazel.Fuzzing.json.lock
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"checksum": "78f0da06c53d3fea869c6e8cac026c31871cde95bd6f583246b83cdd0b49f696",
"checksum": "f8b4c5c79984a20a396e4fc13a32288840085a7d1a4e48cef5a5f312a57d464c",
"crates": {
"abnf 0.12.0": {
"name": "abnf",
Expand Down Expand Up @@ -4439,7 +4439,7 @@
"target": "hyper"
},
{
"id": "hyper-util 0.1.9",
"id": "hyper-util 0.1.10",
"target": "hyper_util"
},
{
Expand Down Expand Up @@ -4968,7 +4968,7 @@
"target": "hyper"
},
{
"id": "hyper-util 0.1.9",
"id": "hyper-util 0.1.10",
"target": "hyper_util"
},
{
Expand Down Expand Up @@ -17753,7 +17753,7 @@
"target": "hyper_socks2"
},
{
"id": "hyper-util 0.1.9",
"id": "hyper-util 0.1.10",
"target": "hyper_util"
},
{
Expand Down Expand Up @@ -27247,7 +27247,7 @@
"target": "hyper_rustls"
},
{
"id": "hyper-util 0.1.9",
"id": "hyper-util 0.1.10",
"target": "hyper_util"
},
{
Expand Down Expand Up @@ -27559,7 +27559,7 @@
"target": "hyper"
},
{
"id": "hyper-util 0.1.9",
"id": "hyper-util 0.1.10",
"target": "hyper_util"
},
{
Expand Down Expand Up @@ -27653,7 +27653,7 @@
"target": "hyper"
},
{
"id": "hyper-util 0.1.9",
"id": "hyper-util 0.1.10",
"target": "hyper_util"
},
{
Expand Down Expand Up @@ -27717,7 +27717,7 @@
"target": "hyper"
},
{
"id": "hyper-util 0.1.9",
"id": "hyper-util 0.1.10",
"target": "hyper_util"
},
{
Expand Down Expand Up @@ -27745,14 +27745,14 @@
],
"license_file": "LICENSE-APACHE"
},
"hyper-util 0.1.9": {
"hyper-util 0.1.10": {
"name": "hyper-util",
"version": "0.1.9",
"version": "0.1.10",
"package_url": "https://github.com/hyperium/hyper-util",
"repository": {
"Http": {
"url": "https://static.crates.io/crates/hyper-util/0.1.9/download",
"sha256": "41296eb09f183ac68eec06e03cdbea2e759633d4067b2f6552fc2e009bcad08b"
"url": "https://static.crates.io/crates/hyper-util/0.1.10/download",
"sha256": "df2dcfbe0677734ab2f3ffa7fa7bfd4706bfdc1ef393f2ee30184aed67e631b4"
}
},
"targets": [
Expand Down Expand Up @@ -27840,7 +27840,7 @@
"selects": {}
},
"edition": "2021",
"version": "0.1.9"
"version": "0.1.10"
},
"license": "MIT",
"license_ids": [
Expand Down Expand Up @@ -28187,7 +28187,7 @@
"target": "hyper_rustls"
},
{
"id": "hyper-util 0.1.9",
"id": "hyper-util 0.1.10",
"target": "hyper_util"
},
{
Expand Down Expand Up @@ -28329,7 +28329,7 @@
"target": "hyper"
},
{
"id": "hyper-util 0.1.9",
"id": "hyper-util 0.1.10",
"target": "hyper_util"
},
{
Expand Down Expand Up @@ -33004,7 +33004,7 @@
"target": "hyper_rustls"
},
{
"id": "hyper-util 0.1.9",
"id": "hyper-util 0.1.10",
"target": "hyper_util"
},
{
Expand Down Expand Up @@ -34497,7 +34497,7 @@
"target": "hyper_timeout"
},
{
"id": "hyper-util 0.1.9",
"id": "hyper-util 0.1.10",
"target": "hyper_util"
},
{
Expand Down Expand Up @@ -38465,7 +38465,7 @@
"target": "hyper_rustls"
},
{
"id": "hyper-util 0.1.9",
"id": "hyper-util 0.1.10",
"target": "hyper_util"
},
{
Expand Down Expand Up @@ -53019,7 +53019,7 @@
"target": "hyper_rustls"
},
{
"id": "hyper-util 0.1.9",
"id": "hyper-util 0.1.10",
"target": "hyper_util"
},
{
Expand Down Expand Up @@ -66563,7 +66563,7 @@
"target": "hyper_timeout"
},
{
"id": "hyper-util 0.1.9",
"id": "hyper-util 0.1.10",
"target": "hyper_util"
},
{
Expand Down Expand Up @@ -78524,7 +78524,7 @@
"hyper 1.5.0",
"hyper-rustls 0.27.3",
"hyper-socks2 0.9.1",
"hyper-util 0.1.9",
"hyper-util 0.1.10",
"ic-agent 0.37.1",
"ic-bn-lib 0.1.0",
"ic-btc-interface 0.2.2",
Expand Down
4 changes: 2 additions & 2 deletions Cargo.Bazel.Fuzzing.toml.lock
Original file line number Diff line number Diff line change
Expand Up @@ -4828,9 +4828,9 @@ dependencies = [

[[package]]
name = "hyper-util"
version = "0.1.9"
version = "0.1.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "41296eb09f183ac68eec06e03cdbea2e759633d4067b2f6552fc2e009bcad08b"
checksum = "df2dcfbe0677734ab2f3ffa7fa7bfd4706bfdc1ef393f2ee30184aed67e631b4"
dependencies = [
"bytes",
"futures-channel",
Expand Down
42 changes: 21 additions & 21 deletions Cargo.Bazel.json.lock
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"checksum": "064a13c0359982d947a7c1993ad892be8a541f816ab527f4c04db07118bb1530",
"checksum": "6ad69f549940b165880fbf28174e3a2436e16203ec2297f336bcbc7a1dabcdd5",
"crates": {
"abnf 0.12.0": {
"name": "abnf",
Expand Down Expand Up @@ -4443,7 +4443,7 @@
"target": "hyper"
},
{
"id": "hyper-util 0.1.9",
"id": "hyper-util 0.1.10",
"target": "hyper_util"
},
{
Expand Down Expand Up @@ -4972,7 +4972,7 @@
"target": "hyper"
},
{
"id": "hyper-util 0.1.9",
"id": "hyper-util 0.1.10",
"target": "hyper_util"
},
{
Expand Down Expand Up @@ -17576,7 +17576,7 @@
"target": "hyper_socks2"
},
{
"id": "hyper-util 0.1.9",
"id": "hyper-util 0.1.10",
"target": "hyper_util"
},
{
Expand Down Expand Up @@ -27094,7 +27094,7 @@
"target": "hyper_rustls"
},
{
"id": "hyper-util 0.1.9",
"id": "hyper-util 0.1.10",
"target": "hyper_util"
},
{
Expand Down Expand Up @@ -27406,7 +27406,7 @@
"target": "hyper"
},
{
"id": "hyper-util 0.1.9",
"id": "hyper-util 0.1.10",
"target": "hyper_util"
},
{
Expand Down Expand Up @@ -27500,7 +27500,7 @@
"target": "hyper"
},
{
"id": "hyper-util 0.1.9",
"id": "hyper-util 0.1.10",
"target": "hyper_util"
},
{
Expand Down Expand Up @@ -27564,7 +27564,7 @@
"target": "hyper"
},
{
"id": "hyper-util 0.1.9",
"id": "hyper-util 0.1.10",
"target": "hyper_util"
},
{
Expand Down Expand Up @@ -27592,14 +27592,14 @@
],
"license_file": "LICENSE-APACHE"
},
"hyper-util 0.1.9": {
"hyper-util 0.1.10": {
"name": "hyper-util",
"version": "0.1.9",
"version": "0.1.10",
"package_url": "https://github.com/hyperium/hyper-util",
"repository": {
"Http": {
"url": "https://static.crates.io/crates/hyper-util/0.1.9/download",
"sha256": "41296eb09f183ac68eec06e03cdbea2e759633d4067b2f6552fc2e009bcad08b"
"url": "https://static.crates.io/crates/hyper-util/0.1.10/download",
"sha256": "df2dcfbe0677734ab2f3ffa7fa7bfd4706bfdc1ef393f2ee30184aed67e631b4"
}
},
"targets": [
Expand Down Expand Up @@ -27687,7 +27687,7 @@
"selects": {}
},
"edition": "2021",
"version": "0.1.9"
"version": "0.1.10"
},
"license": "MIT",
"license_ids": [
Expand Down Expand Up @@ -28034,7 +28034,7 @@
"target": "hyper_rustls"
},
{
"id": "hyper-util 0.1.9",
"id": "hyper-util 0.1.10",
"target": "hyper_util"
},
{
Expand Down Expand Up @@ -28176,7 +28176,7 @@
"target": "hyper"
},
{
"id": "hyper-util 0.1.9",
"id": "hyper-util 0.1.10",
"target": "hyper_util"
},
{
Expand Down Expand Up @@ -32829,7 +32829,7 @@
"target": "hyper_rustls"
},
{
"id": "hyper-util 0.1.9",
"id": "hyper-util 0.1.10",
"target": "hyper_util"
},
{
Expand Down Expand Up @@ -34322,7 +34322,7 @@
"target": "hyper_timeout"
},
{
"id": "hyper-util 0.1.9",
"id": "hyper-util 0.1.10",
"target": "hyper_util"
},
{
Expand Down Expand Up @@ -38296,7 +38296,7 @@
"target": "hyper_rustls"
},
{
"id": "hyper-util 0.1.9",
"id": "hyper-util 0.1.10",
"target": "hyper_util"
},
{
Expand Down Expand Up @@ -52859,7 +52859,7 @@
"target": "hyper_rustls"
},
{
"id": "hyper-util 0.1.9",
"id": "hyper-util 0.1.10",
"target": "hyper_util"
},
{
Expand Down Expand Up @@ -66403,7 +66403,7 @@
"target": "hyper_timeout"
},
{
"id": "hyper-util 0.1.9",
"id": "hyper-util 0.1.10",
"target": "hyper_util"
},
{
Expand Down Expand Up @@ -78394,7 +78394,7 @@
"hyper 1.5.0",
"hyper-rustls 0.27.3",
"hyper-socks2 0.9.1",
"hyper-util 0.1.9",
"hyper-util 0.1.10",
"ic-agent 0.37.1",
"ic-bn-lib 0.1.0",
"ic-btc-interface 0.2.2",
Expand Down
4 changes: 2 additions & 2 deletions Cargo.Bazel.toml.lock
Original file line number Diff line number Diff line change
Expand Up @@ -4818,9 +4818,9 @@ dependencies = [

[[package]]
name = "hyper-util"
version = "0.1.9"
version = "0.1.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "41296eb09f183ac68eec06e03cdbea2e759633d4067b2f6552fc2e009bcad08b"
checksum = "df2dcfbe0677734ab2f3ffa7fa7bfd4706bfdc1ef393f2ee30184aed67e631b4"
dependencies = [
"bytes",
"futures-channel",
Expand Down
Loading

0 comments on commit ec12a4e

Please sign in to comment.