Merge remote-tracking branch 'upstream/release/3.3.x' into mathbunnyru/merge-3.3.0-to-develop

* upstream/release/3.3.x: (41 commits)
  chore: Bump version to 3.3.0
  chore: Bump version to 3.3.0-rc7
  fix: Increase manifest protocol message size cap and fix manifests relay
  fix: Cap untrusted manifests per message and drop oversized ones
  chore: Bump version to 3.2.1
  chore: Bump version to 3.2.1-rc1
  fix: Cap untrusted manifests per message and drop oversized ones
  fix: Reject oversized validator manifest before decoding
  fix: Reduce untrusted manifest cache cap to 100
  fix: Bound untrusted manifest cache
  chore: Bump version to 3.3.0-rc6
  feat: Package validator-keys inside rippled
  chore: Bump version to 3.3.0-rc5
  fix: Switch SponsorshipSet to use a delta for sfFeeAmount
  fix: Re-revert "fix: Set request size limits and differential pricing for get-object-by-hash calls"
  chore: Bump version to 3.3.0-rc4
  fix: Revert "fix: Set request size limits and differential pricing for get-object-by-hash calls"
  chore: Bump version to 3.3.0-rc3
  fix: Reduce untrusted manifest cache cap to 100
  fix: Revert "fix: Reject oversized SHAMap nodes in gotStaleData and fetch-pack path"
  ...
This commit is contained in:
Ayaz Salikhov
2026-08-07 16:00:25 +01:00
109 changed files with 4419 additions and 1540 deletions

View File

@@ -153,7 +153,10 @@ public:
SerialIter sit{kPayload8};
auto val = std::make_shared<STValidation>(
sit, [](PublicKey const& pk) { return calcNodeID(pk); }, true);
sit,
[](PublicKey const& pk) { return calcNodeID(pk); },
STValidation::DeserializeOptions{
.checkSignature = true, .requireCanonicalOrder = false});
BEAST_EXPECT(val);
BEAST_EXPECT(val->isFieldPresent(sfLedgerSequence));
@@ -174,7 +177,10 @@ public:
{
SerialIter sit{kPayload1};
auto val = std::make_shared<xrpl::STValidation>(
sit, [](PublicKey const& pk) { return calcNodeID(pk); }, false);
sit,
[](PublicKey const& pk) { return calcNodeID(pk); },
STValidation::DeserializeOptions{
.checkSignature = false, .requireCanonicalOrder = false});
fail("An exception should have been thrown");
}
catch (std::exception const& ex)
@@ -186,7 +192,10 @@ public:
{
SerialIter sit{kPayload2};
auto val = std::make_shared<xrpl::STValidation>(
sit, [](PublicKey const& pk) { return calcNodeID(pk); }, false);
sit,
[](PublicKey const& pk) { return calcNodeID(pk); },
STValidation::DeserializeOptions{
.checkSignature = false, .requireCanonicalOrder = false});
fail("An exception should have been thrown");
}
catch (std::exception const& ex)
@@ -198,7 +207,10 @@ public:
{
SerialIter sit{kPayload3};
auto val = std::make_shared<xrpl::STValidation>(
sit, [](PublicKey const& pk) { return calcNodeID(pk); }, false);
sit,
[](PublicKey const& pk) { return calcNodeID(pk); },
STValidation::DeserializeOptions{
.checkSignature = false, .requireCanonicalOrder = false});
fail("An exception should have been thrown");
}
catch (std::exception const& ex)
@@ -210,7 +222,10 @@ public:
{
SerialIter sit{kPayload4};
auto val = std::make_shared<xrpl::STValidation>(
sit, [](PublicKey const& pk) { return calcNodeID(pk); }, false);
sit,
[](PublicKey const& pk) { return calcNodeID(pk); },
STValidation::DeserializeOptions{
.checkSignature = false, .requireCanonicalOrder = false});
fail("An exception should have been thrown");
}
catch (std::exception const& ex)
@@ -224,7 +239,10 @@ public:
{
SerialIter sit{kPayload5};
auto val = std::make_shared<STValidation>(
sit, [](PublicKey const& pk) { return calcNodeID(pk); }, false);
sit,
[](PublicKey const& pk) { return calcNodeID(pk); },
STValidation::DeserializeOptions{
.checkSignature = false, .requireCanonicalOrder = false});
fail("Expected exception not thrown from validation");
}
catch (std::exception const& ex)
@@ -236,7 +254,10 @@ public:
{
SerialIter sit{kPayload6};
auto val = std::make_shared<STValidation>(
sit, [](PublicKey const& pk) { return calcNodeID(pk); }, false);
sit,
[](PublicKey const& pk) { return calcNodeID(pk); },
STValidation::DeserializeOptions{
.checkSignature = false, .requireCanonicalOrder = false});
fail("Expected exception not thrown from validation");
}
catch (std::exception const& ex)
@@ -249,7 +270,10 @@ public:
SerialIter sit{kPayload7};
auto val = std::make_shared<STValidation>(
sit, [](PublicKey const& pk) { return calcNodeID(pk); }, false);
sit,
[](PublicKey const& pk) { return calcNodeID(pk); },
STValidation::DeserializeOptions{
.checkSignature = false, .requireCanonicalOrder = false});
fail("Expected exception not thrown from validation");
}
@@ -279,7 +303,10 @@ public:
SerialIter sit{makeSlice(v2)};
auto val = std::make_shared<STValidation>(
sit, [](PublicKey const& pk) { return calcNodeID(pk); }, true);
sit,
[](PublicKey const& pk) { return calcNodeID(pk); },
STValidation::DeserializeOptions{
.checkSignature = true, .requireCanonicalOrder = false});
fail("Mutated validation signature checked out: offset=" + std::to_string(i));
}