diff --git a/src/libxrpl/ledger/helpers/PermissionedDEXHelpers.cpp b/src/libxrpl/ledger/helpers/PermissionedDEXHelpers.cpp index d65462f0cd..456c4e95d6 100644 --- a/src/libxrpl/ledger/helpers/PermissionedDEXHelpers.cpp +++ b/src/libxrpl/ledger/helpers/PermissionedDEXHelpers.cpp @@ -62,7 +62,8 @@ offerInDomain( if (view.rules().enabled(fixSecurity3_1_3)) { - // post-fixSecurity3_1_3: also catches empty sfAdditionalBooks (size == 0) + // post-fixSecurity3_1_3: a valid hybrid offer must have + // sfAdditionalBooks present with exactly 1 entry if (sleOffer->isFlag(lsfHybrid) && (!sleOffer->isFieldPresent(sfAdditionalBooks) || sleOffer->getFieldArray(sfAdditionalBooks).size() != 1)) @@ -74,7 +75,8 @@ offerInDomain( } else { - // pre-fixSecurity3_1_3: only check for missing sfAdditionalBooks + // pre-fixSecurity3_1_3: a valid hybrid offer must have + // sfAdditionalBooks present (size is not checked) if (sleOffer->isFlag(lsfHybrid) && !sleOffer->isFieldPresent(sfAdditionalBooks)) { JLOG(j.error()) << "Hybrid offer " << offerID << " missing AdditionalBooks field";