node-aix-ppc64 20.5.0 → 20.6.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.
Files changed (167) hide show
  1. package/CHANGELOG.md +262 -0
  2. package/LICENSE +1 -1
  3. package/README.md +6 -0
  4. package/bin/node +0 -0
  5. package/include/node/common.gypi +1 -1
  6. package/include/node/cppgc/allocation.h +310 -0
  7. package/include/node/cppgc/cross-thread-persistent.h +466 -0
  8. package/include/node/cppgc/custom-space.h +97 -0
  9. package/include/node/cppgc/default-platform.h +67 -0
  10. package/include/node/cppgc/ephemeron-pair.h +30 -0
  11. package/include/node/cppgc/explicit-management.h +100 -0
  12. package/include/node/cppgc/garbage-collected.h +106 -0
  13. package/include/node/cppgc/heap-consistency.h +309 -0
  14. package/include/node/cppgc/heap-handle.h +48 -0
  15. package/include/node/cppgc/heap-state.h +82 -0
  16. package/include/node/cppgc/heap-statistics.h +120 -0
  17. package/include/node/cppgc/heap.h +202 -0
  18. package/include/node/cppgc/internal/api-constants.h +68 -0
  19. package/include/node/cppgc/internal/atomic-entry-flag.h +48 -0
  20. package/include/node/cppgc/internal/base-page-handle.h +45 -0
  21. package/include/node/cppgc/internal/caged-heap-local-data.h +111 -0
  22. package/include/node/cppgc/internal/caged-heap.h +61 -0
  23. package/include/node/cppgc/internal/compiler-specific.h +38 -0
  24. package/include/node/cppgc/internal/finalizer-trait.h +93 -0
  25. package/include/node/cppgc/internal/gc-info.h +157 -0
  26. package/include/node/cppgc/internal/logging.h +50 -0
  27. package/include/node/cppgc/internal/member-storage.h +248 -0
  28. package/include/node/cppgc/internal/name-trait.h +137 -0
  29. package/include/node/cppgc/internal/persistent-node.h +214 -0
  30. package/include/node/cppgc/internal/pointer-policies.h +243 -0
  31. package/include/node/cppgc/internal/write-barrier.h +487 -0
  32. package/include/node/cppgc/liveness-broker.h +78 -0
  33. package/include/node/cppgc/macros.h +35 -0
  34. package/include/node/cppgc/member.h +604 -0
  35. package/include/node/cppgc/name-provider.h +65 -0
  36. package/include/node/cppgc/object-size-trait.h +58 -0
  37. package/include/node/cppgc/persistent.h +373 -0
  38. package/include/node/cppgc/platform.h +158 -0
  39. package/include/node/cppgc/prefinalizer.h +75 -0
  40. package/include/node/cppgc/process-heap-statistics.h +36 -0
  41. package/include/node/cppgc/sentinel-pointer.h +32 -0
  42. package/include/node/cppgc/source-location.h +92 -0
  43. package/include/node/cppgc/testing.h +106 -0
  44. package/include/node/cppgc/trace-trait.h +120 -0
  45. package/include/node/cppgc/type-traits.h +250 -0
  46. package/include/node/cppgc/visitor.h +426 -0
  47. package/include/node/node.exp +126 -85
  48. package/include/node/node.h +26 -3
  49. package/include/node/node_version.h +1 -1
  50. package/include/node/openssl/archs/BSD-x86/asm/crypto/buildinf.h +1 -1
  51. package/include/node/openssl/archs/BSD-x86/asm/include/openssl/opensslv.h +5 -5
  52. package/include/node/openssl/archs/BSD-x86/asm_avx2/crypto/buildinf.h +1 -1
  53. package/include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/opensslv.h +5 -5
  54. package/include/node/openssl/archs/BSD-x86/no-asm/crypto/buildinf.h +1 -1
  55. package/include/node/openssl/archs/BSD-x86/no-asm/include/openssl/opensslv.h +5 -5
  56. package/include/node/openssl/archs/BSD-x86_64/asm/crypto/buildinf.h +1 -1
  57. package/include/node/openssl/archs/BSD-x86_64/asm/include/openssl/opensslv.h +5 -5
  58. package/include/node/openssl/archs/BSD-x86_64/asm_avx2/crypto/buildinf.h +1 -1
  59. package/include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/opensslv.h +5 -5
  60. package/include/node/openssl/archs/BSD-x86_64/no-asm/crypto/buildinf.h +1 -1
  61. package/include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/opensslv.h +5 -5
  62. package/include/node/openssl/archs/VC-WIN32/asm/crypto/buildinf.h +1 -1
  63. package/include/node/openssl/archs/VC-WIN32/asm/include/openssl/opensslv.h +5 -5
  64. package/include/node/openssl/archs/VC-WIN32/asm_avx2/crypto/buildinf.h +1 -1
  65. package/include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/opensslv.h +5 -5
  66. package/include/node/openssl/archs/VC-WIN32/no-asm/crypto/buildinf.h +1 -1
  67. package/include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/opensslv.h +5 -5
  68. package/include/node/openssl/archs/VC-WIN64-ARM/no-asm/crypto/buildinf.h +1 -1
  69. package/include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/opensslv.h +5 -5
  70. package/include/node/openssl/archs/VC-WIN64A/asm/crypto/buildinf.h +1 -1
  71. package/include/node/openssl/archs/VC-WIN64A/asm/include/openssl/opensslv.h +5 -5
  72. package/include/node/openssl/archs/VC-WIN64A/asm_avx2/crypto/buildinf.h +1 -1
  73. package/include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/opensslv.h +5 -5
  74. package/include/node/openssl/archs/VC-WIN64A/no-asm/crypto/buildinf.h +1 -1
  75. package/include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/opensslv.h +5 -5
  76. package/include/node/openssl/archs/aix64-gcc-as/asm/crypto/buildinf.h +1 -1
  77. package/include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/opensslv.h +5 -5
  78. package/include/node/openssl/archs/aix64-gcc-as/asm_avx2/crypto/buildinf.h +1 -1
  79. package/include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/opensslv.h +5 -5
  80. package/include/node/openssl/archs/aix64-gcc-as/no-asm/crypto/buildinf.h +1 -1
  81. package/include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/opensslv.h +5 -5
  82. package/include/node/openssl/archs/darwin-i386-cc/asm/crypto/buildinf.h +1 -1
  83. package/include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/opensslv.h +5 -5
  84. package/include/node/openssl/archs/darwin-i386-cc/asm_avx2/crypto/buildinf.h +1 -1
  85. package/include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/opensslv.h +5 -5
  86. package/include/node/openssl/archs/darwin-i386-cc/no-asm/crypto/buildinf.h +1 -1
  87. package/include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/opensslv.h +5 -5
  88. package/include/node/openssl/archs/darwin64-arm64-cc/asm/crypto/buildinf.h +1 -1
  89. package/include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/opensslv.h +5 -5
  90. package/include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/crypto/buildinf.h +1 -1
  91. package/include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/opensslv.h +5 -5
  92. package/include/node/openssl/archs/darwin64-arm64-cc/no-asm/crypto/buildinf.h +1 -1
  93. package/include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/opensslv.h +5 -5
  94. package/include/node/openssl/archs/darwin64-x86_64-cc/asm/crypto/buildinf.h +1 -1
  95. package/include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/opensslv.h +5 -5
  96. package/include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/crypto/buildinf.h +1 -1
  97. package/include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/opensslv.h +5 -5
  98. package/include/node/openssl/archs/darwin64-x86_64-cc/no-asm/crypto/buildinf.h +1 -1
  99. package/include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/opensslv.h +5 -5
  100. package/include/node/openssl/archs/linux-aarch64/asm/crypto/buildinf.h +1 -1
  101. package/include/node/openssl/archs/linux-aarch64/asm/include/openssl/opensslv.h +5 -5
  102. package/include/node/openssl/archs/linux-aarch64/asm_avx2/crypto/buildinf.h +1 -1
  103. package/include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/opensslv.h +5 -5
  104. package/include/node/openssl/archs/linux-aarch64/no-asm/crypto/buildinf.h +1 -1
  105. package/include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/opensslv.h +5 -5
  106. package/include/node/openssl/archs/linux-armv4/asm/crypto/buildinf.h +1 -1
  107. package/include/node/openssl/archs/linux-armv4/asm/include/openssl/opensslv.h +5 -5
  108. package/include/node/openssl/archs/linux-armv4/asm_avx2/crypto/buildinf.h +1 -1
  109. package/include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/opensslv.h +5 -5
  110. package/include/node/openssl/archs/linux-armv4/no-asm/crypto/buildinf.h +1 -1
  111. package/include/node/openssl/archs/linux-armv4/no-asm/include/openssl/opensslv.h +5 -5
  112. package/include/node/openssl/archs/linux-elf/asm/crypto/buildinf.h +1 -1
  113. package/include/node/openssl/archs/linux-elf/asm/include/openssl/opensslv.h +5 -5
  114. package/include/node/openssl/archs/linux-elf/asm_avx2/crypto/buildinf.h +1 -1
  115. package/include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/opensslv.h +5 -5
  116. package/include/node/openssl/archs/linux-elf/no-asm/crypto/buildinf.h +1 -1
  117. package/include/node/openssl/archs/linux-elf/no-asm/include/openssl/opensslv.h +5 -5
  118. package/include/node/openssl/archs/linux-ppc64le/asm/crypto/buildinf.h +1 -1
  119. package/include/node/openssl/archs/linux-ppc64le/asm/include/openssl/opensslv.h +5 -5
  120. package/include/node/openssl/archs/linux-ppc64le/asm_avx2/crypto/buildinf.h +1 -1
  121. package/include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/opensslv.h +5 -5
  122. package/include/node/openssl/archs/linux-ppc64le/no-asm/crypto/buildinf.h +1 -1
  123. package/include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/opensslv.h +5 -5
  124. package/include/node/openssl/archs/linux-x86_64/asm/crypto/buildinf.h +1 -1
  125. package/include/node/openssl/archs/linux-x86_64/asm/include/openssl/opensslv.h +5 -5
  126. package/include/node/openssl/archs/linux-x86_64/asm_avx2/crypto/buildinf.h +1 -1
  127. package/include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/opensslv.h +5 -5
  128. package/include/node/openssl/archs/linux-x86_64/no-asm/crypto/buildinf.h +1 -1
  129. package/include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/opensslv.h +5 -5
  130. package/include/node/openssl/archs/linux32-s390x/asm/crypto/buildinf.h +1 -1
  131. package/include/node/openssl/archs/linux32-s390x/asm/include/openssl/opensslv.h +5 -5
  132. package/include/node/openssl/archs/linux32-s390x/asm_avx2/crypto/buildinf.h +1 -1
  133. package/include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/opensslv.h +5 -5
  134. package/include/node/openssl/archs/linux32-s390x/no-asm/crypto/buildinf.h +1 -1
  135. package/include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/opensslv.h +5 -5
  136. package/include/node/openssl/archs/linux64-loongarch64/no-asm/crypto/buildinf.h +1 -1
  137. package/include/node/openssl/archs/linux64-loongarch64/no-asm/include/openssl/opensslv.h +5 -5
  138. package/include/node/openssl/archs/linux64-mips64/asm/crypto/buildinf.h +1 -1
  139. package/include/node/openssl/archs/linux64-mips64/asm/include/openssl/opensslv.h +5 -5
  140. package/include/node/openssl/archs/linux64-mips64/asm_avx2/crypto/buildinf.h +1 -1
  141. package/include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/opensslv.h +5 -5
  142. package/include/node/openssl/archs/linux64-mips64/no-asm/crypto/buildinf.h +1 -1
  143. package/include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/opensslv.h +5 -5
  144. package/include/node/openssl/archs/linux64-riscv64/no-asm/crypto/buildinf.h +1 -1
  145. package/include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/opensslv.h +5 -5
  146. package/include/node/openssl/archs/linux64-s390x/asm/crypto/buildinf.h +1 -1
  147. package/include/node/openssl/archs/linux64-s390x/asm/include/openssl/opensslv.h +5 -5
  148. package/include/node/openssl/archs/linux64-s390x/asm_avx2/crypto/buildinf.h +1 -1
  149. package/include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/opensslv.h +5 -5
  150. package/include/node/openssl/archs/linux64-s390x/no-asm/crypto/buildinf.h +1 -1
  151. package/include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/opensslv.h +5 -5
  152. package/include/node/openssl/archs/solaris-x86-gcc/asm/crypto/buildinf.h +1 -1
  153. package/include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/opensslv.h +5 -5
  154. package/include/node/openssl/archs/solaris-x86-gcc/asm_avx2/crypto/buildinf.h +1 -1
  155. package/include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/opensslv.h +5 -5
  156. package/include/node/openssl/archs/solaris-x86-gcc/no-asm/crypto/buildinf.h +1 -1
  157. package/include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/opensslv.h +5 -5
  158. package/include/node/openssl/archs/solaris64-x86_64-gcc/asm/crypto/buildinf.h +1 -1
  159. package/include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/opensslv.h +5 -5
  160. package/include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/crypto/buildinf.h +1 -1
  161. package/include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/opensslv.h +5 -5
  162. package/include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/crypto/buildinf.h +1 -1
  163. package/include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/opensslv.h +5 -5
  164. package/include/node/openssl/dh.h +6 -2
  165. package/include/node/openssl/x509err.h +2 -1
  166. package/include/node/v8-cppgc.h +245 -0
  167. package/package.json +1 -1
@@ -29,7 +29,7 @@ extern "C" {
29
29
  */
30
30
  # define OPENSSL_VERSION_MAJOR 3
31
31
  # define OPENSSL_VERSION_MINOR 0
32
- # define OPENSSL_VERSION_PATCH 9
32
+ # define OPENSSL_VERSION_PATCH 10
33
33
 
34
34
  /*
35
35
  * Additional version information
@@ -74,21 +74,21 @@ extern "C" {
74
74
  * longer variant with OPENSSL_VERSION_PRE_RELEASE_STR and
75
75
  * OPENSSL_VERSION_BUILD_METADATA_STR appended.
76
76
  */
77
- # define OPENSSL_VERSION_STR "3.0.9"
78
- # define OPENSSL_FULL_VERSION_STR "3.0.9+quic"
77
+ # define OPENSSL_VERSION_STR "3.0.10"
78
+ # define OPENSSL_FULL_VERSION_STR "3.0.10+quic"
79
79
 
80
80
  /*
81
81
  * SECTION 3: ADDITIONAL METADATA
82
82
  *
83
83
  * These strings are defined separately to allow them to be parsable.
84
84
  */
85
- # define OPENSSL_RELEASE_DATE "30 May 2023"
85
+ # define OPENSSL_RELEASE_DATE "1 Aug 2023"
86
86
 
87
87
  /*
88
88
  * SECTION 4: BACKWARD COMPATIBILITY
89
89
  */
90
90
 
91
- # define OPENSSL_VERSION_TEXT "OpenSSL 3.0.9+quic 30 May 2023"
91
+ # define OPENSSL_VERSION_TEXT "OpenSSL 3.0.10+quic 1 Aug 2023"
92
92
 
93
93
  /* Synthesize OPENSSL_VERSION_NUMBER with the layout 0xMNN00PPSL */
94
94
  # ifdef OPENSSL_VERSION_PRE_RELEASE
@@ -11,7 +11,7 @@
11
11
  */
12
12
 
13
13
  #define PLATFORM "platform: solaris64-x86_64-gcc"
14
- #define DATE "built on: Fri Jun 9 12:13:30 2023 UTC"
14
+ #define DATE "built on: Sun Aug 6 00:41:20 2023 UTC"
15
15
 
16
16
  /*
17
17
  * Generate compiler_flags as an array of individual characters. This is a
@@ -29,7 +29,7 @@ extern "C" {
29
29
  */
30
30
  # define OPENSSL_VERSION_MAJOR 3
31
31
  # define OPENSSL_VERSION_MINOR 0
32
- # define OPENSSL_VERSION_PATCH 9
32
+ # define OPENSSL_VERSION_PATCH 10
33
33
 
34
34
  /*
35
35
  * Additional version information
@@ -74,21 +74,21 @@ extern "C" {
74
74
  * longer variant with OPENSSL_VERSION_PRE_RELEASE_STR and
75
75
  * OPENSSL_VERSION_BUILD_METADATA_STR appended.
76
76
  */
77
- # define OPENSSL_VERSION_STR "3.0.9"
78
- # define OPENSSL_FULL_VERSION_STR "3.0.9+quic"
77
+ # define OPENSSL_VERSION_STR "3.0.10"
78
+ # define OPENSSL_FULL_VERSION_STR "3.0.10+quic"
79
79
 
80
80
  /*
81
81
  * SECTION 3: ADDITIONAL METADATA
82
82
  *
83
83
  * These strings are defined separately to allow them to be parsable.
84
84
  */
85
- # define OPENSSL_RELEASE_DATE "30 May 2023"
85
+ # define OPENSSL_RELEASE_DATE "1 Aug 2023"
86
86
 
87
87
  /*
88
88
  * SECTION 4: BACKWARD COMPATIBILITY
89
89
  */
90
90
 
91
- # define OPENSSL_VERSION_TEXT "OpenSSL 3.0.9+quic 30 May 2023"
91
+ # define OPENSSL_VERSION_TEXT "OpenSSL 3.0.10+quic 1 Aug 2023"
92
92
 
93
93
  /* Synthesize OPENSSL_VERSION_NUMBER with the layout 0xMNN00PPSL */
94
94
  # ifdef OPENSSL_VERSION_PRE_RELEASE
@@ -11,7 +11,7 @@
11
11
  */
12
12
 
13
13
  #define PLATFORM "platform: solaris64-x86_64-gcc"
14
- #define DATE "built on: Fri Jun 9 12:13:56 2023 UTC"
14
+ #define DATE "built on: Sun Aug 6 00:41:48 2023 UTC"
15
15
 
16
16
  /*
17
17
  * Generate compiler_flags as an array of individual characters. This is a
@@ -29,7 +29,7 @@ extern "C" {
29
29
  */
30
30
  # define OPENSSL_VERSION_MAJOR 3
31
31
  # define OPENSSL_VERSION_MINOR 0
32
- # define OPENSSL_VERSION_PATCH 9
32
+ # define OPENSSL_VERSION_PATCH 10
33
33
 
34
34
  /*
35
35
  * Additional version information
@@ -74,21 +74,21 @@ extern "C" {
74
74
  * longer variant with OPENSSL_VERSION_PRE_RELEASE_STR and
75
75
  * OPENSSL_VERSION_BUILD_METADATA_STR appended.
76
76
  */
77
- # define OPENSSL_VERSION_STR "3.0.9"
78
- # define OPENSSL_FULL_VERSION_STR "3.0.9+quic"
77
+ # define OPENSSL_VERSION_STR "3.0.10"
78
+ # define OPENSSL_FULL_VERSION_STR "3.0.10+quic"
79
79
 
80
80
  /*
81
81
  * SECTION 3: ADDITIONAL METADATA
82
82
  *
83
83
  * These strings are defined separately to allow them to be parsable.
84
84
  */
85
- # define OPENSSL_RELEASE_DATE "30 May 2023"
85
+ # define OPENSSL_RELEASE_DATE "1 Aug 2023"
86
86
 
87
87
  /*
88
88
  * SECTION 4: BACKWARD COMPATIBILITY
89
89
  */
90
90
 
91
- # define OPENSSL_VERSION_TEXT "OpenSSL 3.0.9+quic 30 May 2023"
91
+ # define OPENSSL_VERSION_TEXT "OpenSSL 3.0.10+quic 1 Aug 2023"
92
92
 
93
93
  /* Synthesize OPENSSL_VERSION_NUMBER with the layout 0xMNN00PPSL */
94
94
  # ifdef OPENSSL_VERSION_PRE_RELEASE
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
2
+ * Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
3
3
  *
4
4
  * Licensed under the Apache License 2.0 (the "License"). You may not use
5
5
  * this file except in compliance with the License. You can obtain a copy
@@ -89,7 +89,11 @@ int EVP_PKEY_CTX_get0_dh_kdf_ukm(EVP_PKEY_CTX *ctx, unsigned char **ukm);
89
89
  # include <openssl/dherr.h>
90
90
 
91
91
  # ifndef OPENSSL_DH_MAX_MODULUS_BITS
92
- # define OPENSSL_DH_MAX_MODULUS_BITS 10000
92
+ # define OPENSSL_DH_MAX_MODULUS_BITS 10000
93
+ # endif
94
+
95
+ # ifndef OPENSSL_DH_CHECK_MAX_MODULUS_BITS
96
+ # define OPENSSL_DH_CHECK_MAX_MODULUS_BITS 32768
93
97
  # endif
94
98
 
95
99
  # define OPENSSL_DH_FIPS_MIN_MODULUS_BITS 1024
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Generated by util/mkerr.pl DO NOT EDIT
3
- * Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
3
+ * Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
4
4
  *
5
5
  * Licensed under the Apache License 2.0 (the "License"). You may not use
6
6
  * this file except in compliance with the License. You can obtain a copy
@@ -30,6 +30,7 @@
30
30
  # define X509_R_CERT_ALREADY_IN_HASH_TABLE 101
31
31
  # define X509_R_CRL_ALREADY_DELTA 127
32
32
  # define X509_R_CRL_VERIFY_FAILURE 131
33
+ # define X509_R_DUPLICATE_ATTRIBUTE 140
33
34
  # define X509_R_ERROR_GETTING_MD_BY_NID 141
34
35
  # define X509_R_ERROR_USING_SIGINF_SET 142
35
36
  # define X509_R_IDP_MISMATCH 128
@@ -0,0 +1,245 @@
1
+ // Copyright 2020 the V8 project authors. All rights reserved.
2
+ // Use of this source code is governed by a BSD-style license that can be
3
+ // found in the LICENSE file.
4
+
5
+ #ifndef INCLUDE_V8_CPPGC_H_
6
+ #define INCLUDE_V8_CPPGC_H_
7
+
8
+ #include <cstdint>
9
+ #include <memory>
10
+ #include <vector>
11
+
12
+ #include "cppgc/common.h"
13
+ #include "cppgc/custom-space.h"
14
+ #include "cppgc/heap-statistics.h"
15
+ #include "cppgc/visitor.h"
16
+ #include "v8-internal.h" // NOLINT(build/include_directory)
17
+ #include "v8-platform.h" // NOLINT(build/include_directory)
18
+ #include "v8-traced-handle.h" // NOLINT(build/include_directory)
19
+
20
+ namespace cppgc {
21
+ class AllocationHandle;
22
+ class HeapHandle;
23
+ } // namespace cppgc
24
+
25
+ namespace v8 {
26
+
27
+ class Object;
28
+
29
+ namespace internal {
30
+ class CppHeap;
31
+ } // namespace internal
32
+
33
+ class CustomSpaceStatisticsReceiver;
34
+
35
+ /**
36
+ * Describes how V8 wrapper objects maintain references to garbage-collected C++
37
+ * objects.
38
+ */
39
+ struct WrapperDescriptor final {
40
+ /**
41
+ * The index used on `v8::Ojbect::SetAlignedPointerFromInternalField()` and
42
+ * related APIs to add additional data to an object which is used to identify
43
+ * JS->C++ references.
44
+ */
45
+ using InternalFieldIndex = int;
46
+
47
+ /**
48
+ * Unknown embedder id. The value is reserved for internal usages and must not
49
+ * be used with `CppHeap`.
50
+ */
51
+ static constexpr uint16_t kUnknownEmbedderId = UINT16_MAX;
52
+
53
+ constexpr WrapperDescriptor(InternalFieldIndex wrappable_type_index,
54
+ InternalFieldIndex wrappable_instance_index,
55
+ uint16_t embedder_id_for_garbage_collected)
56
+ : wrappable_type_index(wrappable_type_index),
57
+ wrappable_instance_index(wrappable_instance_index),
58
+ embedder_id_for_garbage_collected(embedder_id_for_garbage_collected) {}
59
+
60
+ /**
61
+ * Index of the wrappable type.
62
+ */
63
+ InternalFieldIndex wrappable_type_index;
64
+
65
+ /**
66
+ * Index of the wrappable instance.
67
+ */
68
+ InternalFieldIndex wrappable_instance_index;
69
+
70
+ /**
71
+ * Embedder id identifying instances of garbage-collected objects. It is
72
+ * expected that the first field of the wrappable type is a uint16_t holding
73
+ * the id. Only references to instances of wrappables types with an id of
74
+ * `embedder_id_for_garbage_collected` will be considered by CppHeap.
75
+ */
76
+ uint16_t embedder_id_for_garbage_collected;
77
+ };
78
+
79
+ struct V8_EXPORT CppHeapCreateParams {
80
+ CppHeapCreateParams(
81
+ std::vector<std::unique_ptr<cppgc::CustomSpaceBase>> custom_spaces,
82
+ WrapperDescriptor wrapper_descriptor)
83
+ : custom_spaces(std::move(custom_spaces)),
84
+ wrapper_descriptor(wrapper_descriptor) {}
85
+
86
+ CppHeapCreateParams(const CppHeapCreateParams&) = delete;
87
+ CppHeapCreateParams& operator=(const CppHeapCreateParams&) = delete;
88
+
89
+ std::vector<std::unique_ptr<cppgc::CustomSpaceBase>> custom_spaces;
90
+ WrapperDescriptor wrapper_descriptor;
91
+ /**
92
+ * Specifies which kind of marking are supported by the heap. The type may be
93
+ * further reduced via runtime flags when attaching the heap to an Isolate.
94
+ */
95
+ cppgc::Heap::MarkingType marking_support =
96
+ cppgc::Heap::MarkingType::kIncrementalAndConcurrent;
97
+ /**
98
+ * Specifies which kind of sweeping is supported by the heap. The type may be
99
+ * further reduced via runtime flags when attaching the heap to an Isolate.
100
+ */
101
+ cppgc::Heap::SweepingType sweeping_support =
102
+ cppgc::Heap::SweepingType::kIncrementalAndConcurrent;
103
+ };
104
+
105
+ /**
106
+ * A heap for allocating managed C++ objects.
107
+ *
108
+ * Similar to v8::Isolate, the heap may only be accessed from one thread at a
109
+ * time. The heap may be used from different threads using the
110
+ * v8::Locker/v8::Unlocker APIs which is different from generic Oilpan.
111
+ */
112
+ class V8_EXPORT CppHeap {
113
+ public:
114
+ static std::unique_ptr<CppHeap> Create(v8::Platform* platform,
115
+ const CppHeapCreateParams& params);
116
+
117
+ virtual ~CppHeap() = default;
118
+
119
+ /**
120
+ * \returns the opaque handle for allocating objects using
121
+ * `MakeGarbageCollected()`.
122
+ */
123
+ cppgc::AllocationHandle& GetAllocationHandle();
124
+
125
+ /**
126
+ * \returns the opaque heap handle which may be used to refer to this heap in
127
+ * other APIs. Valid as long as the underlying `CppHeap` is alive.
128
+ */
129
+ cppgc::HeapHandle& GetHeapHandle();
130
+
131
+ /**
132
+ * Terminate clears all roots and performs multiple garbage collections to
133
+ * reclaim potentially newly created objects in destructors.
134
+ *
135
+ * After this call, object allocation is prohibited.
136
+ */
137
+ void Terminate();
138
+
139
+ /**
140
+ * \param detail_level specifies whether should return detailed
141
+ * statistics or only brief summary statistics.
142
+ * \returns current CppHeap statistics regarding memory consumption
143
+ * and utilization.
144
+ */
145
+ cppgc::HeapStatistics CollectStatistics(
146
+ cppgc::HeapStatistics::DetailLevel detail_level);
147
+
148
+ /**
149
+ * Collects statistics for the given spaces and reports them to the receiver.
150
+ *
151
+ * \param custom_spaces a collection of custom space indicies.
152
+ * \param receiver an object that gets the results.
153
+ */
154
+ void CollectCustomSpaceStatisticsAtLastGC(
155
+ std::vector<cppgc::CustomSpaceIndex> custom_spaces,
156
+ std::unique_ptr<CustomSpaceStatisticsReceiver> receiver);
157
+
158
+ /**
159
+ * Enables a detached mode that allows testing garbage collection using
160
+ * `cppgc::testing` APIs. Once used, the heap cannot be attached to an
161
+ * `Isolate` anymore.
162
+ */
163
+ void EnableDetachedGarbageCollectionsForTesting();
164
+
165
+ /**
166
+ * Performs a stop-the-world garbage collection for testing purposes.
167
+ *
168
+ * \param stack_state The stack state to assume for the garbage collection.
169
+ */
170
+ void CollectGarbageForTesting(cppgc::EmbedderStackState stack_state);
171
+
172
+ /**
173
+ * Performs a stop-the-world minor garbage collection for testing purposes.
174
+ *
175
+ * \param stack_state The stack state to assume for the garbage collection.
176
+ */
177
+ void CollectGarbageInYoungGenerationForTesting(
178
+ cppgc::EmbedderStackState stack_state);
179
+
180
+ /**
181
+ * \returns the wrapper descriptor of this CppHeap.
182
+ */
183
+ v8::WrapperDescriptor wrapper_descriptor() const;
184
+
185
+ private:
186
+ CppHeap() = default;
187
+
188
+ friend class internal::CppHeap;
189
+ };
190
+
191
+ class JSVisitor : public cppgc::Visitor {
192
+ public:
193
+ explicit JSVisitor(cppgc::Visitor::Key key) : cppgc::Visitor(key) {}
194
+ ~JSVisitor() override = default;
195
+
196
+ void Trace(const TracedReferenceBase& ref) {
197
+ if (ref.IsEmptyThreadSafe()) return;
198
+ Visit(ref);
199
+ }
200
+
201
+ protected:
202
+ using cppgc::Visitor::Visit;
203
+
204
+ virtual void Visit(const TracedReferenceBase& ref) {}
205
+ };
206
+
207
+ /**
208
+ * Provided as input to `CppHeap::CollectCustomSpaceStatisticsAtLastGC()`.
209
+ *
210
+ * Its method is invoked with the results of the statistic collection.
211
+ */
212
+ class CustomSpaceStatisticsReceiver {
213
+ public:
214
+ virtual ~CustomSpaceStatisticsReceiver() = default;
215
+ /**
216
+ * Reports the size of a space at the last GC. It is called for each space
217
+ * that was requested in `CollectCustomSpaceStatisticsAtLastGC()`.
218
+ *
219
+ * \param space_index The index of the space.
220
+ * \param bytes The total size of live objects in the space at the last GC.
221
+ * It is zero if there was no GC yet.
222
+ */
223
+ virtual void AllocatedBytes(cppgc::CustomSpaceIndex space_index,
224
+ size_t bytes) = 0;
225
+ };
226
+
227
+ } // namespace v8
228
+
229
+ namespace cppgc {
230
+
231
+ template <typename T>
232
+ struct TraceTrait<v8::TracedReference<T>> {
233
+ static cppgc::TraceDescriptor GetTraceDescriptor(const void* self) {
234
+ return {nullptr, Trace};
235
+ }
236
+
237
+ static void Trace(Visitor* visitor, const void* self) {
238
+ static_cast<v8::JSVisitor*>(visitor)->Trace(
239
+ *static_cast<const v8::TracedReference<T>*>(self));
240
+ }
241
+ };
242
+
243
+ } // namespace cppgc
244
+
245
+ #endif // INCLUDE_V8_CPPGC_H_
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "node-aix-ppc64",
3
- "version": "v20.5.0",
3
+ "version": "v20.6.0",
4
4
  "description": "node",
5
5
  "bin": {
6
6
  "node": "bin/node"