@encharm/cws 4.0.2 → 4.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.
Files changed (410) hide show
  1. package/CHANGELOG.md +3 -0
  2. package/LICENSE +3 -2
  3. package/README.md +9 -2
  4. package/binding.gyp +2 -2
  5. package/dist/bindings/cws_darwin_arm64_node108.node +0 -0
  6. package/dist/bindings/cws_darwin_arm64_node64.node +0 -0
  7. package/dist/bindings/cws_darwin_arm64_node72.node +0 -0
  8. package/dist/bindings/cws_darwin_arm64_node79.node +0 -0
  9. package/dist/bindings/cws_darwin_arm64_node83.node +0 -0
  10. package/dist/bindings/cws_darwin_arm64_node93.node +0 -0
  11. package/dist/bindings/cws_darwin_x64_node108.node +0 -0
  12. package/dist/bindings/cws_darwin_x64_node64.node +0 -0
  13. package/dist/bindings/cws_darwin_x64_node72.node +0 -0
  14. package/dist/bindings/cws_darwin_x64_node79.node +0 -0
  15. package/dist/bindings/cws_darwin_x64_node83.node +0 -0
  16. package/dist/bindings/cws_darwin_x64_node93.node +0 -0
  17. package/dist/bindings/cws_linux_x64_node108.node +0 -0
  18. package/dist/bindings/cws_linux_x64_node64.node +0 -0
  19. package/dist/bindings/cws_linux_x64_node72.node +0 -0
  20. package/dist/bindings/cws_linux_x64_node79.node +0 -0
  21. package/dist/bindings/cws_linux_x64_node83.node +0 -0
  22. package/dist/bindings/cws_linux_x64_node93.node +0 -0
  23. package/dist/bindings/cws_win32_x64_node108.node +0 -0
  24. package/dist/bindings/cws_win32_x64_node64.node +0 -0
  25. package/dist/bindings/cws_win32_x64_node72.node +0 -0
  26. package/dist/bindings/cws_win32_x64_node79.node +0 -0
  27. package/dist/bindings/cws_win32_x64_node83.node +0 -0
  28. package/dist/bindings/cws_win32_x64_node93.node +0 -0
  29. package/dist/client.d.ts +1 -0
  30. package/dist/client.js +4 -0
  31. package/dist/index.js +3 -2
  32. package/dist/server.js +1 -0
  33. package/dist/shared.js +2 -1
  34. package/package.json +1 -1
  35. package/src/Addon.cpp +1 -0
  36. package/src/Addon.h +35 -2
  37. package/src/HTTPSocket.cpp +1 -1
  38. package/src/LICENSE +4 -0
  39. package/src/Socket.h +12 -3
  40. package/src/headers/{13 → 18}/aliased_buffer.h +61 -9
  41. package/src/headers/18/aliased_struct-inl.h +54 -0
  42. package/src/headers/18/aliased_struct.h +63 -0
  43. package/src/headers/{12 → 18}/async_wrap-inl.h +0 -0
  44. package/src/headers/{12 → 18}/async_wrap.h +26 -2
  45. package/src/headers/{12/base64.h → 18/base64-inl.h} +78 -86
  46. package/src/headers/18/base64.h +69 -0
  47. package/src/headers/{12 → 18}/base_object-inl.h +46 -25
  48. package/src/headers/{12 → 18}/base_object.h +82 -17
  49. package/src/headers/{12 → 18}/callback_queue-inl.h +9 -9
  50. package/src/headers/{12 → 18}/callback_queue.h +13 -5
  51. package/src/headers/18/cares_wrap.h +523 -0
  52. package/src/headers/{12 → 18}/connect_wrap.h +0 -0
  53. package/src/headers/{12 → 18}/connection_wrap.h +0 -0
  54. package/src/headers/18/crypto/crypto_aes.h +89 -0
  55. package/src/headers/{13/node_crypto_bio.h → 18/crypto/crypto_bio.h} +3 -4
  56. package/src/headers/18/crypto/crypto_cipher.h +291 -0
  57. package/src/headers/{13/node_crypto_clienthello-inl.h → 18/crypto/crypto_clienthello-inl.h} +4 -5
  58. package/src/headers/{13/node_crypto_clienthello.h → 18/crypto/crypto_clienthello.h} +3 -4
  59. package/src/headers/{12/node_crypto_common.h → 18/crypto/crypto_common.h} +49 -36
  60. package/src/headers/18/crypto/crypto_context.h +147 -0
  61. package/src/headers/18/crypto/crypto_dh.h +156 -0
  62. package/src/headers/18/crypto/crypto_dsa.h +77 -0
  63. package/src/headers/18/crypto/crypto_ec.h +170 -0
  64. package/src/headers/{12/node_crypto_groups.h → 18/crypto/crypto_groups.h} +3 -3
  65. package/src/headers/18/crypto/crypto_hash.h +89 -0
  66. package/src/headers/18/crypto/crypto_hkdf.h +65 -0
  67. package/src/headers/18/crypto/crypto_hmac.h +94 -0
  68. package/src/headers/18/crypto/crypto_keygen.h +305 -0
  69. package/src/headers/18/crypto/crypto_keys.h +420 -0
  70. package/src/headers/18/crypto/crypto_pbkdf2.h +76 -0
  71. package/src/headers/18/crypto/crypto_random.h +130 -0
  72. package/src/headers/18/crypto/crypto_rsa.h +141 -0
  73. package/src/headers/18/crypto/crypto_scrypt.h +87 -0
  74. package/src/headers/18/crypto/crypto_sig.h +168 -0
  75. package/src/headers/18/crypto/crypto_spkac.h +21 -0
  76. package/src/headers/18/crypto/crypto_timing.h +20 -0
  77. package/src/headers/{12/tls_wrap.h → 18/crypto/crypto_tls.h} +137 -66
  78. package/src/headers/18/crypto/crypto_util.h +791 -0
  79. package/src/headers/18/crypto/crypto_x509.h +143 -0
  80. package/src/headers/{12 → 18}/debug_utils-inl.h +0 -0
  81. package/src/headers/{13 → 18}/debug_utils.h +7 -4
  82. package/src/headers/{12 → 18}/diagnosticfilename-inl.h +0 -0
  83. package/src/headers/{12 → 18}/env-inl.h +397 -304
  84. package/src/headers/{12 → 18}/env.h +397 -172
  85. package/src/headers/{12 → 18}/handle_wrap.h +7 -3
  86. package/src/headers/18/histogram-inl.h +107 -0
  87. package/src/headers/18/histogram.h +239 -0
  88. package/src/headers/{13 → 18}/inspector_agent.h +4 -7
  89. package/src/headers/{12 → 18}/inspector_io.h +0 -0
  90. package/src/headers/{13 → 18}/inspector_profiler.h +17 -5
  91. package/src/headers/{12 → 18}/inspector_socket.h +0 -0
  92. package/src/headers/{12 → 18}/inspector_socket_server.h +0 -0
  93. package/src/headers/18/js_native_api.h +571 -0
  94. package/src/headers/{13 → 18}/js_native_api_types.h +30 -7
  95. package/src/headers/{12 → 18}/js_native_api_v8.h +220 -83
  96. package/src/headers/{12 → 18}/js_native_api_v8_internals.h +6 -5
  97. package/src/headers/{12 → 18}/js_stream.h +0 -0
  98. package/src/headers/{12 → 18}/json_utils.h +0 -0
  99. package/src/headers/{13 → 18}/memory_tracker-inl.h +6 -5
  100. package/src/headers/{13 → 18}/memory_tracker.h +0 -7
  101. package/src/headers/{13 → 18}/module_wrap.h +24 -7
  102. package/src/headers/{13 → 18}/node.h +329 -68
  103. package/src/headers/18/node_api.h +288 -0
  104. package/src/headers/18/node_api_internals.h +38 -0
  105. package/src/headers/{12 → 18}/node_api_types.h +12 -9
  106. package/src/headers/{12 → 18}/node_binding.h +0 -0
  107. package/src/headers/18/node_blob.h +191 -0
  108. package/src/headers/18/node_bob-inl.h +37 -0
  109. package/src/headers/18/node_bob.h +111 -0
  110. package/src/headers/{13 → 18}/node_buffer.h +0 -0
  111. package/src/headers/{13 → 18}/node_constants.h +5 -1
  112. package/src/headers/{12 → 18}/node_context_data.h +5 -0
  113. package/src/headers/{12 → 18}/node_contextify.h +37 -2
  114. package/src/headers/{10/node_javascript.h → 18/node_crypto.h} +30 -14
  115. package/src/headers/{12 → 18}/node_dir.h +0 -0
  116. package/src/headers/{12 → 18}/node_dtrace.h +0 -0
  117. package/src/headers/{12 → 18}/node_errors.h +90 -24
  118. package/src/headers/18/node_external_reference.h +145 -0
  119. package/src/headers/{13 → 18}/node_file-inl.h +38 -21
  120. package/src/headers/{12 → 18}/node_file.h +74 -13
  121. package/src/headers/{13 → 18}/node_http2.h +365 -269
  122. package/src/headers/{12 → 18}/node_http2_state.h +40 -50
  123. package/src/headers/{13 → 18}/node_http_common-inl.h +25 -5
  124. package/src/headers/{13 → 18}/node_http_common.h +24 -20
  125. package/src/headers/{13 → 18}/node_i18n.h +2 -1
  126. package/src/headers/{12 → 18}/node_internals.h +39 -41
  127. package/src/headers/{12 → 18}/node_main_instance.h +15 -18
  128. package/src/headers/{12 → 18}/node_mem-inl.h +0 -0
  129. package/src/headers/{12 → 18}/node_mem.h +1 -1
  130. package/src/headers/{13 → 18}/node_messaging.h +170 -23
  131. package/src/headers/{12 → 18}/node_metadata.h +17 -4
  132. package/src/headers/{12 → 18}/node_mutex.h +77 -1
  133. package/src/headers/{12 → 18}/node_native_module.h +11 -1
  134. package/src/headers/{12 → 18}/node_native_module_env.h +14 -8
  135. package/src/headers/{12 → 18}/node_object_wrap.h +0 -0
  136. package/src/headers/{13 → 18}/node_options-inl.h +51 -21
  137. package/src/headers/{13 → 18}/node_options.h +46 -14
  138. package/src/headers/18/node_perf.h +168 -0
  139. package/src/headers/{12 → 18}/node_perf_common.h +16 -22
  140. package/src/headers/{12 → 18}/node_platform.h +21 -16
  141. package/src/headers/18/node_process-inl.h +26 -0
  142. package/src/headers/18/node_process.h +97 -0
  143. package/src/headers/{13 → 18}/node_report.h +2 -2
  144. package/src/headers/{13 → 18}/node_revert.h +10 -0
  145. package/src/headers/{12 → 18}/node_root_certs.h +439 -651
  146. package/src/headers/18/node_snapshot_builder.h +43 -0
  147. package/src/headers/18/node_snapshotable.h +130 -0
  148. package/src/headers/{12 → 18}/node_sockaddr-inl.h +100 -4
  149. package/src/headers/18/node_sockaddr.h +405 -0
  150. package/src/headers/{13 → 18}/node_stat_watcher.h +7 -1
  151. package/src/headers/{12 → 18}/node_union_bytes.h +0 -0
  152. package/src/headers/{13 → 18}/node_url.h +18 -1
  153. package/src/headers/18/node_v8.h +41 -0
  154. package/src/headers/{12 → 18}/node_v8_platform-inl.h +10 -0
  155. package/src/headers/{13 → 18}/node_version.h +7 -7
  156. package/src/headers/{12 → 18}/node_wasi.h +0 -0
  157. package/src/headers/18/node_wasm_web_api.h +55 -0
  158. package/src/headers/{13 → 18}/node_watchdog.h +0 -0
  159. package/src/headers/{10 → 18}/node_win32_etw_provider-inl.h +7 -6
  160. package/src/headers/{10 → 18}/node_win32_etw_provider.h +0 -0
  161. package/src/headers/{13 → 18}/node_worker.h +24 -17
  162. package/src/headers/{12 → 18}/pipe_wrap.h +2 -0
  163. package/src/headers/{12 → 18}/req_wrap-inl.h +0 -0
  164. package/src/headers/{13 → 18}/req_wrap.h +1 -1
  165. package/src/headers/{12 → 18}/spawn_sync.h +0 -0
  166. package/src/headers/{13 → 18}/stream_base-inl.h +58 -22
  167. package/src/headers/{13 → 18}/stream_base.h +29 -3
  168. package/src/headers/{13 → 18}/stream_pipe.h +8 -3
  169. package/src/headers/{12 → 18}/stream_wrap.h +4 -1
  170. package/src/headers/{13 → 18}/string_bytes.h +0 -7
  171. package/src/headers/{12 → 18}/string_decoder-inl.h +0 -0
  172. package/src/headers/{10 → 18}/string_decoder.h +0 -0
  173. package/src/headers/{13 → 18}/string_search.h +2 -2
  174. package/src/headers/{12 → 18}/tcp_wrap.h +4 -0
  175. package/src/headers/{12 → 18}/threadpoolwork-inl.h +0 -0
  176. package/src/headers/18/timer_wrap-inl.h +32 -0
  177. package/src/headers/18/timer_wrap.h +85 -0
  178. package/src/headers/{13 → 18}/tracing/agent.h +1 -1
  179. package/src/headers/{12 → 18}/tracing/node_trace_buffer.h +0 -0
  180. package/src/headers/{12 → 18}/tracing/node_trace_writer.h +0 -0
  181. package/src/headers/{13 → 18}/tracing/trace_event.h +23 -13
  182. package/src/headers/{12 → 18}/tracing/trace_event_common.h +0 -0
  183. package/src/headers/{12 → 18}/tracing/traced_value.h +0 -0
  184. package/src/headers/{13 → 18}/tty_wrap.h +2 -1
  185. package/src/headers/{13 → 18}/udp_wrap.h +5 -0
  186. package/src/headers/{13 → 18}/util-inl.h +69 -15
  187. package/src/headers/{13 → 18}/util.h +93 -31
  188. package/src/headers/18/v8-fast-api-calls.h +939 -0
  189. package/src/headers/{12 → 18}/v8abbr.h +2 -2
  190. package/dist/bindings/cws_darwin_64.node +0 -0
  191. package/dist/bindings/cws_darwin_72.node +0 -0
  192. package/dist/bindings/cws_darwin_79.node +0 -0
  193. package/dist/bindings/cws_darwin_83.node +0 -0
  194. package/dist/bindings/cws_darwin_93.node +0 -0
  195. package/dist/bindings/cws_linux_64.node +0 -0
  196. package/dist/bindings/cws_linux_72.node +0 -0
  197. package/dist/bindings/cws_linux_79.node +0 -0
  198. package/dist/bindings/cws_linux_83.node +0 -0
  199. package/dist/bindings/cws_linux_93.node +0 -0
  200. package/dist/bindings/cws_win32_64.node +0 -0
  201. package/dist/bindings/cws_win32_72.node +0 -0
  202. package/dist/bindings/cws_win32_79.node +0 -0
  203. package/dist/bindings/cws_win32_83.node +0 -0
  204. package/dist/bindings/cws_win32_93.node +0 -0
  205. package/src/headers/10/aliased_buffer.h +0 -241
  206. package/src/headers/10/async_wrap-inl.h +0 -106
  207. package/src/headers/10/async_wrap.h +0 -218
  208. package/src/headers/10/base64.h +0 -197
  209. package/src/headers/10/base_object-inl.h +0 -132
  210. package/src/headers/10/base_object.h +0 -115
  211. package/src/headers/10/connect_wrap.h +0 -28
  212. package/src/headers/10/connection_wrap.h +0 -30
  213. package/src/headers/10/debug_utils.h +0 -128
  214. package/src/headers/10/env-inl.h +0 -906
  215. package/src/headers/10/env.h +0 -1046
  216. package/src/headers/10/handle_wrap.h +0 -114
  217. package/src/headers/10/inspector_agent.h +0 -137
  218. package/src/headers/10/inspector_io.h +0 -97
  219. package/src/headers/10/inspector_socket.h +0 -59
  220. package/src/headers/10/inspector_socket_server.h +0 -104
  221. package/src/headers/10/js_stream.h +0 -57
  222. package/src/headers/10/memory_tracker-inl.h +0 -318
  223. package/src/headers/10/memory_tracker.h +0 -246
  224. package/src/headers/10/module_wrap.h +0 -100
  225. package/src/headers/10/node.h +0 -863
  226. package/src/headers/10/node_api.h +0 -752
  227. package/src/headers/10/node_api_types.h +0 -171
  228. package/src/headers/10/node_buffer.h +0 -90
  229. package/src/headers/10/node_code_cache.h +0 -17
  230. package/src/headers/10/node_constants.h +0 -74
  231. package/src/headers/10/node_context_data.h +0 -39
  232. package/src/headers/10/node_contextify.h +0 -141
  233. package/src/headers/10/node_counters.h +0 -59
  234. package/src/headers/10/node_crypto.h +0 -699
  235. package/src/headers/10/node_crypto_bio.h +0 -177
  236. package/src/headers/10/node_crypto_clienthello-inl.h +0 -92
  237. package/src/headers/10/node_crypto_clienthello.h +0 -131
  238. package/src/headers/10/node_crypto_groups.h +0 -416
  239. package/src/headers/10/node_dtrace.h +0 -84
  240. package/src/headers/10/node_errors.h +0 -118
  241. package/src/headers/10/node_file.h +0 -373
  242. package/src/headers/10/node_http2.h +0 -1304
  243. package/src/headers/10/node_http2_state.h +0 -158
  244. package/src/headers/10/node_i18n.h +0 -69
  245. package/src/headers/10/node_internals.h +0 -952
  246. package/src/headers/10/node_messaging.h +0 -219
  247. package/src/headers/10/node_mutex.h +0 -191
  248. package/src/headers/10/node_object_wrap.h +0 -130
  249. package/src/headers/10/node_options-inl.h +0 -444
  250. package/src/headers/10/node_options.h +0 -397
  251. package/src/headers/10/node_perf.h +0 -134
  252. package/src/headers/10/node_perf_common.h +0 -96
  253. package/src/headers/10/node_persistent.h +0 -30
  254. package/src/headers/10/node_platform.h +0 -170
  255. package/src/headers/10/node_revert.h +0 -75
  256. package/src/headers/10/node_root_certs.h +0 -3393
  257. package/src/headers/10/node_stat_watcher.h +0 -65
  258. package/src/headers/10/node_url.h +0 -193
  259. package/src/headers/10/node_version.h +0 -120
  260. package/src/headers/10/node_watchdog.h +0 -114
  261. package/src/headers/10/node_win32_perfctr_provider.h +0 -58
  262. package/src/headers/10/node_worker.h +0 -94
  263. package/src/headers/10/pipe_wrap.h +0 -76
  264. package/src/headers/10/req_wrap-inl.h +0 -166
  265. package/src/headers/10/req_wrap.h +0 -61
  266. package/src/headers/10/sharedarraybuffer_metadata.h +0 -67
  267. package/src/headers/10/spawn_sync.h +0 -240
  268. package/src/headers/10/stream_base-inl.h +0 -458
  269. package/src/headers/10/stream_base.h +0 -378
  270. package/src/headers/10/stream_pipe.h +0 -72
  271. package/src/headers/10/stream_wrap.h +0 -130
  272. package/src/headers/10/string_bytes.h +0 -126
  273. package/src/headers/10/string_decoder-inl.h +0 -38
  274. package/src/headers/10/string_search.h +0 -620
  275. package/src/headers/10/tcp_wrap.h +0 -99
  276. package/src/headers/10/tls_wrap.h +0 -195
  277. package/src/headers/10/tracing/agent.h +0 -178
  278. package/src/headers/10/tracing/node_trace_buffer.h +0 -83
  279. package/src/headers/10/tracing/node_trace_writer.h +0 -75
  280. package/src/headers/10/tracing/trace_event.h +0 -706
  281. package/src/headers/10/tracing/trace_event_common.h +0 -1102
  282. package/src/headers/10/tracing/traced_value.h +0 -68
  283. package/src/headers/10/tty_wrap.h +0 -63
  284. package/src/headers/10/udp_wrap.h +0 -102
  285. package/src/headers/10/util-inl.h +0 -459
  286. package/src/headers/10/util.h +0 -508
  287. package/src/headers/10/v8abbr.h +0 -121
  288. package/src/headers/12/aliased_buffer.h +0 -263
  289. package/src/headers/12/debug_utils.h +0 -181
  290. package/src/headers/12/histogram-inl.h +0 -83
  291. package/src/headers/12/histogram.h +0 -98
  292. package/src/headers/12/http_parser_adaptor.h +0 -24
  293. package/src/headers/12/inspector_agent.h +0 -147
  294. package/src/headers/12/inspector_profiler.h +0 -137
  295. package/src/headers/12/js_native_api.h +0 -541
  296. package/src/headers/12/js_native_api_types.h +0 -139
  297. package/src/headers/12/memory_tracker-inl.h +0 -339
  298. package/src/headers/12/memory_tracker.h +0 -283
  299. package/src/headers/12/module_wrap.h +0 -99
  300. package/src/headers/12/node.h +0 -887
  301. package/src/headers/12/node_api.h +0 -239
  302. package/src/headers/12/node_buffer.h +0 -92
  303. package/src/headers/12/node_constants.h +0 -80
  304. package/src/headers/12/node_crypto.h +0 -800
  305. package/src/headers/12/node_crypto_bio.h +0 -195
  306. package/src/headers/12/node_crypto_clienthello-inl.h +0 -91
  307. package/src/headers/12/node_crypto_clienthello.h +0 -132
  308. package/src/headers/12/node_file-inl.h +0 -289
  309. package/src/headers/12/node_http2.h +0 -1311
  310. package/src/headers/12/node_http_parser_impl.h +0 -994
  311. package/src/headers/12/node_i18n.h +0 -144
  312. package/src/headers/12/node_messaging.h +0 -227
  313. package/src/headers/12/node_options-inl.h +0 -447
  314. package/src/headers/12/node_options.h +0 -479
  315. package/src/headers/12/node_perf.h +0 -181
  316. package/src/headers/12/node_process.h +0 -41
  317. package/src/headers/12/node_report.h +0 -47
  318. package/src/headers/12/node_revert.h +0 -78
  319. package/src/headers/12/node_sockaddr.h +0 -123
  320. package/src/headers/12/node_stat_watcher.h +0 -66
  321. package/src/headers/12/node_url.h +0 -188
  322. package/src/headers/12/node_version.h +0 -98
  323. package/src/headers/12/node_watchdog.h +0 -152
  324. package/src/headers/12/node_win32_etw_provider-inl.h +0 -287
  325. package/src/headers/12/node_win32_etw_provider.h +0 -99
  326. package/src/headers/12/node_worker.h +0 -142
  327. package/src/headers/12/req_wrap.h +0 -77
  328. package/src/headers/12/sharedarraybuffer_metadata.h +0 -72
  329. package/src/headers/12/stream_base-inl.h +0 -323
  330. package/src/headers/12/stream_base.h +0 -431
  331. package/src/headers/12/stream_pipe.h +0 -72
  332. package/src/headers/12/string_bytes.h +0 -142
  333. package/src/headers/12/string_decoder.h +0 -50
  334. package/src/headers/12/string_search.h +0 -638
  335. package/src/headers/12/tracing/agent.h +0 -195
  336. package/src/headers/12/tracing/trace_event.h +0 -710
  337. package/src/headers/12/tty_wrap.h +0 -64
  338. package/src/headers/12/udp_wrap.h +0 -222
  339. package/src/headers/12/util-inl.h +0 -529
  340. package/src/headers/12/util.h +0 -765
  341. package/src/headers/13/async_wrap-inl.h +0 -94
  342. package/src/headers/13/async_wrap.h +0 -224
  343. package/src/headers/13/base64.h +0 -197
  344. package/src/headers/13/base_object-inl.h +0 -353
  345. package/src/headers/13/base_object.h +0 -229
  346. package/src/headers/13/connect_wrap.h +0 -26
  347. package/src/headers/13/connection_wrap.h +0 -30
  348. package/src/headers/13/debug_utils-inl.h +0 -223
  349. package/src/headers/13/diagnosticfilename-inl.h +0 -33
  350. package/src/headers/13/env-inl.h +0 -1293
  351. package/src/headers/13/env.h +0 -1469
  352. package/src/headers/13/handle_wrap.h +0 -117
  353. package/src/headers/13/histogram-inl.h +0 -83
  354. package/src/headers/13/histogram.h +0 -98
  355. package/src/headers/13/inspector_io.h +0 -78
  356. package/src/headers/13/inspector_socket.h +0 -60
  357. package/src/headers/13/inspector_socket_server.h +0 -110
  358. package/src/headers/13/js_native_api.h +0 -541
  359. package/src/headers/13/js_native_api_v8.h +0 -303
  360. package/src/headers/13/js_native_api_v8_internals.h +0 -38
  361. package/src/headers/13/js_stream.h +0 -52
  362. package/src/headers/13/json_utils.h +0 -160
  363. package/src/headers/13/node_api.h +0 -239
  364. package/src/headers/13/node_api_types.h +0 -44
  365. package/src/headers/13/node_binding.h +0 -99
  366. package/src/headers/13/node_context_data.h +0 -39
  367. package/src/headers/13/node_contextify.h +0 -161
  368. package/src/headers/13/node_crypto.h +0 -800
  369. package/src/headers/13/node_crypto_common.h +0 -138
  370. package/src/headers/13/node_crypto_groups.h +0 -415
  371. package/src/headers/13/node_dir.h +0 -52
  372. package/src/headers/13/node_dtrace.h +0 -86
  373. package/src/headers/13/node_errors.h +0 -210
  374. package/src/headers/13/node_file.h +0 -364
  375. package/src/headers/13/node_http2_state.h +0 -144
  376. package/src/headers/13/node_internals.h +0 -405
  377. package/src/headers/13/node_main_instance.h +0 -97
  378. package/src/headers/13/node_mem-inl.h +0 -112
  379. package/src/headers/13/node_mem.h +0 -41
  380. package/src/headers/13/node_metadata.h +0 -109
  381. package/src/headers/13/node_mutex.h +0 -247
  382. package/src/headers/13/node_native_module.h +0 -99
  383. package/src/headers/13/node_native_module_env.h +0 -65
  384. package/src/headers/13/node_object_wrap.h +0 -132
  385. package/src/headers/13/node_perf.h +0 -181
  386. package/src/headers/13/node_perf_common.h +0 -97
  387. package/src/headers/13/node_platform.h +0 -190
  388. package/src/headers/13/node_process.h +0 -41
  389. package/src/headers/13/node_root_certs.h +0 -3424
  390. package/src/headers/13/node_sockaddr-inl.h +0 -170
  391. package/src/headers/13/node_sockaddr.h +0 -123
  392. package/src/headers/13/node_union_bytes.h +0 -103
  393. package/src/headers/13/node_v8_platform-inl.h +0 -184
  394. package/src/headers/13/node_wasi.h +0 -108
  395. package/src/headers/13/node_win32_etw_provider-inl.h +0 -287
  396. package/src/headers/13/node_win32_etw_provider.h +0 -99
  397. package/src/headers/13/pipe_wrap.h +0 -78
  398. package/src/headers/13/req_wrap-inl.h +0 -170
  399. package/src/headers/13/spawn_sync.h +0 -242
  400. package/src/headers/13/stream_wrap.h +0 -130
  401. package/src/headers/13/string_decoder-inl.h +0 -37
  402. package/src/headers/13/string_decoder.h +0 -50
  403. package/src/headers/13/tcp_wrap.h +0 -101
  404. package/src/headers/13/threadpoolwork-inl.h +0 -57
  405. package/src/headers/13/tls_wrap.h +0 -221
  406. package/src/headers/13/tracing/node_trace_buffer.h +0 -83
  407. package/src/headers/13/tracing/node_trace_writer.h +0 -75
  408. package/src/headers/13/tracing/trace_event_common.h +0 -1109
  409. package/src/headers/13/tracing/traced_value.h +0 -70
  410. package/src/headers/13/v8abbr.h +0 -124
@@ -0,0 +1,141 @@
1
+ #ifndef SRC_CRYPTO_CRYPTO_RSA_H_
2
+ #define SRC_CRYPTO_CRYPTO_RSA_H_
3
+
4
+ #if defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS
5
+
6
+ #include "crypto/crypto_cipher.h"
7
+ #include "crypto/crypto_keygen.h"
8
+ #include "crypto/crypto_keys.h"
9
+ #include "crypto/crypto_util.h"
10
+ #include "env.h"
11
+ #include "memory_tracker.h"
12
+ #include "v8.h"
13
+
14
+ namespace node {
15
+ namespace crypto {
16
+ enum RSAKeyVariant {
17
+ kKeyVariantRSA_SSA_PKCS1_v1_5,
18
+ kKeyVariantRSA_PSS,
19
+ kKeyVariantRSA_OAEP
20
+ };
21
+
22
+ struct RsaKeyPairParams final : public MemoryRetainer {
23
+ RSAKeyVariant variant;
24
+ unsigned int modulus_bits;
25
+ unsigned int exponent;
26
+
27
+ // The following options are used for RSA-PSS. If any of them are set, a
28
+ // RSASSA-PSS-params sequence will be added to the key.
29
+ const EVP_MD* md = nullptr;
30
+ const EVP_MD* mgf1_md = nullptr;
31
+ int saltlen = -1;
32
+
33
+ SET_NO_MEMORY_INFO()
34
+ SET_MEMORY_INFO_NAME(RsaKeyPairParams)
35
+ SET_SELF_SIZE(RsaKeyPairParams)
36
+ };
37
+
38
+ using RsaKeyPairGenConfig = KeyPairGenConfig<RsaKeyPairParams>;
39
+
40
+ struct RsaKeyGenTraits final {
41
+ using AdditionalParameters = RsaKeyPairGenConfig;
42
+ static constexpr const char* JobName = "RsaKeyPairGenJob";
43
+
44
+ static EVPKeyCtxPointer Setup(RsaKeyPairGenConfig* params);
45
+
46
+ static v8::Maybe<bool> AdditionalConfig(
47
+ CryptoJobMode mode,
48
+ const v8::FunctionCallbackInfo<v8::Value>& args,
49
+ unsigned int* offset,
50
+ RsaKeyPairGenConfig* params);
51
+ };
52
+
53
+ using RSAKeyPairGenJob = KeyGenJob<KeyPairGenTraits<RsaKeyGenTraits>>;
54
+
55
+ struct RSAKeyExportConfig final : public MemoryRetainer {
56
+ RSAKeyVariant variant = kKeyVariantRSA_SSA_PKCS1_v1_5;
57
+ SET_NO_MEMORY_INFO()
58
+ SET_MEMORY_INFO_NAME(RSAKeyExportConfig)
59
+ SET_SELF_SIZE(RSAKeyExportConfig)
60
+ };
61
+
62
+ struct RSAKeyExportTraits final {
63
+ static constexpr const char* JobName = "RSAKeyExportJob";
64
+ using AdditionalParameters = RSAKeyExportConfig;
65
+
66
+ static v8::Maybe<bool> AdditionalConfig(
67
+ const v8::FunctionCallbackInfo<v8::Value>& args,
68
+ unsigned int offset,
69
+ RSAKeyExportConfig* config);
70
+
71
+ static WebCryptoKeyExportStatus DoExport(
72
+ std::shared_ptr<KeyObjectData> key_data,
73
+ WebCryptoKeyFormat format,
74
+ const RSAKeyExportConfig& params,
75
+ ByteSource* out);
76
+ };
77
+
78
+ using RSAKeyExportJob = KeyExportJob<RSAKeyExportTraits>;
79
+
80
+ struct RSACipherConfig final : public MemoryRetainer {
81
+ CryptoJobMode mode;
82
+ ByteSource label;
83
+ int padding = 0;
84
+ const EVP_MD* digest = nullptr;
85
+
86
+ RSACipherConfig() = default;
87
+
88
+ RSACipherConfig(RSACipherConfig&& other) noexcept;
89
+
90
+ void MemoryInfo(MemoryTracker* tracker) const override;
91
+ SET_MEMORY_INFO_NAME(RSACipherConfig)
92
+ SET_SELF_SIZE(RSACipherConfig)
93
+ };
94
+
95
+ struct RSACipherTraits final {
96
+ static constexpr const char* JobName = "RSACipherJob";
97
+ using AdditionalParameters = RSACipherConfig;
98
+
99
+ static v8::Maybe<bool> AdditionalConfig(
100
+ CryptoJobMode mode,
101
+ const v8::FunctionCallbackInfo<v8::Value>& args,
102
+ unsigned int offset,
103
+ WebCryptoCipherMode cipher_mode,
104
+ RSACipherConfig* config);
105
+
106
+ static WebCryptoCipherStatus DoCipher(
107
+ Environment* env,
108
+ std::shared_ptr<KeyObjectData> key_data,
109
+ WebCryptoCipherMode cipher_mode,
110
+ const RSACipherConfig& params,
111
+ const ByteSource& in,
112
+ ByteSource* out);
113
+ };
114
+
115
+ using RSACipherJob = CipherJob<RSACipherTraits>;
116
+
117
+ v8::Maybe<bool> ExportJWKRsaKey(
118
+ Environment* env,
119
+ std::shared_ptr<KeyObjectData> key,
120
+ v8::Local<v8::Object> target);
121
+
122
+ std::shared_ptr<KeyObjectData> ImportJWKRsaKey(
123
+ Environment* env,
124
+ v8::Local<v8::Object> jwk,
125
+ const v8::FunctionCallbackInfo<v8::Value>& args,
126
+ unsigned int offset);
127
+
128
+ v8::Maybe<bool> GetRsaKeyDetail(
129
+ Environment* env,
130
+ std::shared_ptr<KeyObjectData> key,
131
+ v8::Local<v8::Object> target);
132
+
133
+ namespace RSAAlg {
134
+ void Initialize(Environment* env, v8::Local<v8::Object> target);
135
+ void RegisterExternalReferences(ExternalReferenceRegistry* registry);
136
+ } // namespace RSAAlg
137
+ } // namespace crypto
138
+ } // namespace node
139
+
140
+ #endif // defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS
141
+ #endif // SRC_CRYPTO_CRYPTO_RSA_H_
@@ -0,0 +1,87 @@
1
+ #ifndef SRC_CRYPTO_CRYPTO_SCRYPT_H_
2
+ #define SRC_CRYPTO_CRYPTO_SCRYPT_H_
3
+
4
+ #if defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS
5
+
6
+ #include "crypto/crypto_util.h"
7
+ #include "env.h"
8
+ #include "memory_tracker.h"
9
+ #include "v8.h"
10
+
11
+ namespace node {
12
+ namespace crypto {
13
+ #ifndef OPENSSL_NO_SCRYPT
14
+
15
+ // Scrypt is a password-based key derivation algorithm
16
+ // defined in https://tools.ietf.org/html/rfc7914
17
+
18
+ // It takes as input a password, a salt value, and a
19
+ // handful of additional parameters that control the
20
+ // cost of the operation. In this case, the higher
21
+ // the cost, the better the result. The length parameter
22
+ // defines the number of bytes that are generated.
23
+
24
+ // The salt must be as random as possible and should be
25
+ // at least 16 bytes in length.
26
+
27
+ struct ScryptConfig final : public MemoryRetainer {
28
+ CryptoJobMode mode;
29
+ ByteSource pass;
30
+ ByteSource salt;
31
+ uint32_t N;
32
+ uint32_t r;
33
+ uint32_t p;
34
+ uint64_t maxmem;
35
+ int32_t length;
36
+
37
+ ScryptConfig() = default;
38
+
39
+ explicit ScryptConfig(ScryptConfig&& other) noexcept;
40
+
41
+ ScryptConfig& operator=(ScryptConfig&& other) noexcept;
42
+
43
+ void MemoryInfo(MemoryTracker* tracker) const override;
44
+ SET_MEMORY_INFO_NAME(ScryptConfig)
45
+ SET_SELF_SIZE(ScryptConfig)
46
+ };
47
+
48
+ struct ScryptTraits final {
49
+ using AdditionalParameters = ScryptConfig;
50
+ static constexpr const char* JobName = "ScryptJob";
51
+ static constexpr AsyncWrap::ProviderType Provider =
52
+ AsyncWrap::PROVIDER_SCRYPTREQUEST;
53
+
54
+ static v8::Maybe<bool> AdditionalConfig(
55
+ CryptoJobMode mode,
56
+ const v8::FunctionCallbackInfo<v8::Value>& args,
57
+ unsigned int offset,
58
+ ScryptConfig* params);
59
+
60
+ static bool DeriveBits(
61
+ Environment* env,
62
+ const ScryptConfig& params,
63
+ ByteSource* out);
64
+
65
+ static v8::Maybe<bool> EncodeOutput(
66
+ Environment* env,
67
+ const ScryptConfig& params,
68
+ ByteSource* out,
69
+ v8::Local<v8::Value>* result);
70
+ };
71
+
72
+ using ScryptJob = DeriveBitsJob<ScryptTraits>;
73
+
74
+ #else
75
+ // If there is no Scrypt support, ScryptJob becomes a non-op
76
+ struct ScryptJob {
77
+ static void Initialize(
78
+ Environment* env,
79
+ v8::Local<v8::Object> target) {}
80
+ };
81
+ #endif // !OPENSSL_NO_SCRYPT
82
+
83
+ } // namespace crypto
84
+ } // namespace node
85
+
86
+ #endif // defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS
87
+ #endif // SRC_CRYPTO_CRYPTO_SCRYPT_H_
@@ -0,0 +1,168 @@
1
+ #ifndef SRC_CRYPTO_CRYPTO_SIG_H_
2
+ #define SRC_CRYPTO_CRYPTO_SIG_H_
3
+
4
+ #if defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS
5
+
6
+ #include "base_object.h"
7
+ #include "crypto/crypto_keys.h"
8
+ #include "crypto/crypto_util.h"
9
+ #include "env.h"
10
+ #include "memory_tracker.h"
11
+
12
+ namespace node {
13
+ namespace crypto {
14
+ static const unsigned int kNoDsaSignature = static_cast<unsigned int>(-1);
15
+
16
+ enum DSASigEnc {
17
+ kSigEncDER,
18
+ kSigEncP1363
19
+ };
20
+
21
+ class SignBase : public BaseObject {
22
+ public:
23
+ typedef enum {
24
+ kSignOk,
25
+ kSignUnknownDigest,
26
+ kSignInit,
27
+ kSignNotInitialised,
28
+ kSignUpdate,
29
+ kSignPrivateKey,
30
+ kSignPublicKey,
31
+ kSignMalformedSignature
32
+ } Error;
33
+
34
+ SignBase(Environment* env, v8::Local<v8::Object> wrap);
35
+
36
+ Error Init(const char* sign_type);
37
+ Error Update(const char* data, size_t len);
38
+
39
+ // TODO(joyeecheung): track the memory used by OpenSSL types
40
+ void MemoryInfo(MemoryTracker* tracker) const override;
41
+ SET_MEMORY_INFO_NAME(SignBase)
42
+ SET_SELF_SIZE(SignBase)
43
+
44
+ protected:
45
+ EVPMDPointer mdctx_;
46
+ };
47
+
48
+ class Sign : public SignBase {
49
+ public:
50
+ static void Initialize(Environment* env, v8::Local<v8::Object> target);
51
+ static void RegisterExternalReferences(ExternalReferenceRegistry* registry);
52
+
53
+ struct SignResult {
54
+ Error error;
55
+ std::unique_ptr<v8::BackingStore> signature;
56
+
57
+ explicit SignResult(
58
+ Error err,
59
+ std::unique_ptr<v8::BackingStore>&& sig = nullptr)
60
+ : error(err), signature(std::move(sig)) {}
61
+ };
62
+
63
+ SignResult SignFinal(
64
+ const ManagedEVPPKey& pkey,
65
+ int padding,
66
+ const v8::Maybe<int>& saltlen,
67
+ DSASigEnc dsa_sig_enc);
68
+
69
+ static void SignSync(const v8::FunctionCallbackInfo<v8::Value>& args);
70
+
71
+ protected:
72
+ static void New(const v8::FunctionCallbackInfo<v8::Value>& args);
73
+ static void SignInit(const v8::FunctionCallbackInfo<v8::Value>& args);
74
+ static void SignUpdate(const v8::FunctionCallbackInfo<v8::Value>& args);
75
+ static void SignFinal(const v8::FunctionCallbackInfo<v8::Value>& args);
76
+
77
+ Sign(Environment* env, v8::Local<v8::Object> wrap);
78
+ };
79
+
80
+ class Verify : public SignBase {
81
+ public:
82
+ static void Initialize(Environment* env, v8::Local<v8::Object> target);
83
+ static void RegisterExternalReferences(ExternalReferenceRegistry* registry);
84
+
85
+ Error VerifyFinal(const ManagedEVPPKey& key,
86
+ const ByteSource& sig,
87
+ int padding,
88
+ const v8::Maybe<int>& saltlen,
89
+ bool* verify_result);
90
+
91
+ static void VerifySync(const v8::FunctionCallbackInfo<v8::Value>& args);
92
+
93
+ protected:
94
+ static void New(const v8::FunctionCallbackInfo<v8::Value>& args);
95
+ static void VerifyInit(const v8::FunctionCallbackInfo<v8::Value>& args);
96
+ static void VerifyUpdate(const v8::FunctionCallbackInfo<v8::Value>& args);
97
+ static void VerifyFinal(const v8::FunctionCallbackInfo<v8::Value>& args);
98
+
99
+ Verify(Environment* env, v8::Local<v8::Object> wrap);
100
+ };
101
+
102
+ struct SignConfiguration final : public MemoryRetainer {
103
+ enum Mode {
104
+ kSign,
105
+ kVerify
106
+ };
107
+ enum Flags {
108
+ kHasNone = 0,
109
+ kHasSaltLength = 1,
110
+ kHasPadding = 2
111
+ };
112
+
113
+ CryptoJobMode job_mode;
114
+ Mode mode;
115
+ ManagedEVPPKey key;
116
+ ByteSource data;
117
+ ByteSource signature;
118
+ const EVP_MD* digest = nullptr;
119
+ int flags = SignConfiguration::kHasNone;
120
+ int padding = 0;
121
+ int salt_length = 0;
122
+ DSASigEnc dsa_encoding = kSigEncDER;
123
+
124
+ SignConfiguration() = default;
125
+
126
+ explicit SignConfiguration(SignConfiguration&& other) noexcept;
127
+
128
+ SignConfiguration& operator=(SignConfiguration&& other) noexcept;
129
+
130
+ void MemoryInfo(MemoryTracker* tracker) const override;
131
+ SET_MEMORY_INFO_NAME(SignConfiguration)
132
+ SET_SELF_SIZE(SignConfiguration)
133
+ };
134
+
135
+ struct SignTraits final {
136
+ using AdditionalParameters = SignConfiguration;
137
+ static constexpr const char* JobName = "SignJob";
138
+
139
+ // TODO(@jasnell): Sign request vs. Verify request
140
+
141
+ static constexpr AsyncWrap::ProviderType Provider =
142
+ AsyncWrap::PROVIDER_SIGNREQUEST;
143
+
144
+ static v8::Maybe<bool> AdditionalConfig(
145
+ CryptoJobMode mode,
146
+ const v8::FunctionCallbackInfo<v8::Value>& args,
147
+ unsigned int offset,
148
+ SignConfiguration* params);
149
+
150
+ static bool DeriveBits(
151
+ Environment* env,
152
+ const SignConfiguration& params,
153
+ ByteSource* out);
154
+
155
+ static v8::Maybe<bool> EncodeOutput(
156
+ Environment* env,
157
+ const SignConfiguration& params,
158
+ ByteSource* out,
159
+ v8::Local<v8::Value>* result);
160
+ };
161
+
162
+ using SignJob = DeriveBitsJob<SignTraits>;
163
+
164
+ } // namespace crypto
165
+ } // namespace node
166
+
167
+ #endif // defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS
168
+ #endif // SRC_CRYPTO_CRYPTO_SIG_H_
@@ -0,0 +1,21 @@
1
+ #ifndef SRC_CRYPTO_CRYPTO_SPKAC_H_
2
+ #define SRC_CRYPTO_CRYPTO_SPKAC_H_
3
+
4
+ #if defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS
5
+
6
+ #include "env.h"
7
+ #include "v8.h"
8
+
9
+ #include <openssl/evp.h>
10
+
11
+ namespace node {
12
+ namespace crypto {
13
+ namespace SPKAC {
14
+ void Initialize(Environment* env, v8::Local<v8::Object>);
15
+ void RegisterExternalReferences(ExternalReferenceRegistry* registry);
16
+ } // namespace SPKAC
17
+ } // namespace crypto
18
+ } // namespace node
19
+
20
+ #endif // defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS
21
+ #endif // SRC_CRYPTO_CRYPTO_SPKAC_H_
@@ -0,0 +1,20 @@
1
+ #ifndef SRC_CRYPTO_CRYPTO_TIMING_H_
2
+ #define SRC_CRYPTO_CRYPTO_TIMING_H_
3
+
4
+ #if defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS
5
+
6
+ #include "env.h"
7
+ #include "v8.h"
8
+
9
+ namespace node {
10
+ namespace crypto {
11
+ namespace Timing {
12
+ void Initialize(Environment* env, v8::Local<v8::Object> target);
13
+ void RegisterExternalReferences(ExternalReferenceRegistry* registry);
14
+ } // namespace Timing
15
+ } // namespace crypto
16
+ } // namespace node
17
+
18
+ #endif // defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS
19
+
20
+ #endif // SRC_CRYPTO_CRYPTO_TIMING_H_