diff --git a/src/crypto/crypto_timing.cc b/src/crypto/crypto_timing.cc index ebd5aecce25..a99e5575aed 100644 --- a/src/crypto/crypto_timing.cc +++ b/src/crypto/crypto_timing.cc @@ -9,8 +9,6 @@ namespace node { -using v8::FastApiCallbackOptions; -using v8::FastApiTypedArray; using v8::FunctionCallbackInfo; using v8::Local; using v8::Object; @@ -48,33 +46,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; - } - - 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 02a6a79492c..9cde6275481 100644 --- a/src/node_buffer.cc +++ b/src/node_buffer.cc @@ -58,7 +58,6 @@ using v8::ArrayBufferView; using v8::BackingStore; using v8::Context; using v8::EscapableHandleScope; -using v8::FastApiTypedArray; using v8::FunctionCallbackInfo; using v8::Global; using v8::HandleScope; @@ -845,24 +844,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. @@ -1128,20 +1109,6 @@ void SlowIndexOfNumber(const FunctionCallbackInfo& args) { buffer.data(), buffer.length(), needle, offset_i64, is_forward)); } -int32_t FastIndexOfNumber(v8::Local, - const FastApiTypedArray& buffer, - uint32_t needle, - int64_t offset_i64, - bool is_forward) { - uint8_t* buffer_data; - CHECK(buffer.getStorageIfAligned(&buffer_data)); - return IndexOfNumber( - buffer_data, buffer.length(), needle, offset_i64, is_forward); -} - -static v8::CFunction fast_index_of_number( - v8::CFunction::Make(FastIndexOfNumber)); - void Swap16(const FunctionCallbackInfo& args) { Environment* env = Environment::GetCurrent(args); THROW_AND_RETURN_UNLESS_BUFFER(env, args[0]); @@ -1448,15 +1415,11 @@ void Initialize(Local target, SlowByteLengthUtf8, &fast_byte_length_utf8); SetMethod(context, target, "copy", Copy); - SetFastMethodNoSideEffect(context, target, "compare", Compare, &fast_compare); + SetMethod(context, target, "compare", Compare); SetMethodNoSideEffect(context, target, "compareOffset", CompareOffset); SetMethod(context, target, "fill", Fill); SetMethodNoSideEffect(context, target, "indexOfBuffer", IndexOfBuffer); - SetFastMethodNoSideEffect(context, - target, - "indexOfNumber", - SlowIndexOfNumber, - &fast_index_of_number); + SetMethod(context, target, "indexOfNumber", SlowIndexOfNumber); SetMethodNoSideEffect(context, target, "indexOfString", IndexOfString); SetMethod(context, target, "detachArrayBuffer", DetachArrayBuffer); @@ -1512,14 +1475,10 @@ void RegisterExternalReferences(ExternalReferenceRegistry* registry) { registry->Register(FastByteLengthUtf8); registry->Register(Copy); registry->Register(Compare); - registry->Register(FastCompare); - registry->Register(fast_compare.GetTypeInfo()); registry->Register(CompareOffset); registry->Register(Fill); registry->Register(IndexOfBuffer); registry->Register(SlowIndexOfNumber); - registry->Register(FastIndexOfNumber); - registry->Register(fast_index_of_number.GetTypeInfo()); registry->Register(IndexOfString); registry->Register(Swap16); diff --git a/src/node_external_reference.h b/src/node_external_reference.h index b80b8727c23..24b54adfed7 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, @@ -72,9 +57,6 @@ class ExternalReferenceRegistry { V(CFunctionCallbackWithBool) \ V(CFunctionCallbackWithString) \ V(CFunctionCallbackWithStrings) \ - V(CFunctionCallbackWithTwoUint8Arrays) \ - V(CFunctionCallbackWithTwoUint8ArraysFallback) \ - V(CFunctionCallbackWithUint8ArrayUint32Int64Bool) \ V(CFunctionWithUint32) \ V(CFunctionWithDoubleReturnDouble) \ V(CFunctionWithInt64Fallback) \