diff --git a/src/crypto/crypto_timing.cc b/src/crypto/crypto_timing.cc index 7772ff875d855d..c69482a4e3954b 100644 --- a/src/crypto/crypto_timing.cc +++ b/src/crypto/crypto_timing.cc @@ -49,34 +49,11 @@ void TimingSafeEqual(const FunctionCallbackInfo& args) { CRYPTO_memcmp(buf1.data(), buf2.data(), buf1.size()) == 0); } -bool FastTimingSafeEqual(Local receiver, - const FastApiTypedArray& a, - const FastApiTypedArray& b, - // NOLINTNEXTLINE(runtime/references) - FastApiCallbackOptions& options) { - uint8_t* data_a; - uint8_t* data_b; - if (a.length() != b.length() || !a.getStorageIfAligned(&data_a) || - !b.getStorageIfAligned(&data_b)) { - Environment* env = Environment::GetCurrent(options.isolate); - THROW_ERR_CRYPTO_TIMING_SAFE_EQUAL_LENGTH(env); - return false; - } - - TRACK_V8_FAST_API_CALL("crypto.timingSafeEqual.ok"); - return CRYPTO_memcmp(data_a, data_b, a.length()) == 0; -} - -static v8::CFunction fast_equal(v8::CFunction::Make(FastTimingSafeEqual)); - void Initialize(Environment* env, Local target) { - SetFastMethodNoSideEffect( - env->context(), target, "timingSafeEqual", TimingSafeEqual, &fast_equal); + SetMethod(env->context(), target, "timingSafeEqual", TimingSafeEqual); } void RegisterExternalReferences(ExternalReferenceRegistry* registry) { registry->Register(TimingSafeEqual); - registry->Register(FastTimingSafeEqual); - registry->Register(fast_equal.GetTypeInfo()); } } // namespace Timing diff --git a/src/node_buffer.cc b/src/node_buffer.cc index 6e141b974131cc..4ac86d35aad6e2 100644 --- a/src/node_buffer.cc +++ b/src/node_buffer.cc @@ -841,24 +841,6 @@ void Compare(const FunctionCallbackInfo &args) { args.GetReturnValue().Set(val); } -int32_t FastCompare(v8::Local, - const FastApiTypedArray& a, - const FastApiTypedArray& b) { - uint8_t* data_a; - uint8_t* data_b; - CHECK(a.getStorageIfAligned(&data_a)); - CHECK(b.getStorageIfAligned(&data_b)); - - size_t cmp_length = std::min(a.length(), b.length()); - - return normalizeCompareVal( - cmp_length > 0 ? memcmp(data_a, data_b, cmp_length) : 0, - a.length(), - b.length()); -} - -static v8::CFunction fast_compare(v8::CFunction::Make(FastCompare)); - // Computes the offset for starting an indexOf or lastIndexOf search. // Returns either a valid offset in [0...], ie inside the Buffer, // or -1 to signal that there is no possible match. @@ -1443,8 +1425,8 @@ void Initialize(Local target, "byteLengthUtf8", SlowByteLengthUtf8, &fast_byte_length_utf8); - SetFastMethod(context, target, "copy", SlowCopy, &fast_copy); - SetFastMethodNoSideEffect(context, target, "compare", Compare, &fast_compare); + SetMethod(context, target, "copy", Copy); + SetMethod(context, target, "compare", Compare); SetMethodNoSideEffect(context, target, "compareOffset", CompareOffset); SetMethod(context, target, "fill", Fill); SetMethodNoSideEffect(context, target, "indexOfBuffer", IndexOfBuffer); @@ -1510,8 +1492,6 @@ void RegisterExternalReferences(ExternalReferenceRegistry* registry) { registry->Register(fast_copy.GetTypeInfo()); registry->Register(FastCopy); registry->Register(Compare); - registry->Register(FastCompare); - registry->Register(fast_compare.GetTypeInfo()); registry->Register(CompareOffset); registry->Register(Fill); registry->Register(IndexOfBuffer); diff --git a/src/node_external_reference.h b/src/node_external_reference.h index b59a3a9e9c957a..01ad1321774628 100644 --- a/src/node_external_reference.h +++ b/src/node_external_reference.h @@ -32,21 +32,6 @@ using CFunctionCallbackWithStrings = bool (*)(v8::Local, const v8::FastOneByteString& input, const v8::FastOneByteString& base); -using CFunctionCallbackWithTwoUint8Arrays = - int32_t (*)(v8::Local, - const v8::FastApiTypedArray&, - const v8::FastApiTypedArray&); -using CFunctionCallbackWithTwoUint8ArraysFallback = - bool (*)(v8::Local, - const v8::FastApiTypedArray&, - const v8::FastApiTypedArray&, - v8::FastApiCallbackOptions&); -using CFunctionCallbackWithUint8ArrayUint32Int64Bool = - int32_t (*)(v8::Local, - const v8::FastApiTypedArray&, - uint32_t, - int64_t, - bool); using CFunctionWithUint32 = uint32_t (*)(v8::Local, const uint32_t input); using CFunctionWithDoubleReturnDouble = double (*)(v8::Local, @@ -80,9 +65,6 @@ class ExternalReferenceRegistry { V(CFunctionCallbackWithBool) \ V(CFunctionCallbackWithString) \ V(CFunctionCallbackWithStrings) \ - V(CFunctionCallbackWithTwoUint8Arrays) \ - V(CFunctionCallbackWithTwoUint8ArraysFallback) \ - V(CFunctionCallbackWithUint8ArrayUint32Int64Bool) \ V(CFunctionWithUint32) \ V(CFunctionWithDoubleReturnDouble) \ V(CFunctionWithInt64Fallback) \