node-linux-arm64 19.1.0 → 19.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +336 -1
- package/LICENSE +14 -2
- package/README.md +4 -2
- package/bin/node +0 -0
- package/include/node/common.gypi +2 -6
- package/include/node/config.gypi +7 -1
- package/include/node/node_api.h +4 -4
- package/include/node/node_api_types.h +5 -0
- package/include/node/node_version.h +1 -1
- package/include/node/v8-array-buffer.h +8 -0
- package/include/node/v8-context.h +1 -0
- package/include/node/v8-internal.h +16 -1
- package/include/node/v8-isolate.h +1 -0
- package/include/node/v8-version.h +3 -3
- package/include/node/v8config.h +31 -0
- package/include/node/zconf.h +16 -3
- package/include/node/zlib.h +137 -108
- package/package.json +1 -1
- package/share/doc/node/gdbinit +61 -0
|
@@ -182,7 +182,7 @@ constexpr size_t kSandboxSizeLog2 = 37; // 128 GB
|
|
|
182
182
|
#else
|
|
183
183
|
// Everywhere else use a 1TB sandbox.
|
|
184
184
|
constexpr size_t kSandboxSizeLog2 = 40; // 1 TB
|
|
185
|
-
#endif //
|
|
185
|
+
#endif // V8_TARGET_OS_ANDROID
|
|
186
186
|
constexpr size_t kSandboxSize = 1ULL << kSandboxSizeLog2;
|
|
187
187
|
|
|
188
188
|
// Required alignment of the sandbox. For simplicity, we require the
|
|
@@ -223,6 +223,21 @@ static_assert(kSandboxMinimumReservationSize > kPtrComprCageReservationSize,
|
|
|
223
223
|
"The minimum reservation size for a sandbox must be larger than "
|
|
224
224
|
"the pointer compression cage contained within it.");
|
|
225
225
|
|
|
226
|
+
// The maximum buffer size allowed inside the sandbox. This is mostly dependent
|
|
227
|
+
// on the size of the guard regions around the sandbox: an attacker must not be
|
|
228
|
+
// able to construct a buffer that appears larger than the guard regions and
|
|
229
|
+
// thereby "reach out of" the sandbox.
|
|
230
|
+
constexpr size_t kMaxSafeBufferSizeForSandbox = 32ULL * GB - 1;
|
|
231
|
+
static_assert(kMaxSafeBufferSizeForSandbox <= kSandboxGuardRegionSize,
|
|
232
|
+
"The maximum allowed buffer size must not be larger than the "
|
|
233
|
+
"sandbox's guard regions");
|
|
234
|
+
|
|
235
|
+
constexpr size_t kBoundedSizeShift = 29;
|
|
236
|
+
static_assert(1ULL << (64 - kBoundedSizeShift) ==
|
|
237
|
+
kMaxSafeBufferSizeForSandbox + 1,
|
|
238
|
+
"The maximum size of a BoundedSize must be synchronized with the "
|
|
239
|
+
"kMaxSafeBufferSizeForSandbox");
|
|
240
|
+
|
|
226
241
|
#endif // V8_ENABLE_SANDBOX
|
|
227
242
|
|
|
228
243
|
#ifdef V8_COMPRESS_POINTERS
|
|
@@ -536,6 +536,7 @@ class V8_EXPORT Isolate {
|
|
|
536
536
|
kFunctionPrototypeCaller = 114,
|
|
537
537
|
kTurboFanOsrCompileStarted = 115,
|
|
538
538
|
kAsyncStackTaggingCreateTaskCall = 116,
|
|
539
|
+
kDurationFormat = 117,
|
|
539
540
|
|
|
540
541
|
// If you add new values here, you'll also need to update Chromium's:
|
|
541
542
|
// web_feature.mojom, use_counter_callback.cc, and enums.xml. V8 changes to
|
|
@@ -9,9 +9,9 @@
|
|
|
9
9
|
// NOTE these macros are used by some of the tool scripts and the build
|
|
10
10
|
// system so their names cannot be changed without changing the scripts.
|
|
11
11
|
#define V8_MAJOR_VERSION 10
|
|
12
|
-
#define V8_MINOR_VERSION
|
|
13
|
-
#define V8_BUILD_NUMBER
|
|
14
|
-
#define V8_PATCH_LEVEL
|
|
12
|
+
#define V8_MINOR_VERSION 8
|
|
13
|
+
#define V8_BUILD_NUMBER 168
|
|
14
|
+
#define V8_PATCH_LEVEL 21
|
|
15
15
|
|
|
16
16
|
// Use 1 for candidates and 0 otherwise.
|
|
17
17
|
// (Boolean macro values are not supported by all preprocessors.)
|
package/include/node/v8config.h
CHANGED
|
@@ -579,6 +579,37 @@ path. Add it with -I<path> to the command line
|
|
|
579
579
|
#define V8_NO_UNIQUE_ADDRESS /* NOT SUPPORTED */
|
|
580
580
|
#endif
|
|
581
581
|
|
|
582
|
+
// Marks a type as being eligible for the "trivial" ABI despite having a
|
|
583
|
+
// non-trivial destructor or copy/move constructor. Such types can be relocated
|
|
584
|
+
// after construction by simply copying their memory, which makes them eligible
|
|
585
|
+
// to be passed in registers. The canonical example is std::unique_ptr.
|
|
586
|
+
//
|
|
587
|
+
// Use with caution; this has some subtle effects on constructor/destructor
|
|
588
|
+
// ordering and will be very incorrect if the type relies on its address
|
|
589
|
+
// remaining constant. When used as a function argument (by value), the value
|
|
590
|
+
// may be constructed in the caller's stack frame, passed in a register, and
|
|
591
|
+
// then used and destructed in the callee's stack frame. A similar thing can
|
|
592
|
+
// occur when values are returned.
|
|
593
|
+
//
|
|
594
|
+
// TRIVIAL_ABI is not needed for types which have a trivial destructor and
|
|
595
|
+
// copy/move constructors, since those are automatically trivial by the ABI
|
|
596
|
+
// spec.
|
|
597
|
+
//
|
|
598
|
+
// It is also not likely to be effective on types too large to be passed in one
|
|
599
|
+
// or two registers on typical target ABIs.
|
|
600
|
+
//
|
|
601
|
+
// See also:
|
|
602
|
+
// https://clang.llvm.org/docs/AttributeReference.html#trivial-abi
|
|
603
|
+
// https://libcxx.llvm.org/docs/DesignDocs/UniquePtrTrivialAbi.html
|
|
604
|
+
#if defined(__clang__) && defined(__has_attribute)
|
|
605
|
+
#if __has_attribute(trivial_abi)
|
|
606
|
+
#define V8_TRIVIAL_ABI [[clang::trivial_abi]]
|
|
607
|
+
#endif // __has_attribute(trivial_abi)
|
|
608
|
+
#endif // defined(__clang__) && defined(__has_attribute)
|
|
609
|
+
#if !defined(V8_TRIVIAL_ABI)
|
|
610
|
+
#define V8_TRIVIAL_ABI
|
|
611
|
+
#endif //!defined(V8_TRIVIAL_ABI)
|
|
612
|
+
|
|
582
613
|
// Helper macro to define no_sanitize attributes only with clang.
|
|
583
614
|
#if defined(__clang__) && defined(__has_attribute)
|
|
584
615
|
#if __has_attribute(no_sanitize)
|
package/include/node/zconf.h
CHANGED
|
@@ -50,6 +50,9 @@
|
|
|
50
50
|
# define crc32 z_crc32
|
|
51
51
|
# define crc32_combine z_crc32_combine
|
|
52
52
|
# define crc32_combine64 z_crc32_combine64
|
|
53
|
+
# define crc32_combine_gen z_crc32_combine_gen
|
|
54
|
+
# define crc32_combine_gen64 z_crc32_combine_gen64
|
|
55
|
+
# define crc32_combine_op z_crc32_combine_op
|
|
53
56
|
# define crc32_z z_crc32_z
|
|
54
57
|
# define deflate z_deflate
|
|
55
58
|
# define deflateBound z_deflateBound
|
|
@@ -361,6 +364,9 @@
|
|
|
361
364
|
# ifdef FAR
|
|
362
365
|
# undef FAR
|
|
363
366
|
# endif
|
|
367
|
+
# ifndef WIN32_LEAN_AND_MEAN
|
|
368
|
+
# define WIN32_LEAN_AND_MEAN
|
|
369
|
+
# endif
|
|
364
370
|
# include <windows.h>
|
|
365
371
|
/* No need for _export, use ZLIB.DEF instead. */
|
|
366
372
|
/* For complete Windows compatibility, use WINAPI, not __stdcall. */
|
|
@@ -482,11 +488,18 @@ typedef uLong FAR uLongf;
|
|
|
482
488
|
# undef _LARGEFILE64_SOURCE
|
|
483
489
|
#endif
|
|
484
490
|
|
|
485
|
-
#
|
|
486
|
-
#
|
|
491
|
+
#ifndef Z_HAVE_UNISTD_H
|
|
492
|
+
# ifdef __WATCOMC__
|
|
493
|
+
# define Z_HAVE_UNISTD_H
|
|
494
|
+
# endif
|
|
495
|
+
#endif
|
|
496
|
+
#ifndef Z_HAVE_UNISTD_H
|
|
497
|
+
# if defined(_LARGEFILE64_SOURCE) && !defined(_WIN32)
|
|
498
|
+
# define Z_HAVE_UNISTD_H
|
|
499
|
+
# endif
|
|
487
500
|
#endif
|
|
488
501
|
#ifndef Z_SOLO
|
|
489
|
-
# if defined(Z_HAVE_UNISTD_H)
|
|
502
|
+
# if defined(Z_HAVE_UNISTD_H)
|
|
490
503
|
# include <unistd.h> /* for SEEK_*, off_t, and _LFS64_LARGEFILE */
|
|
491
504
|
# ifdef VMS
|
|
492
505
|
# include <unixio.h> /* for off_t */
|