diff --git a/include/xrpl/protocol/TxFlags.h b/include/xrpl/protocol/TxFlags.h index 23f1758f7f..6d1d52d340 100644 --- a/include/xrpl/protocol/TxFlags.h +++ b/include/xrpl/protocol/TxFlags.h @@ -65,7 +65,7 @@ constexpr std::uint32_t tfUniversalMask = ~tfUniversal; // Sponsor flags (Global): constexpr std::uint32_t tfSponsorFee = 0x00000001; constexpr std::uint32_t tfSponsorReserve = 0x00000002; -constexpr std::uint32_t tfSponsorMask = tfSponsorFee | tfSponsorReserve; +constexpr std::uint32_t tfSponsorMask = tfSponsorFee | tfSponsorReserve; // AccountSet flags: constexpr std::uint32_t tfRequireDestTag = 0x00010000; diff --git a/include/xrpl/protocol/detail/features.macro b/include/xrpl/protocol/detail/features.macro index 94209aae8d..97d64015a7 100644 --- a/include/xrpl/protocol/detail/features.macro +++ b/include/xrpl/protocol/detail/features.macro @@ -30,7 +30,7 @@ // Add new amendments to the top of this list. // Keep it sorted in reverse chronological order. -XRPL_FEATURE(Sponsor, Supported::yes, VoteBehavior::DefaultNo) +XRPL_FEATURE(Sponsor, Supported::no, VoteBehavior::DefaultNo) XRPL_FIX (DirectoryLimit, Supported::yes, VoteBehavior::DefaultNo) XRPL_FIX (IncludeKeyletFields, Supported::yes, VoteBehavior::DefaultNo) XRPL_FEATURE(DynamicMPT, Supported::no, VoteBehavior::DefaultNo) diff --git a/src/libxrpl/protocol/Indexes.cpp b/src/libxrpl/protocol/Indexes.cpp index 969b737c0c..7b9a02a648 100644 --- a/src/libxrpl/protocol/Indexes.cpp +++ b/src/libxrpl/protocol/Indexes.cpp @@ -96,7 +96,7 @@ enum class LedgerNameSpace : std::uint16_t { PERMISSIONED_DOMAIN = 'm', DELEGATE = 'E', VAULT = 'V', - SPONSORSHIP = 'N', + SPONSORSHIP = '>', // No longer used or supported. Left here to reserve the space // to avoid accidental reuse. diff --git a/src/xrpld/app/tx/detail/Transactor.cpp b/src/xrpld/app/tx/detail/Transactor.cpp index 468c2f79f9..241b2db397 100644 --- a/src/xrpld/app/tx/detail/Transactor.cpp +++ b/src/xrpld/app/tx/detail/Transactor.cpp @@ -317,15 +317,14 @@ Transactor::checkSponsor(ReadView const& view, STTx const& tx) if (!tx.isFieldPresent(sfSponsor)) return tesSUCCESS; - auto const txSponsor = tx.getFieldObject(sfSponsor); - - auto const sponsorAcc = txSponsor.getAccountID(sfAccount); - auto const sponseeAcc = tx.getAccountID(sfAccount); - auto const hasSponsorSignature = tx.isFieldPresent(sfSponsorSignature); if (!hasSponsorSignature) { + auto const txSponsor = tx.getFieldObject(sfSponsor); + + auto const sponsorAcc = txSponsor.getAccountID(sfAccount); + auto const sponseeAcc = tx.getAccountID(sfAccount); auto const sponsorSle = view.read(keylet::sponsor(sponsorAcc, sponseeAcc));