diff --git a/src/ripple/app/tx/impl/SetAccount.cpp b/src/ripple/app/tx/impl/SetAccount.cpp index 0bef57b41..712192100 100644 --- a/src/ripple/app/tx/impl/SetAccount.cpp +++ b/src/ripple/app/tx/impl/SetAccount.cpp @@ -191,7 +191,8 @@ SetAccount::preflight(PreflightContext const& ctx) return temMALFORMED; uint16_t scale = tx.getFieldU16(sfHookStateScale); - if (scale == 0 || scale > 8) // Min: 1, Max: 8 (256 * 8 = 2048 bytes) + if (scale == 0 || + scale > 16) // Min: 1, Max: 16 (256 * 16 = 4096 bytes) return temMALFORMED; } diff --git a/src/test/app/SetHook_test.cpp b/src/test/app/SetHook_test.cpp index 5da30b145..8fef47656 100644 --- a/src/test/app/SetHook_test.cpp +++ b/src/test/app/SetHook_test.cpp @@ -13454,6 +13454,7 @@ SETHOOK_TEST(4, false) SETHOOK_TEST(5, false) SETHOOK_TEST(6, true) +BEAST_DEFINE_TESTSUITE_PRIO(SetHook0, app, ripple, 2); BEAST_DEFINE_TESTSUITE_PRIO(SetHook1, app, ripple, 2); BEAST_DEFINE_TESTSUITE_PRIO(SetHook2, app, ripple, 2); BEAST_DEFINE_TESTSUITE_PRIO(SetHook3, app, ripple, 2); diff --git a/src/test/rpc/AccountSet_test.cpp b/src/test/rpc/AccountSet_test.cpp index 57a3dcb11..994537c27 100644 --- a/src/test/rpc/AccountSet_test.cpp +++ b/src/test/rpc/AccountSet_test.cpp @@ -597,8 +597,8 @@ public: env.enableFeature(featureExtendedHookState); env.close(); - // set invalid HookStateScale (0 or > 8) - for (uint16_t scale : {0, 9}) + // set invalid HookStateScale (0 or > 16) + for (uint16_t scale : {0, 17}) { jt[sfHookStateScale.fieldName] = scale; env(jt, ter(temMALFORMED)); @@ -610,11 +610,11 @@ public: env.close(); BEAST_EXPECT(!env.le(alice)->isFieldPresent(sfHookStateScale)); - // set HookStateScale to 8 - jt[sfHookStateScale.fieldName] = 8; + // set HookStateScale to 16 + jt[sfHookStateScale.fieldName] = 16; env(jt); env.close(); - BEAST_EXPECT(env.le(alice)->getFieldU16(sfHookStateScale) == 8); + BEAST_EXPECT(env.le(alice)->getFieldU16(sfHookStateScale) == 16); // reset HookStateScale jt[sfHookStateScale.fieldName] = 1;