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

@@ -616,7 +616,7 @@ class ConfidentialTransfer_test : public ConfidentialTransferTestBase
mptAlice.set({
.account = alice,
.mutableFlags = tmfMPTSetCanHoldConfidentialBalance,
.flags = tfMPTSetCanHoldConfidentialBalance,
});
}
@@ -637,7 +637,7 @@ class ConfidentialTransfer_test : public ConfidentialTransferTestBase
mptAlice.set({
.account = alice,
.mutableFlags = tmfMPTSetCanHoldConfidentialBalance,
.flags = tfMPTSetCanHoldConfidentialBalance,
.issuerPubKey = mptAlice.getPubKey(alice),
.auditorPubKey = mptAlice.getPubKey(auditor),
});
@@ -880,11 +880,11 @@ class ConfidentialTransfer_test : public ConfidentialTransferTestBase
Account const alice("alice");
MPTTester mptAlice(env, alice, {.holders = {}});
// Create with tmfMPTCannotEnableCanHoldConfidentialBalance
// Create with tifMPTCanHoldConfidentialBalance
mptAlice.create({
.ownerCount = 1,
.flags = tfMPTCanTransfer | tfMPTCanLock,
.mutableFlags = tmfMPTCannotEnableCanHoldConfidentialBalance,
.immutableFlags = tifMPTCanHoldConfidentialBalance,
});
mptAlice.generateKeyPair(alice);
@@ -893,7 +893,7 @@ class ConfidentialTransfer_test : public ConfidentialTransferTestBase
// because the issuance cannot mutate canConfidentialAmount
mptAlice.set({
.account = alice,
.mutableFlags = tmfMPTSetCanHoldConfidentialBalance,
.flags = tfMPTSetCanHoldConfidentialBalance,
.issuerPubKey = mptAlice.getPubKey(alice),
.err = tecNO_PERMISSION,
});
@@ -965,15 +965,11 @@ class ConfidentialTransfer_test : public ConfidentialTransferTestBase
Account const alice("alice");
MPTTester mptAlice(env, alice, {.holders = {}});
mptAlice.create({
.ownerCount = 1,
.flags = tfMPTCanTransfer | tfMPTCanLock,
.mutableFlags = tmfMPTCanMutateTransferFee,
});
mptAlice.create({.ownerCount = 1, .flags = tfMPTCanTransfer | tfMPTCanLock});
mptAlice.set({
.account = alice,
.mutableFlags = tmfMPTSetCanHoldConfidentialBalance,
.flags = tfMPTSetCanHoldConfidentialBalance,
.transferFee = 100,
.err = temBAD_TRANSFER_FEE,
});
@@ -986,16 +982,12 @@ class ConfidentialTransfer_test : public ConfidentialTransferTestBase
Account const alice("alice");
MPTTester mptAlice(env, alice, {.holders = {}});
mptAlice.create({
.transferFee = 100,
.ownerCount = 1,
.flags = tfMPTCanTransfer | tfMPTCanLock,
.mutableFlags = tmfMPTCanMutateTransferFee,
});
mptAlice.create(
{.transferFee = 100, .ownerCount = 1, .flags = tfMPTCanTransfer | tfMPTCanLock});
mptAlice.set({
.account = alice,
.mutableFlags = tmfMPTSetCanHoldConfidentialBalance,
.flags = tfMPTSetCanHoldConfidentialBalance,
.err = tecNO_PERMISSION,
});
}
@@ -1007,11 +999,9 @@ class ConfidentialTransfer_test : public ConfidentialTransferTestBase
Account const alice("alice");
MPTTester mptAlice(env, alice, {.holders = {}});
mptAlice.create({
.ownerCount = 1,
.flags = tfMPTCanTransfer | tfMPTCanLock | tfMPTCanHoldConfidentialBalance,
.mutableFlags = tmfMPTCanMutateTransferFee,
});
mptAlice.create(
{.ownerCount = 1,
.flags = tfMPTCanTransfer | tfMPTCanLock | tfMPTCanHoldConfidentialBalance});
mptAlice.set({
.account = alice,
@@ -5087,7 +5077,7 @@ class ConfidentialTransfer_test : public ConfidentialTransferTestBase
testcase("mutate lsfMPTCanHoldConfidentialBalance");
using namespace test::jtx;
// can not create mpt issuance with tmfMPTCannotEnableCanHoldConfidentialBalance
// can not create mpt issuance with tifMPTCanHoldConfidentialBalance
// when featureDynamicMPT is disabled
{
Env env{*this, features - featureDynamicMPT};
@@ -5097,12 +5087,12 @@ class ConfidentialTransfer_test : public ConfidentialTransferTestBase
mptAlice.create({
.ownerCount = 0,
.mutableFlags = tmfMPTCannotEnableCanHoldConfidentialBalance,
.immutableFlags = tifMPTCanHoldConfidentialBalance,
.err = temDISABLED,
});
}
// can not create mpt issuance with tmfMPTCannotEnableCanHoldConfidentialBalance when
// can not create mpt issuance with tifMPTCanHoldConfidentialBalance when
// featureConfidentialTransfer is disabled
{
Env env{*this, features - featureConfidentialTransfer};
@@ -5112,12 +5102,12 @@ class ConfidentialTransfer_test : public ConfidentialTransferTestBase
mptAlice.create({
.ownerCount = 0,
.mutableFlags = tmfMPTCannotEnableCanHoldConfidentialBalance,
.immutableFlags = tifMPTCanHoldConfidentialBalance,
.err = temDISABLED,
});
}
// if lsmfMPTCannotEnableCanHoldConfidentialBalance is set, can not set/clear
// if lsifMPTCanHoldConfidentialBalance is set, can not set/clear
// lsfMPTCanHoldConfidentialBalance
{
Env env{*this, features};
@@ -5128,12 +5118,12 @@ class ConfidentialTransfer_test : public ConfidentialTransferTestBase
mptAlice.create({
.ownerCount = 1,
.flags = tfMPTCanTransfer,
.mutableFlags = tmfMPTCannotEnableCanHoldConfidentialBalance,
.immutableFlags = tifMPTCanHoldConfidentialBalance,
});
mptAlice.set({
.account = alice,
.mutableFlags = tmfMPTSetCanHoldConfidentialBalance,
.flags = tfMPTSetCanHoldConfidentialBalance,
.err = tecNO_PERMISSION,
});
}
@@ -5148,7 +5138,7 @@ class ConfidentialTransfer_test : public ConfidentialTransferTestBase
mptAlice.create({
.ownerCount = 1,
.flags = tfMPTCanTransfer | tfMPTCanHoldConfidentialBalance,
.mutableFlags = tmfMPTCanEnableCanLock,
.immutableFlags = tifMPTCanLock,
});
mptAlice.authorize({
@@ -5200,14 +5190,14 @@ class ConfidentialTransfer_test : public ConfidentialTransferTestBase
// lsfMPTCanHoldConfidentialBalance was already set
mptAlice.set({
.account = alice,
.mutableFlags = tmfMPTSetCanHoldConfidentialBalance,
.flags = tfMPTSetCanHoldConfidentialBalance,
});
verifyToggle(tesSUCCESS, 10);
// set tmfMPTSetCanHoldConfidentialBalance again
// set tfMPTSetCanHoldConfidentialBalance again
mptAlice.set({
.account = alice,
.mutableFlags = tmfMPTSetCanHoldConfidentialBalance,
.flags = tfMPTSetCanHoldConfidentialBalance,
});
verifyToggle(tesSUCCESS, 30);
}
@@ -5220,7 +5210,7 @@ class ConfidentialTransfer_test : public ConfidentialTransferTestBase
Account const bob("bob");
MPTTester mptAlice(env, alice, {.holders = {bob}});
// lsmfMPTCannotEnableCanHoldConfidentialBalance is false by default,
// lsifMPTCanHoldConfidentialBalance is false by default,
// so that lsfMPTCanHoldConfidentialBalance can be mutated
mptAlice.create({
.ownerCount = 1,
@@ -5243,7 +5233,7 @@ class ConfidentialTransfer_test : public ConfidentialTransferTestBase
// confidential outstanding balance
mptAlice.set({
.account = alice,
.mutableFlags = tmfMPTSetCanHoldConfidentialBalance,
.flags = tfMPTSetCanHoldConfidentialBalance,
.err = tecNO_PERMISSION,
});
}