Allow delegation for Sponsorship transactions

This commit is contained in:
tequ
2025-10-17 18:56:46 +09:00
parent 5d597e3b69
commit 2337d340e5
3 changed files with 6 additions and 6 deletions

View File

@@ -949,7 +949,7 @@ TRANSACTION(ttBATCH, 71, Batch,
# include <xrpld/app/tx/detail/SponsorshipTransfer.h>
#endif
TRANSACTION(ttSPONSORSHIP_TRANSFER, 72, SponsorshipTransfer,
Delegation::notDelegatable,
Delegation::delegatable,
featureSponsor,
noPriv,
({
@@ -961,7 +961,7 @@ TRANSACTION(ttSPONSORSHIP_TRANSFER, 72, SponsorshipTransfer,
# include <xrpld/app/tx/detail/SponsorshipSet.h>
#endif
TRANSACTION(ttSPONSORSHIP_SET, 73, SponsorshipSet,
Delegation::notDelegatable,
Delegation::delegatable,
featureSponsor,
noPriv,
({

View File

@@ -1718,7 +1718,10 @@ class Delegate_test : public beast::unit_test::suite
{"VaultDelete", featureSingleAssetVault},
{"VaultDeposit", featureSingleAssetVault},
{"VaultWithdraw", featureSingleAssetVault},
{"VaultClawback", featureSingleAssetVault}};
{"VaultClawback", featureSingleAssetVault},
{"SponsorshipTransfer", featureSponsor},
{"SponsorshipSet", featureSponsor},
};
// fixDelegateV1_1 post-amendment: can not delegate tx if any
// required feature disabled.

View File

@@ -95,14 +95,11 @@ SponsorshipSet::preflight(PreflightContext const& ctx)
if (maxFee.xrp().drops() <= 0)
return temBAD_AMOUNT;
// TODO: check maxFee > basefee
}
if (ctx.tx.isFieldPresent(sfReserveCount))
{
auto const reserveCount = ctx.tx.getFieldU32(sfReserveCount);
// TODO: max reserveCount?
if (reserveCount < 1)
return temMALFORMED;
}