@encharm/cws 4.4.1 → 4.5.2

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 (606) hide show
  1. package/binding.gyp +1 -1
  2. package/dist/bindings/cws_darwin_arm64_node115.node +0 -0
  3. package/dist/bindings/cws_darwin_arm64_node127.node +0 -0
  4. package/dist/bindings/cws_darwin_arm64_node137.node +0 -0
  5. package/dist/bindings/cws_linux_arm64_node115.node +0 -0
  6. package/dist/bindings/cws_linux_arm64_node127.node +0 -0
  7. package/dist/bindings/cws_linux_x64_node115.node +0 -0
  8. package/dist/bindings/cws_linux_x64_node127.node +0 -0
  9. package/dist/bindings/cws_linux_x64_node137.node +0 -0
  10. package/dist/bindings/cws_win32_x64_node108.node +0 -0
  11. package/dist/bindings/cws_win32_x64_node115.node +0 -0
  12. package/dist/bindings/cws_win32_x64_node127.node +0 -0
  13. package/dist/bindings/cws_win32_x64_node83.node +0 -0
  14. package/dist/bindings/cws_win32_x64_node93.node +0 -0
  15. package/package.json +1 -1
  16. package/src/Addon.h +13 -23
  17. package/src/Socket.h +0 -1
  18. package/src/headers/22/acorn_version.h +6 -0
  19. package/src/headers/22/aliased_buffer-inl.h +243 -0
  20. package/src/headers/22/aliased_buffer.h +206 -0
  21. package/src/headers/{18 → 22}/async_wrap-inl.h +8 -6
  22. package/src/headers/{18 → 22}/async_wrap.h +65 -59
  23. package/src/headers/{18 → 22}/base_object-inl.h +57 -117
  24. package/src/headers/{18 → 22}/base_object.h +58 -30
  25. package/src/headers/22/base_object_types.h +74 -0
  26. package/src/headers/22/blob_serializer_deserializer-inl.h +385 -0
  27. package/src/headers/22/blob_serializer_deserializer.h +132 -0
  28. package/src/headers/{16 → 22}/callback_queue.h +1 -0
  29. package/src/headers/{16 → 22}/cares_wrap.h +27 -20
  30. package/src/headers/22/cjs_module_lexer_version.h +6 -0
  31. package/src/headers/22/cleanup_queue-inl.h +62 -0
  32. package/src/headers/22/cleanup_queue.h +85 -0
  33. package/src/headers/22/compile_cache.h +104 -0
  34. package/src/headers/{18 → 22}/crypto/crypto_clienthello.h +1 -1
  35. package/src/headers/{18 → 22}/crypto/crypto_context.h +31 -7
  36. package/src/headers/{18 → 22}/crypto/crypto_keys.h +118 -148
  37. package/src/headers/{18 → 22}/crypto/crypto_tls.h +20 -5
  38. package/src/headers/{18 → 22}/crypto/crypto_util.h +219 -263
  39. package/src/headers/22/crypto/ncrypto.h +752 -0
  40. package/src/headers/{16 → 22}/debug_utils-inl.h +15 -7
  41. package/src/headers/{18 → 22}/debug_utils.h +25 -19
  42. package/src/headers/22/encoding_binding.h +59 -0
  43. package/src/headers/{14 → 22}/env-inl.h +276 -409
  44. package/src/headers/22/env.h +1266 -0
  45. package/src/headers/22/env_properties.h +497 -0
  46. package/src/headers/{18 → 22}/handle_wrap.h +2 -0
  47. package/src/headers/{18 → 22}/histogram.h +88 -48
  48. package/src/headers/{16 → 22}/inspector_agent.h +17 -1
  49. package/src/headers/{16 → 22}/inspector_profiler.h +15 -13
  50. package/src/headers/22/js_native_api.h +619 -0
  51. package/src/headers/{18 → 22}/js_native_api_types.h +46 -1
  52. package/src/headers/22/js_native_api_v8.h +485 -0
  53. package/src/headers/{18 → 22}/js_native_api_v8_internals.h +6 -0
  54. package/src/headers/22/json_parser.h +40 -0
  55. package/src/headers/{16 → 22}/json_utils.h +19 -8
  56. package/src/headers/{18 → 22}/memory_tracker-inl.h +16 -13
  57. package/src/headers/{14 → 22}/memory_tracker.h +13 -8
  58. package/src/headers/{16 → 22}/module_wrap.h +49 -19
  59. package/src/headers/22/ncrypto/ncrypto.h +752 -0
  60. package/src/headers/{18 → 22}/node.h +465 -68
  61. package/src/headers/{18 → 22}/node_api.h +66 -81
  62. package/src/headers/{18 → 22}/node_api_internals.h +8 -4
  63. package/src/headers/{18 → 22}/node_api_types.h +5 -0
  64. package/src/headers/22/node_binding.h +154 -0
  65. package/src/headers/{18 → 22}/node_blob.h +46 -78
  66. package/src/headers/{18 → 22}/node_bob-inl.h +1 -2
  67. package/src/headers/{18 → 22}/node_bob.h +2 -6
  68. package/src/headers/{18 → 22}/node_buffer.h +1 -1
  69. package/src/headers/22/node_builtins.h +220 -0
  70. package/src/headers/{18 → 22}/node_constants.h +3 -5
  71. package/src/headers/22/node_context_data.h +168 -0
  72. package/src/headers/22/node_contextify.h +199 -0
  73. package/src/headers/{16 → 22}/node_crypto.h +1 -2
  74. package/src/headers/22/node_dotenv.h +45 -0
  75. package/src/headers/{18 → 22}/node_errors.h +86 -27
  76. package/src/headers/22/node_exit_code.h +54 -0
  77. package/src/headers/22/node_external_reference.h +249 -0
  78. package/src/headers/{18 → 22}/node_file-inl.h +127 -30
  79. package/src/headers/{16 → 22}/node_file.h +122 -11
  80. package/src/headers/{18 → 22}/node_http2.h +28 -11
  81. package/src/headers/{16 → 22}/node_http2_state.h +34 -25
  82. package/src/headers/{18 → 22}/node_http_common-inl.h +2 -1
  83. package/src/headers/{18 → 22}/node_http_common.h +56 -55
  84. package/src/headers/{16 → 22}/node_i18n.h +5 -18
  85. package/src/headers/{18 → 22}/node_internals.h +121 -59
  86. package/src/headers/{18 → 22}/node_main_instance.h +4 -31
  87. package/src/headers/{18 → 22}/node_messaging.h +27 -10
  88. package/src/headers/{18 → 22}/node_metadata.h +23 -1
  89. package/src/headers/{18 → 22}/node_options-inl.h +24 -11
  90. package/src/headers/{18 → 22}/node_options.h +124 -39
  91. package/src/headers/{18 → 22}/node_perf.h +0 -2
  92. package/src/headers/{18 → 22}/node_perf_common.h +20 -9
  93. package/src/headers/{18 → 22}/node_platform.h +11 -5
  94. package/src/headers/{18 → 22}/node_process.h +26 -14
  95. package/src/headers/22/node_realm-inl.h +145 -0
  96. package/src/headers/22/node_realm.h +184 -0
  97. package/src/headers/{16 → 22}/node_report.h +13 -17
  98. package/src/headers/{16 → 22}/node_revert.h +3 -3
  99. package/src/headers/{16 → 22}/node_root_certs.h +902 -461
  100. package/src/headers/22/node_sea.h +64 -0
  101. package/src/headers/22/node_shadow_realm.h +46 -0
  102. package/src/headers/22/node_snapshot_builder.h +57 -0
  103. package/src/headers/22/node_snapshotable.h +174 -0
  104. package/src/headers/{18 → 22}/node_sockaddr.h +2 -2
  105. package/src/headers/{16 → 22}/node_stat_watcher.h +2 -1
  106. package/src/headers/22/node_threadsafe_cow-inl.h +54 -0
  107. package/src/headers/22/node_threadsafe_cow.h +105 -0
  108. package/src/headers/22/node_union_bytes.h +81 -0
  109. package/src/headers/22/node_url.h +96 -0
  110. package/src/headers/22/node_v8.h +77 -0
  111. package/src/headers/{14 → 22}/node_v8_platform-inl.h +17 -6
  112. package/src/headers/{16 → 22}/node_version.h +21 -9
  113. package/src/headers/22/node_wasi.h +185 -0
  114. package/src/headers/{14 → 22}/node_watchdog.h +2 -0
  115. package/src/headers/{18 → 22}/node_worker.h +7 -2
  116. package/src/headers/22/permission/child_process_permission.h +31 -0
  117. package/src/headers/22/permission/fs_permission.h +167 -0
  118. package/src/headers/22/permission/inspector_permission.h +31 -0
  119. package/src/headers/22/permission/permission.h +99 -0
  120. package/src/headers/22/permission/permission_base.h +60 -0
  121. package/src/headers/22/permission/wasi_permission.h +31 -0
  122. package/src/headers/22/permission/worker_permission.h +31 -0
  123. package/src/headers/{16 → 22}/req_wrap-inl.h +7 -6
  124. package/src/headers/{14 → 22}/spawn_sync.h +3 -3
  125. package/src/headers/{18 → 22}/stream_base-inl.h +0 -135
  126. package/src/headers/{18 → 22}/stream_base.h +35 -16
  127. package/src/headers/{18 → 22}/stream_pipe.h +3 -4
  128. package/src/headers/{16 → 22}/stream_wrap.h +2 -1
  129. package/src/headers/{18 → 22}/string_bytes.h +5 -14
  130. package/src/headers/{14 → 22}/string_decoder-inl.h +0 -6
  131. package/src/headers/{16 → 22}/string_decoder.h +0 -1
  132. package/src/headers/{18 → 22}/tcp_wrap.h +1 -1
  133. package/src/headers/{18 → 22}/threadpoolwork-inl.h +14 -1
  134. package/src/headers/22/timers.h +76 -0
  135. package/src/headers/{18 → 22}/tracing/trace_event.h +7 -5
  136. package/src/headers/{16 → 22}/udp_wrap.h +8 -5
  137. package/src/headers/22/undici_version.h +6 -0
  138. package/src/headers/{18 → 22}/util-inl.h +97 -127
  139. package/src/headers/{18 → 22}/util.h +293 -106
  140. package/src/headers/{18 → 22}/v8-fast-api-calls.h +103 -58
  141. package/src/headers/24/acorn_version.h +6 -0
  142. package/src/headers/24/addon_permission.h +31 -0
  143. package/src/headers/{16/tracing → 24}/agent.h +1 -1
  144. package/src/headers/24/aliased_buffer-inl.h +244 -0
  145. package/src/headers/24/aliased_buffer.h +206 -0
  146. package/src/headers/24/amaro_version.h +6 -0
  147. package/src/headers/24/application.h +165 -0
  148. package/src/headers/24/async_context_frame.h +33 -0
  149. package/src/headers/{14 → 24}/async_wrap-inl.h +8 -6
  150. package/src/headers/{16 → 24}/async_wrap.h +86 -88
  151. package/src/headers/{16 → 24}/base_object-inl.h +75 -119
  152. package/src/headers/{16 → 24}/base_object.h +84 -40
  153. package/src/headers/24/base_object_types.h +74 -0
  154. package/src/headers/24/bindingdata.h +272 -0
  155. package/src/headers/24/blob_serializer_deserializer-inl.h +385 -0
  156. package/src/headers/24/blob_serializer_deserializer.h +132 -0
  157. package/src/headers/{18 → 24}/callback_queue.h +1 -0
  158. package/src/headers/{18 → 24}/cares_wrap.h +68 -144
  159. package/src/headers/24/child_process_permission.h +31 -0
  160. package/src/headers/24/cid.h +127 -0
  161. package/src/headers/24/cjs_module_lexer_version.h +6 -0
  162. package/src/headers/24/cleanup_queue-inl.h +36 -0
  163. package/src/headers/24/cleanup_queue.h +79 -0
  164. package/src/headers/24/compile_cache.h +113 -0
  165. package/src/headers/24/cppgc_helpers-inl.h +65 -0
  166. package/src/headers/24/cppgc_helpers.h +162 -0
  167. package/src/headers/24/crypto/crypto_aes.h +97 -0
  168. package/src/headers/24/crypto/crypto_argon2.h +86 -0
  169. package/src/headers/{16 → 24}/crypto/crypto_bio.h +8 -9
  170. package/src/headers/24/crypto/crypto_chacha20_poly1305.h +64 -0
  171. package/src/headers/{18 → 24}/crypto/crypto_cipher.h +48 -58
  172. package/src/headers/{16 → 24}/crypto/crypto_clienthello-inl.h +2 -2
  173. package/src/headers/{16 → 24}/crypto/crypto_clienthello.h +1 -1
  174. package/src/headers/24/crypto/crypto_common.h +48 -0
  175. package/src/headers/{16 → 24}/crypto/crypto_context.h +46 -22
  176. package/src/headers/{18 → 24}/crypto/crypto_dh.h +27 -57
  177. package/src/headers/{18 → 24}/crypto/crypto_dsa.h +7 -34
  178. package/src/headers/{18 → 24}/crypto/crypto_ec.h +42 -49
  179. package/src/headers/{18 → 24}/crypto/crypto_hash.h +11 -11
  180. package/src/headers/{18 → 24}/crypto/crypto_hkdf.h +10 -14
  181. package/src/headers/{18 → 24}/crypto/crypto_hmac.h +11 -13
  182. package/src/headers/24/crypto/crypto_kem.h +113 -0
  183. package/src/headers/{18 → 24}/crypto/crypto_keygen.h +59 -74
  184. package/src/headers/{16 → 24}/crypto/crypto_keys.h +134 -154
  185. package/src/headers/24/crypto/crypto_ml_dsa.h +21 -0
  186. package/src/headers/{18 → 24}/crypto/crypto_pbkdf2.h +9 -11
  187. package/src/headers/{18 → 24}/crypto/crypto_random.h +28 -34
  188. package/src/headers/{18 → 24}/crypto/crypto_rsa.h +30 -35
  189. package/src/headers/{18 → 24}/crypto/crypto_scrypt.h +8 -10
  190. package/src/headers/{18 → 24}/crypto/crypto_sig.h +36 -48
  191. package/src/headers/{16 → 24}/crypto/crypto_tls.h +35 -18
  192. package/src/headers/{16 → 24}/crypto/crypto_util.h +183 -321
  193. package/src/headers/24/crypto/crypto_x509.h +140 -0
  194. package/src/headers/24/data.h +148 -0
  195. package/src/headers/{14 → 24}/debug_utils-inl.h +17 -8
  196. package/src/headers/{16 → 24}/debug_utils.h +31 -22
  197. package/src/headers/24/defs.h +254 -0
  198. package/src/headers/24/embedded_data.h +17 -0
  199. package/src/headers/24/encoding_binding.h +60 -0
  200. package/src/headers/24/endpoint.h +421 -0
  201. package/src/headers/{16 → 24}/env-inl.h +198 -540
  202. package/src/headers/24/env.h +1257 -0
  203. package/src/headers/24/env_properties.h +561 -0
  204. package/src/headers/24/fs_permission.h +167 -0
  205. package/src/headers/{16 → 24}/handle_wrap.h +4 -2
  206. package/src/headers/{16 → 24}/histogram-inl.h +34 -15
  207. package/src/headers/24/histogram.h +279 -0
  208. package/src/headers/24/http3.h +44 -0
  209. package/src/headers/{18 → 24}/inspector_agent.h +23 -2
  210. package/src/headers/24/inspector_permission.h +31 -0
  211. package/src/headers/{18 → 24}/inspector_profiler.h +15 -15
  212. package/src/headers/24/io_agent.h +30 -0
  213. package/src/headers/{18 → 24}/js_native_api.h +74 -30
  214. package/src/headers/{16 → 24}/js_native_api_types.h +61 -10
  215. package/src/headers/{18 → 24}/js_native_api_v8.h +205 -160
  216. package/src/headers/{16 → 24}/js_native_api_v8_internals.h +12 -6
  217. package/src/headers/24/json_parser.h +40 -0
  218. package/src/headers/{18 → 24}/json_utils.h +19 -8
  219. package/src/headers/24/logstream.h +81 -0
  220. package/src/headers/24/main_thread_interface.h +116 -0
  221. package/src/headers/{16 → 24}/memory_tracker-inl.h +115 -17
  222. package/src/headers/{16 → 24}/memory_tracker.h +58 -9
  223. package/src/headers/24/module_wrap.h +229 -0
  224. package/src/headers/24/ncrypto.h +1625 -0
  225. package/src/headers/24/network_agent.h +118 -0
  226. package/src/headers/24/network_inspector.h +45 -0
  227. package/src/headers/24/network_resource_manager.h +29 -0
  228. package/src/headers/{16 → 24}/node.h +560 -72
  229. package/src/headers/24/node_api.h +269 -0
  230. package/src/headers/24/node_api_internals.h +46 -0
  231. package/src/headers/{16 → 24}/node_api_types.h +13 -11
  232. package/src/headers/24/node_binding.h +163 -0
  233. package/src/headers/{16 → 24}/node_blob.h +46 -78
  234. package/src/headers/{16 → 24}/node_bob-inl.h +1 -2
  235. package/src/headers/{16 → 24}/node_bob.h +2 -6
  236. package/src/headers/{14 → 24}/node_buffer.h +1 -1
  237. package/src/headers/24/node_builtins.h +223 -0
  238. package/src/headers/24/node_config_file.h +65 -0
  239. package/src/headers/{14 → 24}/node_constants.h +3 -5
  240. package/src/headers/24/node_context_data.h +168 -0
  241. package/src/headers/24/node_contextify.h +261 -0
  242. package/src/headers/{18 → 24}/node_crypto.h +7 -2
  243. package/src/headers/24/node_debug.h +25 -0
  244. package/src/headers/24/node_dotenv.h +45 -0
  245. package/src/headers/{16 → 24}/node_errors.h +146 -32
  246. package/src/headers/24/node_exit_code.h +54 -0
  247. package/src/headers/{18 → 24}/node_external_reference.h +44 -22
  248. package/src/headers/{16 → 24}/node_file-inl.h +156 -50
  249. package/src/headers/{18 → 24}/node_file.h +129 -15
  250. package/src/headers/{16 → 24}/node_http2.h +53 -18
  251. package/src/headers/{14 → 24}/node_http2_state.h +35 -25
  252. package/src/headers/{16 → 24}/node_http_common-inl.h +8 -10
  253. package/src/headers/{16 → 24}/node_http_common.h +63 -59
  254. package/src/headers/{18 → 24}/node_i18n.h +5 -18
  255. package/src/headers/{16 → 24}/node_internals.h +131 -76
  256. package/src/headers/24/node_json.h +24 -0
  257. package/src/headers/24/node_large_page.h +34 -0
  258. package/src/headers/24/node_locks.h +180 -0
  259. package/src/headers/{14 → 24}/node_main_instance.h +15 -44
  260. package/src/headers/{16 → 24}/node_mem-inl.h +7 -7
  261. package/src/headers/{16 → 24}/node_messaging.h +27 -11
  262. package/src/headers/{16 → 24}/node_metadata.h +44 -2
  263. package/src/headers/24/node_modules.h +93 -0
  264. package/src/headers/{16 → 24}/node_options-inl.h +93 -46
  265. package/src/headers/{16 → 24}/node_options.h +251 -63
  266. package/src/headers/{16 → 24}/node_perf.h +6 -25
  267. package/src/headers/{16 → 24}/node_perf_common.h +23 -10
  268. package/src/headers/24/node_platform.h +286 -0
  269. package/src/headers/24/node_process.h +111 -0
  270. package/src/headers/24/node_realm-inl.h +153 -0
  271. package/src/headers/24/node_realm.h +236 -0
  272. package/src/headers/{18 → 24}/node_report.h +13 -17
  273. package/src/headers/{18 → 24}/node_revert.h +3 -3
  274. package/src/headers/{18 → 24}/node_root_certs.h +1010 -710
  275. package/src/headers/24/node_sea.h +74 -0
  276. package/src/headers/24/node_shadow_realm.h +46 -0
  277. package/src/headers/24/node_snapshot_builder.h +57 -0
  278. package/src/headers/24/node_snapshotable.h +174 -0
  279. package/src/headers/{16 → 24}/node_sockaddr-inl.h +11 -20
  280. package/src/headers/{16 → 24}/node_sockaddr.h +9 -20
  281. package/src/headers/24/node_sqlite.h +270 -0
  282. package/src/headers/{18 → 24}/node_stat_watcher.h +2 -1
  283. package/src/headers/24/node_string.h +101 -0
  284. package/src/headers/24/node_task_runner.h +92 -0
  285. package/src/headers/24/node_threadsafe_cow-inl.h +54 -0
  286. package/src/headers/24/node_threadsafe_cow.h +105 -0
  287. package/src/headers/24/node_union_bytes.h +81 -0
  288. package/src/headers/24/node_url.h +101 -0
  289. package/src/headers/24/node_url_pattern.h +118 -0
  290. package/src/headers/24/node_v8.h +77 -0
  291. package/src/headers/{18 → 24}/node_v8_platform-inl.h +22 -31
  292. package/src/headers/{18 → 24}/node_version.h +18 -6
  293. package/src/headers/24/node_wasi.h +185 -0
  294. package/src/headers/24/node_wasm_web_api.h +55 -0
  295. package/src/headers/{18 → 24}/node_watchdog.h +2 -0
  296. package/src/headers/24/node_webstorage.h +60 -0
  297. package/src/headers/{16 → 24}/node_worker.h +24 -10
  298. package/src/headers/24/packet.h +155 -0
  299. package/src/headers/24/path.h +33 -0
  300. package/src/headers/24/permission/addon_permission.h +31 -0
  301. package/src/headers/24/permission/child_process_permission.h +31 -0
  302. package/src/headers/24/permission/fs_permission.h +167 -0
  303. package/src/headers/24/permission/inspector_permission.h +31 -0
  304. package/src/headers/24/permission/permission.h +100 -0
  305. package/src/headers/24/permission/permission_base.h +65 -0
  306. package/src/headers/24/permission/wasi_permission.h +31 -0
  307. package/src/headers/24/permission/worker_permission.h +31 -0
  308. package/src/headers/24/permission.h +100 -0
  309. package/src/headers/24/permission_base.h +65 -0
  310. package/src/headers/24/preferredaddress.h +72 -0
  311. package/src/headers/24/protocol_helper.h +27 -0
  312. package/src/headers/24/queue.h +306 -0
  313. package/src/headers/{18 → 24}/req_wrap-inl.h +12 -6
  314. package/src/headers/{16 → 24}/req_wrap.h +3 -1
  315. package/src/headers/24/runtime_agent.h +41 -0
  316. package/src/headers/24/session.h +528 -0
  317. package/src/headers/24/sessionticket.h +108 -0
  318. package/src/headers/{18 → 24}/spawn_sync.h +9 -8
  319. package/src/headers/{16 → 24}/stream_base-inl.h +3 -133
  320. package/src/headers/{16 → 24}/stream_base.h +43 -19
  321. package/src/headers/{16 → 24}/stream_pipe.h +7 -4
  322. package/src/headers/{18 → 24}/stream_wrap.h +2 -3
  323. package/src/headers/24/streams.h +370 -0
  324. package/src/headers/{16 → 24}/string_bytes.h +8 -21
  325. package/src/headers/{18 → 24}/string_decoder-inl.h +0 -6
  326. package/src/headers/{18 → 24}/string_decoder.h +0 -1
  327. package/src/headers/24/target_agent.h +75 -0
  328. package/src/headers/{16 → 24}/tcp_wrap.h +3 -1
  329. package/src/headers/{14 → 24}/threadpoolwork-inl.h +14 -1
  330. package/src/headers/24/timer_wrap-inl.h +32 -0
  331. package/src/headers/{16 → 24}/timer_wrap.h +7 -4
  332. package/src/headers/24/timers.h +75 -0
  333. package/src/headers/24/tlscontext.h +228 -0
  334. package/src/headers/24/tokens.h +256 -0
  335. package/src/headers/{14/tracing → 24}/trace_event.h +7 -5
  336. package/src/headers/24/traced_value.h +129 -0
  337. package/src/headers/24/tracing_agent.h +43 -0
  338. package/src/headers/24/transportparams.h +166 -0
  339. package/src/headers/{16 → 24}/tty_wrap.h +0 -1
  340. package/src/headers/{18 → 24}/udp_wrap.h +8 -5
  341. package/src/headers/24/undici_version.h +6 -0
  342. package/src/headers/{16 → 24}/util-inl.h +267 -131
  343. package/src/headers/{16 → 24}/util.h +338 -146
  344. package/src/headers/24/v8-external-memory-accounter.h +60 -0
  345. package/src/headers/24/v8-fast-api-calls.h +819 -0
  346. package/src/headers/24/v8-inspector.h +426 -0
  347. package/src/headers/24/wasi_permission.h +31 -0
  348. package/src/headers/24/worker_agent.h +40 -0
  349. package/src/headers/24/worker_inspector.h +124 -0
  350. package/src/headers/24/worker_permission.h +31 -0
  351. package/src/headers/24/zlib_version.h +6 -0
  352. package/dist/bindings/cws_darwin_arm64_node83.node +0 -0
  353. package/dist/bindings/cws_darwin_arm64_node93.node +0 -0
  354. package/dist/bindings/cws_darwin_x64_node83.node +0 -0
  355. package/dist/bindings/cws_darwin_x64_node93.node +0 -0
  356. package/dist/bindings/cws_linux_arm64_node83.node +0 -0
  357. package/dist/bindings/cws_linux_arm64_node93.node +0 -0
  358. package/dist/bindings/cws_linux_x64_node83.node +0 -0
  359. package/dist/bindings/cws_linux_x64_node93.node +0 -0
  360. package/src/headers/14/aliased_buffer.h +0 -263
  361. package/src/headers/14/allocated_buffer-inl.h +0 -110
  362. package/src/headers/14/allocated_buffer.h +0 -73
  363. package/src/headers/14/async_wrap.h +0 -230
  364. package/src/headers/14/base64.h +0 -183
  365. package/src/headers/14/base_object-inl.h +0 -371
  366. package/src/headers/14/base_object.h +0 -281
  367. package/src/headers/14/callback_queue-inl.h +0 -97
  368. package/src/headers/14/callback_queue.h +0 -78
  369. package/src/headers/14/debug_utils.h +0 -181
  370. package/src/headers/14/env.h +0 -1388
  371. package/src/headers/14/handle_wrap.h +0 -117
  372. package/src/headers/14/histogram-inl.h +0 -83
  373. package/src/headers/14/histogram.h +0 -98
  374. package/src/headers/14/inspector_agent.h +0 -149
  375. package/src/headers/14/inspector_profiler.h +0 -137
  376. package/src/headers/14/js_native_api.h +0 -544
  377. package/src/headers/14/js_native_api_types.h +0 -143
  378. package/src/headers/14/js_native_api_v8.h +0 -301
  379. package/src/headers/14/js_native_api_v8_internals.h +0 -38
  380. package/src/headers/14/json_utils.h +0 -161
  381. package/src/headers/14/memory_tracker-inl.h +0 -355
  382. package/src/headers/14/module_wrap.h +0 -99
  383. package/src/headers/14/node.h +0 -1032
  384. package/src/headers/14/node_api.h +0 -255
  385. package/src/headers/14/node_api_types.h +0 -44
  386. package/src/headers/14/node_binding.h +0 -99
  387. package/src/headers/14/node_context_data.h +0 -44
  388. package/src/headers/14/node_contextify.h +0 -161
  389. package/src/headers/14/node_crypto.h +0 -865
  390. package/src/headers/14/node_crypto_bio.h +0 -195
  391. package/src/headers/14/node_crypto_clienthello-inl.h +0 -91
  392. package/src/headers/14/node_crypto_clienthello.h +0 -132
  393. package/src/headers/14/node_crypto_common.h +0 -138
  394. package/src/headers/14/node_crypto_groups.h +0 -415
  395. package/src/headers/14/node_dtrace.h +0 -86
  396. package/src/headers/14/node_errors.h +0 -214
  397. package/src/headers/14/node_file-inl.h +0 -306
  398. package/src/headers/14/node_file.h +0 -417
  399. package/src/headers/14/node_http2.h +0 -1191
  400. package/src/headers/14/node_http_common-inl.h +0 -194
  401. package/src/headers/14/node_http_common.h +0 -529
  402. package/src/headers/14/node_i18n.h +0 -144
  403. package/src/headers/14/node_internals.h +0 -405
  404. package/src/headers/14/node_mem.h +0 -45
  405. package/src/headers/14/node_messaging.h +0 -303
  406. package/src/headers/14/node_metadata.h +0 -109
  407. package/src/headers/14/node_mutex.h +0 -247
  408. package/src/headers/14/node_native_module.h +0 -101
  409. package/src/headers/14/node_native_module_env.h +0 -66
  410. package/src/headers/14/node_options-inl.h +0 -451
  411. package/src/headers/14/node_options.h +0 -481
  412. package/src/headers/14/node_perf.h +0 -181
  413. package/src/headers/14/node_perf_common.h +0 -97
  414. package/src/headers/14/node_platform.h +0 -189
  415. package/src/headers/14/node_process.h +0 -40
  416. package/src/headers/14/node_report.h +0 -47
  417. package/src/headers/14/node_revert.h +0 -72
  418. package/src/headers/14/node_root_certs.h +0 -3458
  419. package/src/headers/14/node_sockaddr-inl.h +0 -170
  420. package/src/headers/14/node_sockaddr.h +0 -123
  421. package/src/headers/14/node_stat_watcher.h +0 -70
  422. package/src/headers/14/node_union_bytes.h +0 -103
  423. package/src/headers/14/node_url.h +0 -188
  424. package/src/headers/14/node_version.h +0 -98
  425. package/src/headers/14/node_wasi.h +0 -108
  426. package/src/headers/14/node_win32_etw_provider-inl.h +0 -287
  427. package/src/headers/14/node_win32_etw_provider.h +0 -99
  428. package/src/headers/14/node_worker.h +0 -141
  429. package/src/headers/14/pipe_wrap.h +0 -78
  430. package/src/headers/14/req_wrap-inl.h +0 -170
  431. package/src/headers/14/req_wrap.h +0 -77
  432. package/src/headers/14/stream_base-inl.h +0 -275
  433. package/src/headers/14/stream_base.h +0 -434
  434. package/src/headers/14/stream_pipe.h +0 -73
  435. package/src/headers/14/stream_wrap.h +0 -130
  436. package/src/headers/14/string_bytes.h +0 -129
  437. package/src/headers/14/string_decoder.h +0 -50
  438. package/src/headers/14/string_search.h +0 -638
  439. package/src/headers/14/tcp_wrap.h +0 -101
  440. package/src/headers/14/tls_wrap.h +0 -222
  441. package/src/headers/14/tracing/agent.h +0 -195
  442. package/src/headers/14/tracing/traced_value.h +0 -70
  443. package/src/headers/14/tty_wrap.h +0 -64
  444. package/src/headers/14/udp_wrap.h +0 -227
  445. package/src/headers/14/util-inl.h +0 -566
  446. package/src/headers/14/util.h +0 -804
  447. package/src/headers/14/v8abbr.h +0 -124
  448. package/src/headers/16/aliased_buffer.h +0 -315
  449. package/src/headers/16/allocated_buffer-inl.h +0 -110
  450. package/src/headers/16/allocated_buffer.h +0 -73
  451. package/src/headers/16/async_wrap-inl.h +0 -94
  452. package/src/headers/16/base64-inl.h +0 -189
  453. package/src/headers/16/base64.h +0 -69
  454. package/src/headers/16/crypto/crypto_aes.h +0 -89
  455. package/src/headers/16/crypto/crypto_cipher.h +0 -286
  456. package/src/headers/16/crypto/crypto_common.h +0 -187
  457. package/src/headers/16/crypto/crypto_dh.h +0 -157
  458. package/src/headers/16/crypto/crypto_dsa.h +0 -76
  459. package/src/headers/16/crypto/crypto_ec.h +0 -169
  460. package/src/headers/16/crypto/crypto_groups.h +0 -415
  461. package/src/headers/16/crypto/crypto_hash.h +0 -89
  462. package/src/headers/16/crypto/crypto_hkdf.h +0 -66
  463. package/src/headers/16/crypto/crypto_hmac.h +0 -94
  464. package/src/headers/16/crypto/crypto_keygen.h +0 -301
  465. package/src/headers/16/crypto/crypto_pbkdf2.h +0 -76
  466. package/src/headers/16/crypto/crypto_random.h +0 -130
  467. package/src/headers/16/crypto/crypto_rsa.h +0 -141
  468. package/src/headers/16/crypto/crypto_scrypt.h +0 -87
  469. package/src/headers/16/crypto/crypto_sig.h +0 -167
  470. package/src/headers/16/crypto/crypto_spkac.h +0 -20
  471. package/src/headers/16/crypto/crypto_timing.h +0 -20
  472. package/src/headers/16/crypto/crypto_x509.h +0 -141
  473. package/src/headers/16/env.h +0 -1629
  474. package/src/headers/16/histogram.h +0 -216
  475. package/src/headers/16/js_native_api.h +0 -561
  476. package/src/headers/16/js_native_api_v8.h +0 -451
  477. package/src/headers/16/node.d +0 -315
  478. package/src/headers/16/node.stp +0 -146
  479. package/src/headers/16/node_api.h +0 -275
  480. package/src/headers/16/node_api_internals.h +0 -30
  481. package/src/headers/16/node_binding.h +0 -99
  482. package/src/headers/16/node_buffer.h +0 -92
  483. package/src/headers/16/node_constants.h +0 -84
  484. package/src/headers/16/node_context_data.h +0 -44
  485. package/src/headers/16/node_contextify.h +0 -196
  486. package/src/headers/16/node_dtrace.h +0 -86
  487. package/src/headers/16/node_external_reference.h +0 -129
  488. package/src/headers/16/node_main_instance.h +0 -103
  489. package/src/headers/16/node_native_module.h +0 -101
  490. package/src/headers/16/node_native_module_env.h +0 -68
  491. package/src/headers/16/node_platform.h +0 -192
  492. package/src/headers/16/node_process.h +0 -43
  493. package/src/headers/16/node_provider.d +0 -80
  494. package/src/headers/16/node_snapshotable.h +0 -137
  495. package/src/headers/16/node_union_bytes.h +0 -103
  496. package/src/headers/16/node_url.h +0 -205
  497. package/src/headers/16/node_v8.h +0 -41
  498. package/src/headers/16/node_v8_platform-inl.h +0 -194
  499. package/src/headers/16/node_wasi.h +0 -108
  500. package/src/headers/16/node_watchdog.h +0 -152
  501. package/src/headers/16/node_win32_etw_provider-inl.h +0 -288
  502. package/src/headers/16/node_win32_etw_provider.h +0 -99
  503. package/src/headers/16/spawn_sync.h +0 -242
  504. package/src/headers/16/string_decoder-inl.h +0 -37
  505. package/src/headers/16/string_search.h +0 -638
  506. package/src/headers/16/threadpoolwork-inl.h +0 -57
  507. package/src/headers/16/tracing/node_trace_buffer.h +0 -83
  508. package/src/headers/16/tracing/node_trace_writer.h +0 -75
  509. package/src/headers/16/tracing/trace_event.h +0 -720
  510. package/src/headers/16/tracing/traced_value.h +0 -70
  511. package/src/headers/16/v8abbr.h +0 -123
  512. package/src/headers/16/v8ustack.d +0 -695
  513. package/src/headers/18/aliased_buffer.h +0 -315
  514. package/src/headers/18/aliased_struct-inl.h +0 -54
  515. package/src/headers/18/aliased_struct.h +0 -63
  516. package/src/headers/18/base64-inl.h +0 -189
  517. package/src/headers/18/base64.h +0 -69
  518. package/src/headers/18/connect_wrap.h +0 -26
  519. package/src/headers/18/connection_wrap.h +0 -30
  520. package/src/headers/18/crypto/crypto_aes.h +0 -89
  521. package/src/headers/18/crypto/crypto_bio.h +0 -194
  522. package/src/headers/18/crypto/crypto_clienthello-inl.h +0 -90
  523. package/src/headers/18/crypto/crypto_common.h +0 -151
  524. package/src/headers/18/crypto/crypto_groups.h +0 -415
  525. package/src/headers/18/crypto/crypto_x509.h +0 -143
  526. package/src/headers/18/debug_utils-inl.h +0 -223
  527. package/src/headers/18/diagnosticfilename-inl.h +0 -33
  528. package/src/headers/18/env-inl.h +0 -1308
  529. package/src/headers/18/env.h +0 -1667
  530. package/src/headers/18/inspector_io.h +0 -78
  531. package/src/headers/18/inspector_socket.h +0 -60
  532. package/src/headers/18/inspector_socket_server.h +0 -110
  533. package/src/headers/18/js_stream.h +0 -52
  534. package/src/headers/18/memory_tracker.h +0 -284
  535. package/src/headers/18/module_wrap.h +0 -116
  536. package/src/headers/18/node_binding.h +0 -99
  537. package/src/headers/18/node_context_data.h +0 -44
  538. package/src/headers/18/node_contextify.h +0 -196
  539. package/src/headers/18/node_dir.h +0 -52
  540. package/src/headers/18/node_dtrace.h +0 -86
  541. package/src/headers/18/node_http2_state.h +0 -149
  542. package/src/headers/18/node_mem-inl.h +0 -112
  543. package/src/headers/18/node_native_module.h +0 -109
  544. package/src/headers/18/node_native_module_env.h +0 -71
  545. package/src/headers/18/node_object_wrap.h +0 -132
  546. package/src/headers/18/node_snapshot_builder.h +0 -43
  547. package/src/headers/18/node_snapshotable.h +0 -130
  548. package/src/headers/18/node_union_bytes.h +0 -103
  549. package/src/headers/18/node_url.h +0 -205
  550. package/src/headers/18/node_v8.h +0 -41
  551. package/src/headers/18/node_wasi.h +0 -108
  552. package/src/headers/18/node_win32_etw_provider-inl.h +0 -288
  553. package/src/headers/18/node_win32_etw_provider.h +0 -99
  554. package/src/headers/18/string_search.h +0 -638
  555. package/src/headers/18/tracing/node_trace_buffer.h +0 -83
  556. package/src/headers/18/tracing/node_trace_writer.h +0 -75
  557. package/src/headers/18/tracing/trace_event_common.h +0 -1109
  558. package/src/headers/18/tracing/traced_value.h +0 -70
  559. package/src/headers/18/v8abbr.h +0 -123
  560. /package/src/headers/{14 → 22}/aliased_struct-inl.h +0 -0
  561. /package/src/headers/{14 → 22}/aliased_struct.h +0 -0
  562. /package/src/headers/{16 → 22}/callback_queue-inl.h +0 -0
  563. /package/src/headers/{14 → 22}/connect_wrap.h +0 -0
  564. /package/src/headers/{14 → 22}/connection_wrap.h +0 -0
  565. /package/src/headers/{14 → 22}/diagnosticfilename-inl.h +0 -0
  566. /package/src/headers/{18 → 22}/histogram-inl.h +0 -0
  567. /package/src/headers/{14 → 22}/inspector_io.h +0 -0
  568. /package/src/headers/{14 → 22}/inspector_socket.h +0 -0
  569. /package/src/headers/{14 → 22}/inspector_socket_server.h +0 -0
  570. /package/src/headers/{14 → 22}/js_stream.h +0 -0
  571. /package/src/headers/{14 → 22}/node_dir.h +0 -0
  572. /package/src/headers/{14 → 22}/node_mem-inl.h +0 -0
  573. /package/src/headers/{16 → 22}/node_mem.h +0 -0
  574. /package/src/headers/{16 → 22}/node_mutex.h +0 -0
  575. /package/src/headers/{14 → 22}/node_object_wrap.h +0 -0
  576. /package/src/headers/{16 → 22}/node_process-inl.h +0 -0
  577. /package/src/headers/{18 → 22}/node_sockaddr-inl.h +0 -0
  578. /package/src/headers/{18 → 22}/node_wasm_web_api.h +0 -0
  579. /package/src/headers/{16 → 22}/pipe_wrap.h +0 -0
  580. /package/src/headers/{18 → 22}/req_wrap.h +0 -0
  581. /package/src/headers/{18 → 22}/timer_wrap-inl.h +0 -0
  582. /package/src/headers/{18 → 22}/timer_wrap.h +0 -0
  583. /package/src/headers/{18 → 22}/tracing/agent.h +0 -0
  584. /package/src/headers/{14 → 22}/tracing/trace_event_common.h +0 -0
  585. /package/src/headers/{18 → 22}/tty_wrap.h +0 -0
  586. /package/src/headers/{16 → 24}/aliased_struct-inl.h +0 -0
  587. /package/src/headers/{16 → 24}/aliased_struct.h +0 -0
  588. /package/src/headers/{18 → 24}/callback_queue-inl.h +0 -0
  589. /package/src/headers/{16 → 24}/connect_wrap.h +0 -0
  590. /package/src/headers/{16 → 24}/connection_wrap.h +0 -0
  591. /package/src/headers/{18 → 24}/crypto/crypto_spkac.h +0 -0
  592. /package/src/headers/{18 → 24}/crypto/crypto_timing.h +0 -0
  593. /package/src/headers/{16 → 24}/diagnosticfilename-inl.h +0 -0
  594. /package/src/headers/{16 → 24}/inspector_io.h +0 -0
  595. /package/src/headers/{16 → 24}/inspector_socket.h +0 -0
  596. /package/src/headers/{16 → 24}/inspector_socket_server.h +0 -0
  597. /package/src/headers/{16 → 24}/js_stream.h +0 -0
  598. /package/src/headers/{16 → 24}/node_dir.h +0 -0
  599. /package/src/headers/{18 → 24}/node_mem.h +0 -0
  600. /package/src/headers/{18 → 24}/node_mutex.h +0 -0
  601. /package/src/headers/{16 → 24}/node_object_wrap.h +0 -0
  602. /package/src/headers/{18 → 24}/node_process-inl.h +0 -0
  603. /package/src/headers/{14/tracing → 24}/node_trace_buffer.h +0 -0
  604. /package/src/headers/{14/tracing → 24}/node_trace_writer.h +0 -0
  605. /package/src/headers/{18 → 24}/pipe_wrap.h +0 -0
  606. /package/src/headers/{16/tracing → 24}/trace_event_common.h +0 -0
@@ -1,66 +0,0 @@
1
- #ifndef SRC_CRYPTO_CRYPTO_HKDF_H_
2
- #define SRC_CRYPTO_CRYPTO_HKDF_H_
3
-
4
- #if defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS
5
-
6
- #include "crypto/crypto_keys.h"
7
- #include "crypto/crypto_util.h"
8
- #include "allocated_buffer.h"
9
- #include "async_wrap.h"
10
- #include "base_object.h"
11
- #include "v8.h"
12
-
13
- namespace node {
14
- namespace crypto {
15
- static constexpr size_t kMaxDigestMultiplier = 255;
16
-
17
- struct HKDFConfig final : public MemoryRetainer {
18
- CryptoJobMode mode;
19
- size_t length;
20
- const EVP_MD* digest;
21
- std::shared_ptr<KeyObjectData> key;
22
- ByteSource salt;
23
- ByteSource info;
24
-
25
- HKDFConfig() = default;
26
-
27
- explicit HKDFConfig(HKDFConfig&& other) noexcept;
28
-
29
- HKDFConfig& operator=(HKDFConfig&& other) noexcept;
30
-
31
- void MemoryInfo(MemoryTracker* tracker) const override;
32
- SET_MEMORY_INFO_NAME(HKDFConfig)
33
- SET_SELF_SIZE(HKDFConfig)
34
- };
35
-
36
- struct HKDFTraits final {
37
- using AdditionalParameters = HKDFConfig;
38
- static constexpr const char* JobName = "HKDFJob";
39
- static constexpr AsyncWrap::ProviderType Provider =
40
- AsyncWrap::PROVIDER_DERIVEBITSREQUEST;
41
-
42
- static v8::Maybe<bool> AdditionalConfig(
43
- CryptoJobMode mode,
44
- const v8::FunctionCallbackInfo<v8::Value>& args,
45
- unsigned int offset,
46
- HKDFConfig* params);
47
-
48
- static bool DeriveBits(
49
- Environment* env,
50
- const HKDFConfig& params,
51
- ByteSource* out);
52
-
53
- static v8::Maybe<bool> EncodeOutput(
54
- Environment* env,
55
- const HKDFConfig& params,
56
- ByteSource* out,
57
- v8::Local<v8::Value>* result);
58
- };
59
-
60
- using HKDFJob = DeriveBitsJob<HKDFTraits>;
61
-
62
- } // namespace crypto
63
- } // namespace node
64
-
65
- #endif // defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS
66
- #endif // SRC_CRYPTO_CRYPTO_HKDF_H_
@@ -1,94 +0,0 @@
1
- #ifndef SRC_CRYPTO_CRYPTO_HMAC_H_
2
- #define SRC_CRYPTO_CRYPTO_HMAC_H_
3
-
4
- #if defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS
5
-
6
- #include "crypto/crypto_keys.h"
7
- #include "crypto/crypto_sig.h"
8
- #include "crypto/crypto_util.h"
9
- #include "allocated_buffer.h"
10
- #include "base_object.h"
11
- #include "env.h"
12
- #include "memory_tracker.h"
13
- #include "v8.h"
14
-
15
- namespace node {
16
- namespace crypto {
17
- class Hmac : public BaseObject {
18
- public:
19
- static void Initialize(Environment* env, v8::Local<v8::Object> target);
20
-
21
- void MemoryInfo(MemoryTracker* tracker) const override;
22
- SET_MEMORY_INFO_NAME(Hmac)
23
- SET_SELF_SIZE(Hmac)
24
-
25
- protected:
26
- void HmacInit(const char* hash_type, const char* key, int key_len);
27
- bool HmacUpdate(const char* data, size_t len);
28
-
29
- static void New(const v8::FunctionCallbackInfo<v8::Value>& args);
30
- static void HmacInit(const v8::FunctionCallbackInfo<v8::Value>& args);
31
- static void HmacUpdate(const v8::FunctionCallbackInfo<v8::Value>& args);
32
- static void HmacDigest(const v8::FunctionCallbackInfo<v8::Value>& args);
33
-
34
- Hmac(Environment* env, v8::Local<v8::Object> wrap);
35
-
36
- static void Sign(const v8::FunctionCallbackInfo<v8::Value>& args);
37
-
38
- private:
39
- HMACCtxPointer ctx_;
40
- };
41
-
42
- struct HmacConfig final : public MemoryRetainer {
43
- CryptoJobMode job_mode;
44
- SignConfiguration::Mode mode;
45
- std::shared_ptr<KeyObjectData> key;
46
- ByteSource data;
47
- ByteSource signature;
48
- const EVP_MD* digest;
49
-
50
- HmacConfig() = default;
51
-
52
- explicit HmacConfig(HmacConfig&& other) noexcept;
53
-
54
- HmacConfig& operator=(HmacConfig&& other) noexcept;
55
-
56
- void MemoryInfo(MemoryTracker* tracker) const override;
57
- SET_MEMORY_INFO_NAME(HmacConfig)
58
- SET_SELF_SIZE(HmacConfig)
59
- };
60
-
61
- struct HmacTraits final {
62
- using AdditionalParameters = HmacConfig;
63
- static constexpr const char* JobName = "HmacJob";
64
-
65
- // TODO(@jasnell): Sign request vs. Verify request
66
-
67
- static constexpr AsyncWrap::ProviderType Provider =
68
- AsyncWrap::PROVIDER_SIGNREQUEST;
69
-
70
- static v8::Maybe<bool> AdditionalConfig(
71
- CryptoJobMode mode,
72
- const v8::FunctionCallbackInfo<v8::Value>& args,
73
- unsigned int offset,
74
- HmacConfig* params);
75
-
76
- static bool DeriveBits(
77
- Environment* env,
78
- const HmacConfig& params,
79
- ByteSource* out);
80
-
81
- static v8::Maybe<bool> EncodeOutput(
82
- Environment* env,
83
- const HmacConfig& params,
84
- ByteSource* out,
85
- v8::Local<v8::Value>* result);
86
- };
87
-
88
- using HmacJob = DeriveBitsJob<HmacTraits>;
89
-
90
- } // namespace crypto
91
- } // namespace node
92
-
93
- #endif // defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS
94
- #endif // SRC_CRYPTO_CRYPTO_HMAC_H_
@@ -1,301 +0,0 @@
1
- #ifndef SRC_CRYPTO_CRYPTO_KEYGEN_H_
2
- #define SRC_CRYPTO_CRYPTO_KEYGEN_H_
3
-
4
- #if defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS
5
-
6
- #include "crypto/crypto_keys.h"
7
- #include "crypto/crypto_util.h"
8
- #include "allocated_buffer.h"
9
- #include "async_wrap.h"
10
- #include "base_object.h"
11
- #include "env.h"
12
- #include "memory_tracker.h"
13
- #include "v8.h"
14
-
15
- namespace node {
16
- namespace crypto {
17
- namespace Keygen {
18
- void Initialize(Environment* env, v8::Local<v8::Object> target);
19
- } // namespace Keygen
20
-
21
- enum class KeyGenJobStatus {
22
- OK,
23
- FAILED
24
- };
25
-
26
- // A Base CryptoJob for generating secret keys or key pairs.
27
- // The KeyGenTraits is largely responsible for the details of
28
- // the implementation, while KeyGenJob handles the common
29
- // mechanisms.
30
- template <typename KeyGenTraits>
31
- class KeyGenJob final : public CryptoJob<KeyGenTraits> {
32
- public:
33
- using AdditionalParams = typename KeyGenTraits::AdditionalParameters;
34
-
35
- static void New(const v8::FunctionCallbackInfo<v8::Value>& args) {
36
- Environment* env = Environment::GetCurrent(args);
37
- CHECK(args.IsConstructCall());
38
-
39
- CryptoJobMode mode = GetCryptoJobMode(args[0]);
40
-
41
- unsigned int offset = 1;
42
-
43
- AdditionalParams params;
44
- if (KeyGenTraits::AdditionalConfig(mode, args, &offset, &params)
45
- .IsNothing()) {
46
- // The KeyGenTraits::AdditionalConfig is responsible for
47
- // calling an appropriate THROW_CRYPTO_* variant reporting
48
- // whatever error caused initialization to fail.
49
- return;
50
- }
51
-
52
- new KeyGenJob<KeyGenTraits>(env, args.This(), mode, std::move(params));
53
- }
54
-
55
- static void Initialize(
56
- Environment* env,
57
- v8::Local<v8::Object> target) {
58
- CryptoJob<KeyGenTraits>::Initialize(New, env, target);
59
- }
60
-
61
- KeyGenJob(
62
- Environment* env,
63
- v8::Local<v8::Object> object,
64
- CryptoJobMode mode,
65
- AdditionalParams&& params)
66
- : CryptoJob<KeyGenTraits>(
67
- env,
68
- object,
69
- KeyGenTraits::Provider,
70
- mode,
71
- std::move(params)) {}
72
-
73
- void DoThreadPoolWork() override {
74
- // Make sure the CSPRNG is properly seeded so the results are secure.
75
- CheckEntropy();
76
-
77
- AdditionalParams* params = CryptoJob<KeyGenTraits>::params();
78
-
79
- switch (KeyGenTraits::DoKeyGen(AsyncWrap::env(), params)) {
80
- case KeyGenJobStatus::OK:
81
- status_ = KeyGenJobStatus::OK;
82
- // Success!
83
- break;
84
- case KeyGenJobStatus::FAILED: {
85
- CryptoErrorStore* errors = CryptoJob<KeyGenTraits>::errors();
86
- errors->Capture();
87
- if (errors->Empty())
88
- errors->Insert(NodeCryptoError::KEY_GENERATION_JOB_FAILED);
89
- }
90
- }
91
- }
92
-
93
- v8::Maybe<bool> ToResult(
94
- v8::Local<v8::Value>* err,
95
- v8::Local<v8::Value>* result) override {
96
- Environment* env = AsyncWrap::env();
97
- CryptoErrorStore* errors = CryptoJob<KeyGenTraits>::errors();
98
- AdditionalParams* params = CryptoJob<KeyGenTraits>::params();
99
-
100
- if (status_ == KeyGenJobStatus::OK) {
101
- v8::Maybe<bool> ret = KeyGenTraits::EncodeKey(env, params, result);
102
- if (ret.IsJust() && ret.FromJust()) {
103
- *err = Undefined(env->isolate());
104
- }
105
- return ret;
106
- }
107
-
108
- if (errors->Empty())
109
- errors->Capture();
110
- CHECK(!errors->Empty());
111
- *result = Undefined(env->isolate());
112
- return v8::Just(errors->ToException(env).ToLocal(err));
113
- }
114
-
115
- SET_SELF_SIZE(KeyGenJob)
116
-
117
- private:
118
- KeyGenJobStatus status_ = KeyGenJobStatus::FAILED;
119
- };
120
-
121
- // A Base KeyGenTraits for Key Pair generation algorithms.
122
- template <typename KeyPairAlgorithmTraits>
123
- struct KeyPairGenTraits final {
124
- using AdditionalParameters =
125
- typename KeyPairAlgorithmTraits::AdditionalParameters;
126
-
127
- static const AsyncWrap::ProviderType Provider =
128
- AsyncWrap::PROVIDER_KEYPAIRGENREQUEST;
129
- static constexpr const char* JobName = KeyPairAlgorithmTraits::JobName;
130
-
131
- static v8::Maybe<bool> AdditionalConfig(
132
- CryptoJobMode mode,
133
- const v8::FunctionCallbackInfo<v8::Value>& args,
134
- unsigned int* offset,
135
- AdditionalParameters* params) {
136
- // Notice that offset is a pointer. Each of the AdditionalConfig,
137
- // GetPublicKeyEncodingFromJs, and GetPrivateKeyEncodingFromJs
138
- // functions will update the value of the offset as they successfully
139
- // process input parameters. This allows each job to have a variable
140
- // number of input parameters specific to each job type.
141
- if (KeyPairAlgorithmTraits::AdditionalConfig(mode, args, offset, params)
142
- .IsNothing()) {
143
- return v8::Just(false);
144
- }
145
-
146
- params->public_key_encoding = ManagedEVPPKey::GetPublicKeyEncodingFromJs(
147
- args,
148
- offset,
149
- kKeyContextGenerate);
150
-
151
- auto private_key_encoding =
152
- ManagedEVPPKey::GetPrivateKeyEncodingFromJs(
153
- args,
154
- offset,
155
- kKeyContextGenerate);
156
-
157
- if (!private_key_encoding.IsEmpty())
158
- params->private_key_encoding = private_key_encoding.Release();
159
-
160
- return v8::Just(true);
161
- }
162
-
163
- static KeyGenJobStatus DoKeyGen(
164
- Environment* env,
165
- AdditionalParameters* params) {
166
- EVPKeyCtxPointer ctx = KeyPairAlgorithmTraits::Setup(params);
167
-
168
- if (!ctx)
169
- return KeyGenJobStatus::FAILED;
170
-
171
- // Generate the key
172
- EVP_PKEY* pkey = nullptr;
173
- if (!EVP_PKEY_keygen(ctx.get(), &pkey))
174
- return KeyGenJobStatus::FAILED;
175
-
176
- params->key = ManagedEVPPKey(EVPKeyPointer(pkey));
177
- return KeyGenJobStatus::OK;
178
- }
179
-
180
- static v8::Maybe<bool> EncodeKey(
181
- Environment* env,
182
- AdditionalParameters* params,
183
- v8::Local<v8::Value>* result) {
184
- v8::Local<v8::Value> keys[2];
185
- if (ManagedEVPPKey::ToEncodedPublicKey(
186
- env,
187
- std::move(params->key),
188
- params->public_key_encoding,
189
- &keys[0]).IsNothing() ||
190
- ManagedEVPPKey::ToEncodedPrivateKey(
191
- env,
192
- std::move(params->key),
193
- params->private_key_encoding,
194
- &keys[1]).IsNothing()) {
195
- return v8::Nothing<bool>();
196
- }
197
- *result = v8::Array::New(env->isolate(), keys, arraysize(keys));
198
- return v8::Just(true);
199
- }
200
- };
201
-
202
- struct SecretKeyGenConfig final : public MemoryRetainer {
203
- size_t length; // Expressed a a number of bits
204
- char* out = nullptr; // Placeholder for the generated key bytes
205
-
206
- void MemoryInfo(MemoryTracker* tracker) const override;
207
- SET_MEMORY_INFO_NAME(SecretKeyGenConfig)
208
- SET_SELF_SIZE(SecretKeyGenConfig)
209
- };
210
-
211
- struct SecretKeyGenTraits final {
212
- using AdditionalParameters = SecretKeyGenConfig;
213
- static const AsyncWrap::ProviderType Provider =
214
- AsyncWrap::PROVIDER_KEYGENREQUEST;
215
- static constexpr const char* JobName = "SecretKeyGenJob";
216
-
217
- static v8::Maybe<bool> AdditionalConfig(
218
- CryptoJobMode mode,
219
- const v8::FunctionCallbackInfo<v8::Value>& args,
220
- unsigned int* offset,
221
- SecretKeyGenConfig* params);
222
-
223
- static KeyGenJobStatus DoKeyGen(
224
- Environment* env,
225
- SecretKeyGenConfig* params);
226
-
227
- static v8::Maybe<bool> EncodeKey(
228
- Environment* env,
229
- SecretKeyGenConfig* params,
230
- v8::Local<v8::Value>* result);
231
- };
232
-
233
- template <typename AlgorithmParams>
234
- struct KeyPairGenConfig final : public MemoryRetainer {
235
- PublicKeyEncodingConfig public_key_encoding;
236
- PrivateKeyEncodingConfig private_key_encoding;
237
- ManagedEVPPKey key;
238
- AlgorithmParams params;
239
-
240
- KeyPairGenConfig() = default;
241
- ~KeyPairGenConfig() {
242
- Mutex::ScopedLock priv_lock(*key.mutex());
243
- }
244
-
245
- explicit KeyPairGenConfig(KeyPairGenConfig&& other) noexcept
246
- : public_key_encoding(other.public_key_encoding),
247
- private_key_encoding(
248
- std::forward<PrivateKeyEncodingConfig>(
249
- other.private_key_encoding)),
250
- key(std::move(other.key)),
251
- params(std::move(other.params)) {}
252
-
253
- KeyPairGenConfig& operator=(KeyPairGenConfig&& other) noexcept {
254
- if (&other == this) return *this;
255
- this->~KeyPairGenConfig();
256
- return *new (this) KeyPairGenConfig(std::move(other));
257
- }
258
-
259
- void MemoryInfo(MemoryTracker* tracker) const override {
260
- tracker->TrackField("key", key);
261
- if (!private_key_encoding.passphrase_.IsEmpty()) {
262
- tracker->TrackFieldWithSize("private_key_encoding.passphrase",
263
- private_key_encoding.passphrase_->size());
264
- }
265
- tracker->TrackField("params", params);
266
- }
267
-
268
- SET_MEMORY_INFO_NAME(KeyPairGenConfig)
269
- SET_SELF_SIZE(KeyPairGenConfig)
270
- };
271
-
272
- struct NidKeyPairParams final : public MemoryRetainer {
273
- int id;
274
- SET_NO_MEMORY_INFO()
275
- SET_MEMORY_INFO_NAME(NidKeyPairParams)
276
- SET_SELF_SIZE(NidKeyPairParams)
277
- };
278
-
279
- using NidKeyPairGenConfig = KeyPairGenConfig<NidKeyPairParams>;
280
-
281
- struct NidKeyPairGenTraits final {
282
- using AdditionalParameters = NidKeyPairGenConfig;
283
- static constexpr const char* JobName = "NidKeyPairGenJob";
284
-
285
- static EVPKeyCtxPointer Setup(NidKeyPairGenConfig* params);
286
-
287
- static v8::Maybe<bool> AdditionalConfig(
288
- CryptoJobMode mode,
289
- const v8::FunctionCallbackInfo<v8::Value>& args,
290
- unsigned int* offset,
291
- NidKeyPairGenConfig* params);
292
- };
293
-
294
- using NidKeyPairGenJob = KeyGenJob<KeyPairGenTraits<NidKeyPairGenTraits>>;
295
- using SecretKeyGenJob = KeyGenJob<SecretKeyGenTraits>;
296
- } // namespace crypto
297
- } // namespace node
298
-
299
- #endif // !defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS
300
- #endif // SRC_CRYPTO_CRYPTO_KEYGEN_H_
301
-
@@ -1,76 +0,0 @@
1
- #ifndef SRC_CRYPTO_CRYPTO_PBKDF2_H_
2
- #define SRC_CRYPTO_CRYPTO_PBKDF2_H_
3
-
4
- #if defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS
5
-
6
- #include "crypto/crypto_util.h"
7
- #include "async_wrap.h"
8
- #include "env.h"
9
- #include "memory_tracker.h"
10
- #include "v8.h"
11
-
12
- namespace node {
13
- namespace crypto {
14
- // PBKDF2 is a pseudo-random key derivation scheme defined
15
- // in https://tools.ietf.org/html/rfc8018
16
- //
17
- // The algorithm takes as input a password and salt
18
- // (both of which may, but should not be zero-length),
19
- // a number of iterations, a hash digest algorithm, and
20
- // an output length.
21
- //
22
- // The salt should be as unique as possible, and should
23
- // be at least 16 bytes in length.
24
- //
25
- // The iteration count should be as high as possible.
26
-
27
- struct PBKDF2Config final : public MemoryRetainer {
28
- CryptoJobMode mode;
29
- ByteSource pass;
30
- ByteSource salt;
31
- int32_t iterations;
32
- int32_t length;
33
- const EVP_MD* digest = nullptr;
34
-
35
- PBKDF2Config() = default;
36
-
37
- explicit PBKDF2Config(PBKDF2Config&& other) noexcept;
38
-
39
- PBKDF2Config& operator=(PBKDF2Config&& other) noexcept;
40
-
41
- void MemoryInfo(MemoryTracker* tracker) const override;
42
- SET_MEMORY_INFO_NAME(PBKDF2Config)
43
- SET_SELF_SIZE(PBKDF2Config)
44
- };
45
-
46
- struct PBKDF2Traits final {
47
- using AdditionalParameters = PBKDF2Config;
48
- static constexpr const char* JobName = "PBKDF2Job";
49
- static constexpr AsyncWrap::ProviderType Provider =
50
- AsyncWrap::PROVIDER_PBKDF2REQUEST;
51
-
52
- static v8::Maybe<bool> AdditionalConfig(
53
- CryptoJobMode mode,
54
- const v8::FunctionCallbackInfo<v8::Value>& args,
55
- unsigned int offset,
56
- PBKDF2Config* params);
57
-
58
- static bool DeriveBits(
59
- Environment* env,
60
- const PBKDF2Config& params,
61
- ByteSource* out);
62
-
63
- static v8::Maybe<bool> EncodeOutput(
64
- Environment* env,
65
- const PBKDF2Config& params,
66
- ByteSource* out,
67
- v8::Local<v8::Value>* result);
68
- };
69
-
70
- using PBKDF2Job = DeriveBitsJob<PBKDF2Traits>;
71
-
72
- } // namespace crypto
73
- } // namespace node
74
-
75
- #endif // defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS
76
- #endif // SRC_CRYPTO_CRYPTO_PBKDF2_H_
@@ -1,130 +0,0 @@
1
- #ifndef SRC_CRYPTO_CRYPTO_RANDOM_H_
2
- #define SRC_CRYPTO_CRYPTO_RANDOM_H_
3
-
4
- #if defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS
5
-
6
- #include "crypto/crypto_util.h"
7
- #include "base_object.h"
8
- #include "allocated_buffer.h"
9
- #include "env.h"
10
- #include "memory_tracker.h"
11
- #include "node_internals.h"
12
- #include "v8.h"
13
-
14
- namespace node {
15
- namespace crypto {
16
- struct RandomBytesConfig final : public MemoryRetainer {
17
- unsigned char* buffer;
18
- size_t size;
19
- SET_NO_MEMORY_INFO()
20
- SET_MEMORY_INFO_NAME(RandomBytesConfig)
21
- SET_SELF_SIZE(RandomBytesConfig)
22
- };
23
-
24
- struct RandomBytesTraits final {
25
- using AdditionalParameters = RandomBytesConfig;
26
- static constexpr const char* JobName = "RandomBytesJob";
27
- static constexpr AsyncWrap::ProviderType Provider =
28
- AsyncWrap::PROVIDER_RANDOMBYTESREQUEST;
29
-
30
- static v8::Maybe<bool> AdditionalConfig(
31
- CryptoJobMode mode,
32
- const v8::FunctionCallbackInfo<v8::Value>& args,
33
- unsigned int offset,
34
- RandomBytesConfig* params);
35
-
36
- static bool DeriveBits(
37
- Environment* env,
38
- const RandomBytesConfig& params,
39
- ByteSource* out_);
40
-
41
- static v8::Maybe<bool> EncodeOutput(
42
- Environment* env,
43
- const RandomBytesConfig& params,
44
- ByteSource* unused,
45
- v8::Local<v8::Value>* result);
46
- };
47
-
48
- using RandomBytesJob = DeriveBitsJob<RandomBytesTraits>;
49
-
50
- struct RandomPrimeConfig final : public MemoryRetainer {
51
- BignumPointer prime;
52
- BignumPointer rem;
53
- BignumPointer add;
54
- int bits;
55
- bool safe;
56
- void MemoryInfo(MemoryTracker* tracker) const override;
57
- SET_MEMORY_INFO_NAME(RandomPrimeConfig)
58
- SET_SELF_SIZE(RandomPrimeConfig)
59
- };
60
-
61
- struct RandomPrimeTraits final {
62
- using AdditionalParameters = RandomPrimeConfig;
63
- static constexpr const char* JobName = "RandomPrimeJob";
64
- static constexpr AsyncWrap::ProviderType Provider =
65
- AsyncWrap::PROVIDER_RANDOMPRIMEREQUEST;
66
-
67
- static v8::Maybe<bool> AdditionalConfig(
68
- CryptoJobMode mode,
69
- const v8::FunctionCallbackInfo<v8::Value>& args,
70
- unsigned int offset,
71
- RandomPrimeConfig* params);
72
-
73
- static bool DeriveBits(
74
- Environment* env,
75
- const RandomPrimeConfig& params,
76
- ByteSource* out_);
77
-
78
- static v8::Maybe<bool> EncodeOutput(
79
- Environment* env,
80
- const RandomPrimeConfig& params,
81
- ByteSource* unused,
82
- v8::Local<v8::Value>* result);
83
- };
84
-
85
- using RandomPrimeJob = DeriveBitsJob<RandomPrimeTraits>;
86
-
87
- struct CheckPrimeConfig final : public MemoryRetainer {
88
- BignumPointer candidate;
89
- int checks = 1;
90
-
91
- void MemoryInfo(MemoryTracker* tracker) const override;
92
- SET_MEMORY_INFO_NAME(CheckPrimeConfig)
93
- SET_SELF_SIZE(CheckPrimeConfig)
94
- };
95
-
96
- struct CheckPrimeTraits final {
97
- using AdditionalParameters = CheckPrimeConfig;
98
- static constexpr const char* JobName = "CheckPrimeJob";
99
-
100
- static constexpr AsyncWrap::ProviderType Provider =
101
- AsyncWrap::PROVIDER_CHECKPRIMEREQUEST;
102
-
103
- static v8::Maybe<bool> AdditionalConfig(
104
- CryptoJobMode mode,
105
- const v8::FunctionCallbackInfo<v8::Value>& args,
106
- unsigned int offset,
107
- CheckPrimeConfig* params);
108
-
109
- static bool DeriveBits(
110
- Environment* env,
111
- const CheckPrimeConfig& params,
112
- ByteSource* out);
113
-
114
- static v8::Maybe<bool> EncodeOutput(
115
- Environment* env,
116
- const CheckPrimeConfig& params,
117
- ByteSource* out,
118
- v8::Local<v8::Value>* result);
119
- };
120
-
121
- using CheckPrimeJob = DeriveBitsJob<CheckPrimeTraits>;
122
-
123
- namespace Random {
124
- void Initialize(Environment* env, v8::Local<v8::Object> target);
125
- } // namespace Random
126
- } // namespace crypto
127
- } // namespace node
128
-
129
- #endif // defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS
130
- #endif // SRC_CRYPTO_CRYPTO_RANDOM_H_