@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.
- package/binding.gyp +1 -1
- package/dist/bindings/cws_darwin_arm64_node115.node +0 -0
- package/dist/bindings/cws_darwin_arm64_node127.node +0 -0
- package/dist/bindings/cws_darwin_arm64_node137.node +0 -0
- package/dist/bindings/cws_linux_arm64_node115.node +0 -0
- package/dist/bindings/cws_linux_arm64_node127.node +0 -0
- package/dist/bindings/cws_linux_x64_node115.node +0 -0
- package/dist/bindings/cws_linux_x64_node127.node +0 -0
- package/dist/bindings/cws_linux_x64_node137.node +0 -0
- package/dist/bindings/cws_win32_x64_node108.node +0 -0
- package/dist/bindings/cws_win32_x64_node115.node +0 -0
- package/dist/bindings/cws_win32_x64_node127.node +0 -0
- package/dist/bindings/cws_win32_x64_node83.node +0 -0
- package/dist/bindings/cws_win32_x64_node93.node +0 -0
- package/package.json +1 -1
- package/src/Addon.h +13 -23
- package/src/Socket.h +0 -1
- package/src/headers/22/acorn_version.h +6 -0
- package/src/headers/22/aliased_buffer-inl.h +243 -0
- package/src/headers/22/aliased_buffer.h +206 -0
- package/src/headers/{18 → 22}/async_wrap-inl.h +8 -6
- package/src/headers/{18 → 22}/async_wrap.h +65 -59
- package/src/headers/{18 → 22}/base_object-inl.h +57 -117
- package/src/headers/{18 → 22}/base_object.h +58 -30
- package/src/headers/22/base_object_types.h +74 -0
- package/src/headers/22/blob_serializer_deserializer-inl.h +385 -0
- package/src/headers/22/blob_serializer_deserializer.h +132 -0
- package/src/headers/{16 → 22}/callback_queue.h +1 -0
- package/src/headers/{16 → 22}/cares_wrap.h +27 -20
- package/src/headers/22/cjs_module_lexer_version.h +6 -0
- package/src/headers/22/cleanup_queue-inl.h +62 -0
- package/src/headers/22/cleanup_queue.h +85 -0
- package/src/headers/22/compile_cache.h +104 -0
- package/src/headers/{18 → 22}/crypto/crypto_clienthello.h +1 -1
- package/src/headers/{18 → 22}/crypto/crypto_context.h +31 -7
- package/src/headers/{18 → 22}/crypto/crypto_keys.h +118 -148
- package/src/headers/{18 → 22}/crypto/crypto_tls.h +20 -5
- package/src/headers/{18 → 22}/crypto/crypto_util.h +219 -263
- package/src/headers/22/crypto/ncrypto.h +752 -0
- package/src/headers/{16 → 22}/debug_utils-inl.h +15 -7
- package/src/headers/{18 → 22}/debug_utils.h +25 -19
- package/src/headers/22/encoding_binding.h +59 -0
- package/src/headers/{14 → 22}/env-inl.h +276 -409
- package/src/headers/22/env.h +1266 -0
- package/src/headers/22/env_properties.h +497 -0
- package/src/headers/{18 → 22}/handle_wrap.h +2 -0
- package/src/headers/{18 → 22}/histogram.h +88 -48
- package/src/headers/{16 → 22}/inspector_agent.h +17 -1
- package/src/headers/{16 → 22}/inspector_profiler.h +15 -13
- package/src/headers/22/js_native_api.h +619 -0
- package/src/headers/{18 → 22}/js_native_api_types.h +46 -1
- package/src/headers/22/js_native_api_v8.h +485 -0
- package/src/headers/{18 → 22}/js_native_api_v8_internals.h +6 -0
- package/src/headers/22/json_parser.h +40 -0
- package/src/headers/{16 → 22}/json_utils.h +19 -8
- package/src/headers/{18 → 22}/memory_tracker-inl.h +16 -13
- package/src/headers/{14 → 22}/memory_tracker.h +13 -8
- package/src/headers/{16 → 22}/module_wrap.h +49 -19
- package/src/headers/22/ncrypto/ncrypto.h +752 -0
- package/src/headers/{18 → 22}/node.h +465 -68
- package/src/headers/{18 → 22}/node_api.h +66 -81
- package/src/headers/{18 → 22}/node_api_internals.h +8 -4
- package/src/headers/{18 → 22}/node_api_types.h +5 -0
- package/src/headers/22/node_binding.h +154 -0
- package/src/headers/{18 → 22}/node_blob.h +46 -78
- package/src/headers/{18 → 22}/node_bob-inl.h +1 -2
- package/src/headers/{18 → 22}/node_bob.h +2 -6
- package/src/headers/{18 → 22}/node_buffer.h +1 -1
- package/src/headers/22/node_builtins.h +220 -0
- package/src/headers/{18 → 22}/node_constants.h +3 -5
- package/src/headers/22/node_context_data.h +168 -0
- package/src/headers/22/node_contextify.h +199 -0
- package/src/headers/{16 → 22}/node_crypto.h +1 -2
- package/src/headers/22/node_dotenv.h +45 -0
- package/src/headers/{18 → 22}/node_errors.h +86 -27
- package/src/headers/22/node_exit_code.h +54 -0
- package/src/headers/22/node_external_reference.h +249 -0
- package/src/headers/{18 → 22}/node_file-inl.h +127 -30
- package/src/headers/{16 → 22}/node_file.h +122 -11
- package/src/headers/{18 → 22}/node_http2.h +28 -11
- package/src/headers/{16 → 22}/node_http2_state.h +34 -25
- package/src/headers/{18 → 22}/node_http_common-inl.h +2 -1
- package/src/headers/{18 → 22}/node_http_common.h +56 -55
- package/src/headers/{16 → 22}/node_i18n.h +5 -18
- package/src/headers/{18 → 22}/node_internals.h +121 -59
- package/src/headers/{18 → 22}/node_main_instance.h +4 -31
- package/src/headers/{18 → 22}/node_messaging.h +27 -10
- package/src/headers/{18 → 22}/node_metadata.h +23 -1
- package/src/headers/{18 → 22}/node_options-inl.h +24 -11
- package/src/headers/{18 → 22}/node_options.h +124 -39
- package/src/headers/{18 → 22}/node_perf.h +0 -2
- package/src/headers/{18 → 22}/node_perf_common.h +20 -9
- package/src/headers/{18 → 22}/node_platform.h +11 -5
- package/src/headers/{18 → 22}/node_process.h +26 -14
- package/src/headers/22/node_realm-inl.h +145 -0
- package/src/headers/22/node_realm.h +184 -0
- package/src/headers/{16 → 22}/node_report.h +13 -17
- package/src/headers/{16 → 22}/node_revert.h +3 -3
- package/src/headers/{16 → 22}/node_root_certs.h +902 -461
- package/src/headers/22/node_sea.h +64 -0
- package/src/headers/22/node_shadow_realm.h +46 -0
- package/src/headers/22/node_snapshot_builder.h +57 -0
- package/src/headers/22/node_snapshotable.h +174 -0
- package/src/headers/{18 → 22}/node_sockaddr.h +2 -2
- package/src/headers/{16 → 22}/node_stat_watcher.h +2 -1
- package/src/headers/22/node_threadsafe_cow-inl.h +54 -0
- package/src/headers/22/node_threadsafe_cow.h +105 -0
- package/src/headers/22/node_union_bytes.h +81 -0
- package/src/headers/22/node_url.h +96 -0
- package/src/headers/22/node_v8.h +77 -0
- package/src/headers/{14 → 22}/node_v8_platform-inl.h +17 -6
- package/src/headers/{16 → 22}/node_version.h +21 -9
- package/src/headers/22/node_wasi.h +185 -0
- package/src/headers/{14 → 22}/node_watchdog.h +2 -0
- package/src/headers/{18 → 22}/node_worker.h +7 -2
- package/src/headers/22/permission/child_process_permission.h +31 -0
- package/src/headers/22/permission/fs_permission.h +167 -0
- package/src/headers/22/permission/inspector_permission.h +31 -0
- package/src/headers/22/permission/permission.h +99 -0
- package/src/headers/22/permission/permission_base.h +60 -0
- package/src/headers/22/permission/wasi_permission.h +31 -0
- package/src/headers/22/permission/worker_permission.h +31 -0
- package/src/headers/{16 → 22}/req_wrap-inl.h +7 -6
- package/src/headers/{14 → 22}/spawn_sync.h +3 -3
- package/src/headers/{18 → 22}/stream_base-inl.h +0 -135
- package/src/headers/{18 → 22}/stream_base.h +35 -16
- package/src/headers/{18 → 22}/stream_pipe.h +3 -4
- package/src/headers/{16 → 22}/stream_wrap.h +2 -1
- package/src/headers/{18 → 22}/string_bytes.h +5 -14
- package/src/headers/{14 → 22}/string_decoder-inl.h +0 -6
- package/src/headers/{16 → 22}/string_decoder.h +0 -1
- package/src/headers/{18 → 22}/tcp_wrap.h +1 -1
- package/src/headers/{18 → 22}/threadpoolwork-inl.h +14 -1
- package/src/headers/22/timers.h +76 -0
- package/src/headers/{18 → 22}/tracing/trace_event.h +7 -5
- package/src/headers/{16 → 22}/udp_wrap.h +8 -5
- package/src/headers/22/undici_version.h +6 -0
- package/src/headers/{18 → 22}/util-inl.h +97 -127
- package/src/headers/{18 → 22}/util.h +293 -106
- package/src/headers/{18 → 22}/v8-fast-api-calls.h +103 -58
- package/src/headers/24/acorn_version.h +6 -0
- package/src/headers/24/addon_permission.h +31 -0
- package/src/headers/{16/tracing → 24}/agent.h +1 -1
- package/src/headers/24/aliased_buffer-inl.h +244 -0
- package/src/headers/24/aliased_buffer.h +206 -0
- package/src/headers/24/amaro_version.h +6 -0
- package/src/headers/24/application.h +165 -0
- package/src/headers/24/async_context_frame.h +33 -0
- package/src/headers/{14 → 24}/async_wrap-inl.h +8 -6
- package/src/headers/{16 → 24}/async_wrap.h +86 -88
- package/src/headers/{16 → 24}/base_object-inl.h +75 -119
- package/src/headers/{16 → 24}/base_object.h +84 -40
- package/src/headers/24/base_object_types.h +74 -0
- package/src/headers/24/bindingdata.h +272 -0
- package/src/headers/24/blob_serializer_deserializer-inl.h +385 -0
- package/src/headers/24/blob_serializer_deserializer.h +132 -0
- package/src/headers/{18 → 24}/callback_queue.h +1 -0
- package/src/headers/{18 → 24}/cares_wrap.h +68 -144
- package/src/headers/24/child_process_permission.h +31 -0
- package/src/headers/24/cid.h +127 -0
- package/src/headers/24/cjs_module_lexer_version.h +6 -0
- package/src/headers/24/cleanup_queue-inl.h +36 -0
- package/src/headers/24/cleanup_queue.h +79 -0
- package/src/headers/24/compile_cache.h +113 -0
- package/src/headers/24/cppgc_helpers-inl.h +65 -0
- package/src/headers/24/cppgc_helpers.h +162 -0
- package/src/headers/24/crypto/crypto_aes.h +97 -0
- package/src/headers/24/crypto/crypto_argon2.h +86 -0
- package/src/headers/{16 → 24}/crypto/crypto_bio.h +8 -9
- package/src/headers/24/crypto/crypto_chacha20_poly1305.h +64 -0
- package/src/headers/{18 → 24}/crypto/crypto_cipher.h +48 -58
- package/src/headers/{16 → 24}/crypto/crypto_clienthello-inl.h +2 -2
- package/src/headers/{16 → 24}/crypto/crypto_clienthello.h +1 -1
- package/src/headers/24/crypto/crypto_common.h +48 -0
- package/src/headers/{16 → 24}/crypto/crypto_context.h +46 -22
- package/src/headers/{18 → 24}/crypto/crypto_dh.h +27 -57
- package/src/headers/{18 → 24}/crypto/crypto_dsa.h +7 -34
- package/src/headers/{18 → 24}/crypto/crypto_ec.h +42 -49
- package/src/headers/{18 → 24}/crypto/crypto_hash.h +11 -11
- package/src/headers/{18 → 24}/crypto/crypto_hkdf.h +10 -14
- package/src/headers/{18 → 24}/crypto/crypto_hmac.h +11 -13
- package/src/headers/24/crypto/crypto_kem.h +113 -0
- package/src/headers/{18 → 24}/crypto/crypto_keygen.h +59 -74
- package/src/headers/{16 → 24}/crypto/crypto_keys.h +134 -154
- package/src/headers/24/crypto/crypto_ml_dsa.h +21 -0
- package/src/headers/{18 → 24}/crypto/crypto_pbkdf2.h +9 -11
- package/src/headers/{18 → 24}/crypto/crypto_random.h +28 -34
- package/src/headers/{18 → 24}/crypto/crypto_rsa.h +30 -35
- package/src/headers/{18 → 24}/crypto/crypto_scrypt.h +8 -10
- package/src/headers/{18 → 24}/crypto/crypto_sig.h +36 -48
- package/src/headers/{16 → 24}/crypto/crypto_tls.h +35 -18
- package/src/headers/{16 → 24}/crypto/crypto_util.h +183 -321
- package/src/headers/24/crypto/crypto_x509.h +140 -0
- package/src/headers/24/data.h +148 -0
- package/src/headers/{14 → 24}/debug_utils-inl.h +17 -8
- package/src/headers/{16 → 24}/debug_utils.h +31 -22
- package/src/headers/24/defs.h +254 -0
- package/src/headers/24/embedded_data.h +17 -0
- package/src/headers/24/encoding_binding.h +60 -0
- package/src/headers/24/endpoint.h +421 -0
- package/src/headers/{16 → 24}/env-inl.h +198 -540
- package/src/headers/24/env.h +1257 -0
- package/src/headers/24/env_properties.h +561 -0
- package/src/headers/24/fs_permission.h +167 -0
- package/src/headers/{16 → 24}/handle_wrap.h +4 -2
- package/src/headers/{16 → 24}/histogram-inl.h +34 -15
- package/src/headers/24/histogram.h +279 -0
- package/src/headers/24/http3.h +44 -0
- package/src/headers/{18 → 24}/inspector_agent.h +23 -2
- package/src/headers/24/inspector_permission.h +31 -0
- package/src/headers/{18 → 24}/inspector_profiler.h +15 -15
- package/src/headers/24/io_agent.h +30 -0
- package/src/headers/{18 → 24}/js_native_api.h +74 -30
- package/src/headers/{16 → 24}/js_native_api_types.h +61 -10
- package/src/headers/{18 → 24}/js_native_api_v8.h +205 -160
- package/src/headers/{16 → 24}/js_native_api_v8_internals.h +12 -6
- package/src/headers/24/json_parser.h +40 -0
- package/src/headers/{18 → 24}/json_utils.h +19 -8
- package/src/headers/24/logstream.h +81 -0
- package/src/headers/24/main_thread_interface.h +116 -0
- package/src/headers/{16 → 24}/memory_tracker-inl.h +115 -17
- package/src/headers/{16 → 24}/memory_tracker.h +58 -9
- package/src/headers/24/module_wrap.h +229 -0
- package/src/headers/24/ncrypto.h +1625 -0
- package/src/headers/24/network_agent.h +118 -0
- package/src/headers/24/network_inspector.h +45 -0
- package/src/headers/24/network_resource_manager.h +29 -0
- package/src/headers/{16 → 24}/node.h +560 -72
- package/src/headers/24/node_api.h +269 -0
- package/src/headers/24/node_api_internals.h +46 -0
- package/src/headers/{16 → 24}/node_api_types.h +13 -11
- package/src/headers/24/node_binding.h +163 -0
- package/src/headers/{16 → 24}/node_blob.h +46 -78
- package/src/headers/{16 → 24}/node_bob-inl.h +1 -2
- package/src/headers/{16 → 24}/node_bob.h +2 -6
- package/src/headers/{14 → 24}/node_buffer.h +1 -1
- package/src/headers/24/node_builtins.h +223 -0
- package/src/headers/24/node_config_file.h +65 -0
- package/src/headers/{14 → 24}/node_constants.h +3 -5
- package/src/headers/24/node_context_data.h +168 -0
- package/src/headers/24/node_contextify.h +261 -0
- package/src/headers/{18 → 24}/node_crypto.h +7 -2
- package/src/headers/24/node_debug.h +25 -0
- package/src/headers/24/node_dotenv.h +45 -0
- package/src/headers/{16 → 24}/node_errors.h +146 -32
- package/src/headers/24/node_exit_code.h +54 -0
- package/src/headers/{18 → 24}/node_external_reference.h +44 -22
- package/src/headers/{16 → 24}/node_file-inl.h +156 -50
- package/src/headers/{18 → 24}/node_file.h +129 -15
- package/src/headers/{16 → 24}/node_http2.h +53 -18
- package/src/headers/{14 → 24}/node_http2_state.h +35 -25
- package/src/headers/{16 → 24}/node_http_common-inl.h +8 -10
- package/src/headers/{16 → 24}/node_http_common.h +63 -59
- package/src/headers/{18 → 24}/node_i18n.h +5 -18
- package/src/headers/{16 → 24}/node_internals.h +131 -76
- package/src/headers/24/node_json.h +24 -0
- package/src/headers/24/node_large_page.h +34 -0
- package/src/headers/24/node_locks.h +180 -0
- package/src/headers/{14 → 24}/node_main_instance.h +15 -44
- package/src/headers/{16 → 24}/node_mem-inl.h +7 -7
- package/src/headers/{16 → 24}/node_messaging.h +27 -11
- package/src/headers/{16 → 24}/node_metadata.h +44 -2
- package/src/headers/24/node_modules.h +93 -0
- package/src/headers/{16 → 24}/node_options-inl.h +93 -46
- package/src/headers/{16 → 24}/node_options.h +251 -63
- package/src/headers/{16 → 24}/node_perf.h +6 -25
- package/src/headers/{16 → 24}/node_perf_common.h +23 -10
- package/src/headers/24/node_platform.h +286 -0
- package/src/headers/24/node_process.h +111 -0
- package/src/headers/24/node_realm-inl.h +153 -0
- package/src/headers/24/node_realm.h +236 -0
- package/src/headers/{18 → 24}/node_report.h +13 -17
- package/src/headers/{18 → 24}/node_revert.h +3 -3
- package/src/headers/{18 → 24}/node_root_certs.h +1010 -710
- package/src/headers/24/node_sea.h +74 -0
- package/src/headers/24/node_shadow_realm.h +46 -0
- package/src/headers/24/node_snapshot_builder.h +57 -0
- package/src/headers/24/node_snapshotable.h +174 -0
- package/src/headers/{16 → 24}/node_sockaddr-inl.h +11 -20
- package/src/headers/{16 → 24}/node_sockaddr.h +9 -20
- package/src/headers/24/node_sqlite.h +270 -0
- package/src/headers/{18 → 24}/node_stat_watcher.h +2 -1
- package/src/headers/24/node_string.h +101 -0
- package/src/headers/24/node_task_runner.h +92 -0
- package/src/headers/24/node_threadsafe_cow-inl.h +54 -0
- package/src/headers/24/node_threadsafe_cow.h +105 -0
- package/src/headers/24/node_union_bytes.h +81 -0
- package/src/headers/24/node_url.h +101 -0
- package/src/headers/24/node_url_pattern.h +118 -0
- package/src/headers/24/node_v8.h +77 -0
- package/src/headers/{18 → 24}/node_v8_platform-inl.h +22 -31
- package/src/headers/{18 → 24}/node_version.h +18 -6
- package/src/headers/24/node_wasi.h +185 -0
- package/src/headers/24/node_wasm_web_api.h +55 -0
- package/src/headers/{18 → 24}/node_watchdog.h +2 -0
- package/src/headers/24/node_webstorage.h +60 -0
- package/src/headers/{16 → 24}/node_worker.h +24 -10
- package/src/headers/24/packet.h +155 -0
- package/src/headers/24/path.h +33 -0
- package/src/headers/24/permission/addon_permission.h +31 -0
- package/src/headers/24/permission/child_process_permission.h +31 -0
- package/src/headers/24/permission/fs_permission.h +167 -0
- package/src/headers/24/permission/inspector_permission.h +31 -0
- package/src/headers/24/permission/permission.h +100 -0
- package/src/headers/24/permission/permission_base.h +65 -0
- package/src/headers/24/permission/wasi_permission.h +31 -0
- package/src/headers/24/permission/worker_permission.h +31 -0
- package/src/headers/24/permission.h +100 -0
- package/src/headers/24/permission_base.h +65 -0
- package/src/headers/24/preferredaddress.h +72 -0
- package/src/headers/24/protocol_helper.h +27 -0
- package/src/headers/24/queue.h +306 -0
- package/src/headers/{18 → 24}/req_wrap-inl.h +12 -6
- package/src/headers/{16 → 24}/req_wrap.h +3 -1
- package/src/headers/24/runtime_agent.h +41 -0
- package/src/headers/24/session.h +528 -0
- package/src/headers/24/sessionticket.h +108 -0
- package/src/headers/{18 → 24}/spawn_sync.h +9 -8
- package/src/headers/{16 → 24}/stream_base-inl.h +3 -133
- package/src/headers/{16 → 24}/stream_base.h +43 -19
- package/src/headers/{16 → 24}/stream_pipe.h +7 -4
- package/src/headers/{18 → 24}/stream_wrap.h +2 -3
- package/src/headers/24/streams.h +370 -0
- package/src/headers/{16 → 24}/string_bytes.h +8 -21
- package/src/headers/{18 → 24}/string_decoder-inl.h +0 -6
- package/src/headers/{18 → 24}/string_decoder.h +0 -1
- package/src/headers/24/target_agent.h +75 -0
- package/src/headers/{16 → 24}/tcp_wrap.h +3 -1
- package/src/headers/{14 → 24}/threadpoolwork-inl.h +14 -1
- package/src/headers/24/timer_wrap-inl.h +32 -0
- package/src/headers/{16 → 24}/timer_wrap.h +7 -4
- package/src/headers/24/timers.h +75 -0
- package/src/headers/24/tlscontext.h +228 -0
- package/src/headers/24/tokens.h +256 -0
- package/src/headers/{14/tracing → 24}/trace_event.h +7 -5
- package/src/headers/24/traced_value.h +129 -0
- package/src/headers/24/tracing_agent.h +43 -0
- package/src/headers/24/transportparams.h +166 -0
- package/src/headers/{16 → 24}/tty_wrap.h +0 -1
- package/src/headers/{18 → 24}/udp_wrap.h +8 -5
- package/src/headers/24/undici_version.h +6 -0
- package/src/headers/{16 → 24}/util-inl.h +267 -131
- package/src/headers/{16 → 24}/util.h +338 -146
- package/src/headers/24/v8-external-memory-accounter.h +60 -0
- package/src/headers/24/v8-fast-api-calls.h +819 -0
- package/src/headers/24/v8-inspector.h +426 -0
- package/src/headers/24/wasi_permission.h +31 -0
- package/src/headers/24/worker_agent.h +40 -0
- package/src/headers/24/worker_inspector.h +124 -0
- package/src/headers/24/worker_permission.h +31 -0
- package/src/headers/24/zlib_version.h +6 -0
- package/dist/bindings/cws_darwin_arm64_node83.node +0 -0
- package/dist/bindings/cws_darwin_arm64_node93.node +0 -0
- package/dist/bindings/cws_darwin_x64_node83.node +0 -0
- package/dist/bindings/cws_darwin_x64_node93.node +0 -0
- package/dist/bindings/cws_linux_arm64_node83.node +0 -0
- package/dist/bindings/cws_linux_arm64_node93.node +0 -0
- package/dist/bindings/cws_linux_x64_node83.node +0 -0
- package/dist/bindings/cws_linux_x64_node93.node +0 -0
- package/src/headers/14/aliased_buffer.h +0 -263
- package/src/headers/14/allocated_buffer-inl.h +0 -110
- package/src/headers/14/allocated_buffer.h +0 -73
- package/src/headers/14/async_wrap.h +0 -230
- package/src/headers/14/base64.h +0 -183
- package/src/headers/14/base_object-inl.h +0 -371
- package/src/headers/14/base_object.h +0 -281
- package/src/headers/14/callback_queue-inl.h +0 -97
- package/src/headers/14/callback_queue.h +0 -78
- package/src/headers/14/debug_utils.h +0 -181
- package/src/headers/14/env.h +0 -1388
- package/src/headers/14/handle_wrap.h +0 -117
- package/src/headers/14/histogram-inl.h +0 -83
- package/src/headers/14/histogram.h +0 -98
- package/src/headers/14/inspector_agent.h +0 -149
- package/src/headers/14/inspector_profiler.h +0 -137
- package/src/headers/14/js_native_api.h +0 -544
- package/src/headers/14/js_native_api_types.h +0 -143
- package/src/headers/14/js_native_api_v8.h +0 -301
- package/src/headers/14/js_native_api_v8_internals.h +0 -38
- package/src/headers/14/json_utils.h +0 -161
- package/src/headers/14/memory_tracker-inl.h +0 -355
- package/src/headers/14/module_wrap.h +0 -99
- package/src/headers/14/node.h +0 -1032
- package/src/headers/14/node_api.h +0 -255
- package/src/headers/14/node_api_types.h +0 -44
- package/src/headers/14/node_binding.h +0 -99
- package/src/headers/14/node_context_data.h +0 -44
- package/src/headers/14/node_contextify.h +0 -161
- package/src/headers/14/node_crypto.h +0 -865
- package/src/headers/14/node_crypto_bio.h +0 -195
- package/src/headers/14/node_crypto_clienthello-inl.h +0 -91
- package/src/headers/14/node_crypto_clienthello.h +0 -132
- package/src/headers/14/node_crypto_common.h +0 -138
- package/src/headers/14/node_crypto_groups.h +0 -415
- package/src/headers/14/node_dtrace.h +0 -86
- package/src/headers/14/node_errors.h +0 -214
- package/src/headers/14/node_file-inl.h +0 -306
- package/src/headers/14/node_file.h +0 -417
- package/src/headers/14/node_http2.h +0 -1191
- package/src/headers/14/node_http_common-inl.h +0 -194
- package/src/headers/14/node_http_common.h +0 -529
- package/src/headers/14/node_i18n.h +0 -144
- package/src/headers/14/node_internals.h +0 -405
- package/src/headers/14/node_mem.h +0 -45
- package/src/headers/14/node_messaging.h +0 -303
- package/src/headers/14/node_metadata.h +0 -109
- package/src/headers/14/node_mutex.h +0 -247
- package/src/headers/14/node_native_module.h +0 -101
- package/src/headers/14/node_native_module_env.h +0 -66
- package/src/headers/14/node_options-inl.h +0 -451
- package/src/headers/14/node_options.h +0 -481
- package/src/headers/14/node_perf.h +0 -181
- package/src/headers/14/node_perf_common.h +0 -97
- package/src/headers/14/node_platform.h +0 -189
- package/src/headers/14/node_process.h +0 -40
- package/src/headers/14/node_report.h +0 -47
- package/src/headers/14/node_revert.h +0 -72
- package/src/headers/14/node_root_certs.h +0 -3458
- package/src/headers/14/node_sockaddr-inl.h +0 -170
- package/src/headers/14/node_sockaddr.h +0 -123
- package/src/headers/14/node_stat_watcher.h +0 -70
- package/src/headers/14/node_union_bytes.h +0 -103
- package/src/headers/14/node_url.h +0 -188
- package/src/headers/14/node_version.h +0 -98
- package/src/headers/14/node_wasi.h +0 -108
- package/src/headers/14/node_win32_etw_provider-inl.h +0 -287
- package/src/headers/14/node_win32_etw_provider.h +0 -99
- package/src/headers/14/node_worker.h +0 -141
- package/src/headers/14/pipe_wrap.h +0 -78
- package/src/headers/14/req_wrap-inl.h +0 -170
- package/src/headers/14/req_wrap.h +0 -77
- package/src/headers/14/stream_base-inl.h +0 -275
- package/src/headers/14/stream_base.h +0 -434
- package/src/headers/14/stream_pipe.h +0 -73
- package/src/headers/14/stream_wrap.h +0 -130
- package/src/headers/14/string_bytes.h +0 -129
- package/src/headers/14/string_decoder.h +0 -50
- package/src/headers/14/string_search.h +0 -638
- package/src/headers/14/tcp_wrap.h +0 -101
- package/src/headers/14/tls_wrap.h +0 -222
- package/src/headers/14/tracing/agent.h +0 -195
- package/src/headers/14/tracing/traced_value.h +0 -70
- package/src/headers/14/tty_wrap.h +0 -64
- package/src/headers/14/udp_wrap.h +0 -227
- package/src/headers/14/util-inl.h +0 -566
- package/src/headers/14/util.h +0 -804
- package/src/headers/14/v8abbr.h +0 -124
- package/src/headers/16/aliased_buffer.h +0 -315
- package/src/headers/16/allocated_buffer-inl.h +0 -110
- package/src/headers/16/allocated_buffer.h +0 -73
- package/src/headers/16/async_wrap-inl.h +0 -94
- package/src/headers/16/base64-inl.h +0 -189
- package/src/headers/16/base64.h +0 -69
- package/src/headers/16/crypto/crypto_aes.h +0 -89
- package/src/headers/16/crypto/crypto_cipher.h +0 -286
- package/src/headers/16/crypto/crypto_common.h +0 -187
- package/src/headers/16/crypto/crypto_dh.h +0 -157
- package/src/headers/16/crypto/crypto_dsa.h +0 -76
- package/src/headers/16/crypto/crypto_ec.h +0 -169
- package/src/headers/16/crypto/crypto_groups.h +0 -415
- package/src/headers/16/crypto/crypto_hash.h +0 -89
- package/src/headers/16/crypto/crypto_hkdf.h +0 -66
- package/src/headers/16/crypto/crypto_hmac.h +0 -94
- package/src/headers/16/crypto/crypto_keygen.h +0 -301
- package/src/headers/16/crypto/crypto_pbkdf2.h +0 -76
- package/src/headers/16/crypto/crypto_random.h +0 -130
- package/src/headers/16/crypto/crypto_rsa.h +0 -141
- package/src/headers/16/crypto/crypto_scrypt.h +0 -87
- package/src/headers/16/crypto/crypto_sig.h +0 -167
- package/src/headers/16/crypto/crypto_spkac.h +0 -20
- package/src/headers/16/crypto/crypto_timing.h +0 -20
- package/src/headers/16/crypto/crypto_x509.h +0 -141
- package/src/headers/16/env.h +0 -1629
- package/src/headers/16/histogram.h +0 -216
- package/src/headers/16/js_native_api.h +0 -561
- package/src/headers/16/js_native_api_v8.h +0 -451
- package/src/headers/16/node.d +0 -315
- package/src/headers/16/node.stp +0 -146
- package/src/headers/16/node_api.h +0 -275
- package/src/headers/16/node_api_internals.h +0 -30
- package/src/headers/16/node_binding.h +0 -99
- package/src/headers/16/node_buffer.h +0 -92
- package/src/headers/16/node_constants.h +0 -84
- package/src/headers/16/node_context_data.h +0 -44
- package/src/headers/16/node_contextify.h +0 -196
- package/src/headers/16/node_dtrace.h +0 -86
- package/src/headers/16/node_external_reference.h +0 -129
- package/src/headers/16/node_main_instance.h +0 -103
- package/src/headers/16/node_native_module.h +0 -101
- package/src/headers/16/node_native_module_env.h +0 -68
- package/src/headers/16/node_platform.h +0 -192
- package/src/headers/16/node_process.h +0 -43
- package/src/headers/16/node_provider.d +0 -80
- package/src/headers/16/node_snapshotable.h +0 -137
- package/src/headers/16/node_union_bytes.h +0 -103
- package/src/headers/16/node_url.h +0 -205
- package/src/headers/16/node_v8.h +0 -41
- package/src/headers/16/node_v8_platform-inl.h +0 -194
- package/src/headers/16/node_wasi.h +0 -108
- package/src/headers/16/node_watchdog.h +0 -152
- package/src/headers/16/node_win32_etw_provider-inl.h +0 -288
- package/src/headers/16/node_win32_etw_provider.h +0 -99
- package/src/headers/16/spawn_sync.h +0 -242
- package/src/headers/16/string_decoder-inl.h +0 -37
- package/src/headers/16/string_search.h +0 -638
- package/src/headers/16/threadpoolwork-inl.h +0 -57
- package/src/headers/16/tracing/node_trace_buffer.h +0 -83
- package/src/headers/16/tracing/node_trace_writer.h +0 -75
- package/src/headers/16/tracing/trace_event.h +0 -720
- package/src/headers/16/tracing/traced_value.h +0 -70
- package/src/headers/16/v8abbr.h +0 -123
- package/src/headers/16/v8ustack.d +0 -695
- package/src/headers/18/aliased_buffer.h +0 -315
- package/src/headers/18/aliased_struct-inl.h +0 -54
- package/src/headers/18/aliased_struct.h +0 -63
- package/src/headers/18/base64-inl.h +0 -189
- package/src/headers/18/base64.h +0 -69
- package/src/headers/18/connect_wrap.h +0 -26
- package/src/headers/18/connection_wrap.h +0 -30
- package/src/headers/18/crypto/crypto_aes.h +0 -89
- package/src/headers/18/crypto/crypto_bio.h +0 -194
- package/src/headers/18/crypto/crypto_clienthello-inl.h +0 -90
- package/src/headers/18/crypto/crypto_common.h +0 -151
- package/src/headers/18/crypto/crypto_groups.h +0 -415
- package/src/headers/18/crypto/crypto_x509.h +0 -143
- package/src/headers/18/debug_utils-inl.h +0 -223
- package/src/headers/18/diagnosticfilename-inl.h +0 -33
- package/src/headers/18/env-inl.h +0 -1308
- package/src/headers/18/env.h +0 -1667
- package/src/headers/18/inspector_io.h +0 -78
- package/src/headers/18/inspector_socket.h +0 -60
- package/src/headers/18/inspector_socket_server.h +0 -110
- package/src/headers/18/js_stream.h +0 -52
- package/src/headers/18/memory_tracker.h +0 -284
- package/src/headers/18/module_wrap.h +0 -116
- package/src/headers/18/node_binding.h +0 -99
- package/src/headers/18/node_context_data.h +0 -44
- package/src/headers/18/node_contextify.h +0 -196
- package/src/headers/18/node_dir.h +0 -52
- package/src/headers/18/node_dtrace.h +0 -86
- package/src/headers/18/node_http2_state.h +0 -149
- package/src/headers/18/node_mem-inl.h +0 -112
- package/src/headers/18/node_native_module.h +0 -109
- package/src/headers/18/node_native_module_env.h +0 -71
- package/src/headers/18/node_object_wrap.h +0 -132
- package/src/headers/18/node_snapshot_builder.h +0 -43
- package/src/headers/18/node_snapshotable.h +0 -130
- package/src/headers/18/node_union_bytes.h +0 -103
- package/src/headers/18/node_url.h +0 -205
- package/src/headers/18/node_v8.h +0 -41
- package/src/headers/18/node_wasi.h +0 -108
- package/src/headers/18/node_win32_etw_provider-inl.h +0 -288
- package/src/headers/18/node_win32_etw_provider.h +0 -99
- package/src/headers/18/string_search.h +0 -638
- package/src/headers/18/tracing/node_trace_buffer.h +0 -83
- package/src/headers/18/tracing/node_trace_writer.h +0 -75
- package/src/headers/18/tracing/trace_event_common.h +0 -1109
- package/src/headers/18/tracing/traced_value.h +0 -70
- package/src/headers/18/v8abbr.h +0 -123
- /package/src/headers/{14 → 22}/aliased_struct-inl.h +0 -0
- /package/src/headers/{14 → 22}/aliased_struct.h +0 -0
- /package/src/headers/{16 → 22}/callback_queue-inl.h +0 -0
- /package/src/headers/{14 → 22}/connect_wrap.h +0 -0
- /package/src/headers/{14 → 22}/connection_wrap.h +0 -0
- /package/src/headers/{14 → 22}/diagnosticfilename-inl.h +0 -0
- /package/src/headers/{18 → 22}/histogram-inl.h +0 -0
- /package/src/headers/{14 → 22}/inspector_io.h +0 -0
- /package/src/headers/{14 → 22}/inspector_socket.h +0 -0
- /package/src/headers/{14 → 22}/inspector_socket_server.h +0 -0
- /package/src/headers/{14 → 22}/js_stream.h +0 -0
- /package/src/headers/{14 → 22}/node_dir.h +0 -0
- /package/src/headers/{14 → 22}/node_mem-inl.h +0 -0
- /package/src/headers/{16 → 22}/node_mem.h +0 -0
- /package/src/headers/{16 → 22}/node_mutex.h +0 -0
- /package/src/headers/{14 → 22}/node_object_wrap.h +0 -0
- /package/src/headers/{16 → 22}/node_process-inl.h +0 -0
- /package/src/headers/{18 → 22}/node_sockaddr-inl.h +0 -0
- /package/src/headers/{18 → 22}/node_wasm_web_api.h +0 -0
- /package/src/headers/{16 → 22}/pipe_wrap.h +0 -0
- /package/src/headers/{18 → 22}/req_wrap.h +0 -0
- /package/src/headers/{18 → 22}/timer_wrap-inl.h +0 -0
- /package/src/headers/{18 → 22}/timer_wrap.h +0 -0
- /package/src/headers/{18 → 22}/tracing/agent.h +0 -0
- /package/src/headers/{14 → 22}/tracing/trace_event_common.h +0 -0
- /package/src/headers/{18 → 22}/tty_wrap.h +0 -0
- /package/src/headers/{16 → 24}/aliased_struct-inl.h +0 -0
- /package/src/headers/{16 → 24}/aliased_struct.h +0 -0
- /package/src/headers/{18 → 24}/callback_queue-inl.h +0 -0
- /package/src/headers/{16 → 24}/connect_wrap.h +0 -0
- /package/src/headers/{16 → 24}/connection_wrap.h +0 -0
- /package/src/headers/{18 → 24}/crypto/crypto_spkac.h +0 -0
- /package/src/headers/{18 → 24}/crypto/crypto_timing.h +0 -0
- /package/src/headers/{16 → 24}/diagnosticfilename-inl.h +0 -0
- /package/src/headers/{16 → 24}/inspector_io.h +0 -0
- /package/src/headers/{16 → 24}/inspector_socket.h +0 -0
- /package/src/headers/{16 → 24}/inspector_socket_server.h +0 -0
- /package/src/headers/{16 → 24}/js_stream.h +0 -0
- /package/src/headers/{16 → 24}/node_dir.h +0 -0
- /package/src/headers/{18 → 24}/node_mem.h +0 -0
- /package/src/headers/{18 → 24}/node_mutex.h +0 -0
- /package/src/headers/{16 → 24}/node_object_wrap.h +0 -0
- /package/src/headers/{18 → 24}/node_process-inl.h +0 -0
- /package/src/headers/{14/tracing → 24}/node_trace_buffer.h +0 -0
- /package/src/headers/{14/tracing → 24}/node_trace_writer.h +0 -0
- /package/src/headers/{18 → 24}/pipe_wrap.h +0 -0
- /package/src/headers/{16/tracing → 24}/trace_event_common.h +0 -0
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
#ifndef SRC_NODE_PERF_COMMON_H_
|
|
2
|
-
#define SRC_NODE_PERF_COMMON_H_
|
|
3
|
-
|
|
4
|
-
#if defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS
|
|
5
|
-
|
|
6
|
-
#include "node.h"
|
|
7
|
-
#include "uv.h"
|
|
8
|
-
#include "v8.h"
|
|
9
|
-
|
|
10
|
-
#include <algorithm>
|
|
11
|
-
#include <map>
|
|
12
|
-
#include <string>
|
|
13
|
-
|
|
14
|
-
namespace node {
|
|
15
|
-
namespace performance {
|
|
16
|
-
|
|
17
|
-
#define PERFORMANCE_NOW() uv_hrtime()
|
|
18
|
-
|
|
19
|
-
// These occur before the environment is created. Cache them
|
|
20
|
-
// here and add them to the milestones when the env is init'd.
|
|
21
|
-
extern uint64_t performance_v8_start;
|
|
22
|
-
|
|
23
|
-
#define NODE_PERFORMANCE_MILESTONES(V) \
|
|
24
|
-
V(ENVIRONMENT, "environment") \
|
|
25
|
-
V(NODE_START, "nodeStart") \
|
|
26
|
-
V(V8_START, "v8Start") \
|
|
27
|
-
V(LOOP_START, "loopStart") \
|
|
28
|
-
V(LOOP_EXIT, "loopExit") \
|
|
29
|
-
V(BOOTSTRAP_COMPLETE, "bootstrapComplete")
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
#define NODE_PERFORMANCE_ENTRY_TYPES(V) \
|
|
33
|
-
V(NODE, "node") \
|
|
34
|
-
V(MARK, "mark") \
|
|
35
|
-
V(MEASURE, "measure") \
|
|
36
|
-
V(GC, "gc") \
|
|
37
|
-
V(FUNCTION, "function") \
|
|
38
|
-
V(HTTP2, "http2") \
|
|
39
|
-
V(HTTP, "http")
|
|
40
|
-
|
|
41
|
-
enum PerformanceMilestone {
|
|
42
|
-
#define V(name, _) NODE_PERFORMANCE_MILESTONE_##name,
|
|
43
|
-
NODE_PERFORMANCE_MILESTONES(V)
|
|
44
|
-
#undef V
|
|
45
|
-
NODE_PERFORMANCE_MILESTONE_INVALID
|
|
46
|
-
};
|
|
47
|
-
|
|
48
|
-
enum PerformanceEntryType {
|
|
49
|
-
#define V(name, _) NODE_PERFORMANCE_ENTRY_TYPE_##name,
|
|
50
|
-
NODE_PERFORMANCE_ENTRY_TYPES(V)
|
|
51
|
-
#undef V
|
|
52
|
-
NODE_PERFORMANCE_ENTRY_TYPE_INVALID
|
|
53
|
-
};
|
|
54
|
-
|
|
55
|
-
class PerformanceState {
|
|
56
|
-
public:
|
|
57
|
-
explicit PerformanceState(v8::Isolate* isolate) :
|
|
58
|
-
root(
|
|
59
|
-
isolate,
|
|
60
|
-
sizeof(performance_state_internal)),
|
|
61
|
-
milestones(
|
|
62
|
-
isolate,
|
|
63
|
-
offsetof(performance_state_internal, milestones),
|
|
64
|
-
NODE_PERFORMANCE_MILESTONE_INVALID,
|
|
65
|
-
root),
|
|
66
|
-
observers(
|
|
67
|
-
isolate,
|
|
68
|
-
offsetof(performance_state_internal, observers),
|
|
69
|
-
NODE_PERFORMANCE_ENTRY_TYPE_INVALID,
|
|
70
|
-
root) {
|
|
71
|
-
for (size_t i = 0; i < milestones.Length(); i++)
|
|
72
|
-
milestones[i] = -1.;
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
AliasedUint8Array root;
|
|
76
|
-
AliasedFloat64Array milestones;
|
|
77
|
-
AliasedUint32Array observers;
|
|
78
|
-
|
|
79
|
-
uint64_t performance_last_gc_start_mark = 0;
|
|
80
|
-
|
|
81
|
-
void Mark(enum PerformanceMilestone milestone,
|
|
82
|
-
uint64_t ts = PERFORMANCE_NOW());
|
|
83
|
-
|
|
84
|
-
private:
|
|
85
|
-
struct performance_state_internal {
|
|
86
|
-
// doubles first so that they are always sizeof(double)-aligned
|
|
87
|
-
double milestones[NODE_PERFORMANCE_MILESTONE_INVALID];
|
|
88
|
-
uint32_t observers[NODE_PERFORMANCE_ENTRY_TYPE_INVALID];
|
|
89
|
-
};
|
|
90
|
-
};
|
|
91
|
-
|
|
92
|
-
} // namespace performance
|
|
93
|
-
} // namespace node
|
|
94
|
-
|
|
95
|
-
#endif // defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS
|
|
96
|
-
|
|
97
|
-
#endif // SRC_NODE_PERF_COMMON_H_
|
|
@@ -1,189 +0,0 @@
|
|
|
1
|
-
#ifndef SRC_NODE_PLATFORM_H_
|
|
2
|
-
#define SRC_NODE_PLATFORM_H_
|
|
3
|
-
|
|
4
|
-
#if defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS
|
|
5
|
-
|
|
6
|
-
#include <queue>
|
|
7
|
-
#include <unordered_map>
|
|
8
|
-
#include <vector>
|
|
9
|
-
#include <functional>
|
|
10
|
-
|
|
11
|
-
#include "libplatform/libplatform.h"
|
|
12
|
-
#include "node.h"
|
|
13
|
-
#include "node_mutex.h"
|
|
14
|
-
#include "uv.h"
|
|
15
|
-
|
|
16
|
-
namespace node {
|
|
17
|
-
|
|
18
|
-
class NodePlatform;
|
|
19
|
-
class IsolateData;
|
|
20
|
-
class PerIsolatePlatformData;
|
|
21
|
-
|
|
22
|
-
template <class T>
|
|
23
|
-
class TaskQueue {
|
|
24
|
-
public:
|
|
25
|
-
TaskQueue();
|
|
26
|
-
~TaskQueue() = default;
|
|
27
|
-
|
|
28
|
-
void Push(std::unique_ptr<T> task);
|
|
29
|
-
std::unique_ptr<T> Pop();
|
|
30
|
-
std::unique_ptr<T> BlockingPop();
|
|
31
|
-
std::queue<std::unique_ptr<T>> PopAll();
|
|
32
|
-
void NotifyOfCompletion();
|
|
33
|
-
void BlockingDrain();
|
|
34
|
-
void Stop();
|
|
35
|
-
|
|
36
|
-
private:
|
|
37
|
-
Mutex lock_;
|
|
38
|
-
ConditionVariable tasks_available_;
|
|
39
|
-
ConditionVariable tasks_drained_;
|
|
40
|
-
int outstanding_tasks_;
|
|
41
|
-
bool stopped_;
|
|
42
|
-
std::queue<std::unique_ptr<T>> task_queue_;
|
|
43
|
-
};
|
|
44
|
-
|
|
45
|
-
struct DelayedTask {
|
|
46
|
-
std::unique_ptr<v8::Task> task;
|
|
47
|
-
uv_timer_t timer;
|
|
48
|
-
double timeout;
|
|
49
|
-
std::shared_ptr<PerIsolatePlatformData> platform_data;
|
|
50
|
-
};
|
|
51
|
-
|
|
52
|
-
// This acts as the foreground task runner for a given Isolate.
|
|
53
|
-
class PerIsolatePlatformData :
|
|
54
|
-
public IsolatePlatformDelegate,
|
|
55
|
-
public v8::TaskRunner,
|
|
56
|
-
public std::enable_shared_from_this<PerIsolatePlatformData> {
|
|
57
|
-
public:
|
|
58
|
-
PerIsolatePlatformData(v8::Isolate* isolate, uv_loop_t* loop);
|
|
59
|
-
~PerIsolatePlatformData() override;
|
|
60
|
-
|
|
61
|
-
std::shared_ptr<v8::TaskRunner> GetForegroundTaskRunner() override;
|
|
62
|
-
void PostTask(std::unique_ptr<v8::Task> task) override;
|
|
63
|
-
void PostIdleTask(std::unique_ptr<v8::IdleTask> task) override;
|
|
64
|
-
void PostDelayedTask(std::unique_ptr<v8::Task> task,
|
|
65
|
-
double delay_in_seconds) override;
|
|
66
|
-
bool IdleTasksEnabled() override { return false; }
|
|
67
|
-
|
|
68
|
-
// Non-nestable tasks are treated like regular tasks.
|
|
69
|
-
bool NonNestableTasksEnabled() const override { return true; }
|
|
70
|
-
bool NonNestableDelayedTasksEnabled() const override { return true; }
|
|
71
|
-
void PostNonNestableTask(std::unique_ptr<v8::Task> task) override;
|
|
72
|
-
void PostNonNestableDelayedTask(std::unique_ptr<v8::Task> task,
|
|
73
|
-
double delay_in_seconds) override;
|
|
74
|
-
|
|
75
|
-
void AddShutdownCallback(void (*callback)(void*), void* data);
|
|
76
|
-
void Shutdown();
|
|
77
|
-
|
|
78
|
-
// Returns true if work was dispatched or executed. New tasks that are
|
|
79
|
-
// posted during flushing of the queue are postponed until the next
|
|
80
|
-
// flushing.
|
|
81
|
-
bool FlushForegroundTasksInternal();
|
|
82
|
-
|
|
83
|
-
const uv_loop_t* event_loop() const { return loop_; }
|
|
84
|
-
|
|
85
|
-
private:
|
|
86
|
-
void DeleteFromScheduledTasks(DelayedTask* task);
|
|
87
|
-
void DecreaseHandleCount();
|
|
88
|
-
|
|
89
|
-
static void FlushTasks(uv_async_t* handle);
|
|
90
|
-
void RunForegroundTask(std::unique_ptr<v8::Task> task);
|
|
91
|
-
static void RunForegroundTask(uv_timer_t* timer);
|
|
92
|
-
|
|
93
|
-
struct ShutdownCallback {
|
|
94
|
-
void (*cb)(void*);
|
|
95
|
-
void* data;
|
|
96
|
-
};
|
|
97
|
-
typedef std::vector<ShutdownCallback> ShutdownCbList;
|
|
98
|
-
ShutdownCbList shutdown_callbacks_;
|
|
99
|
-
// shared_ptr to self to keep this object alive during shutdown.
|
|
100
|
-
std::shared_ptr<PerIsolatePlatformData> self_reference_;
|
|
101
|
-
uint32_t uv_handle_count_ = 1; // 1 = flush_tasks_
|
|
102
|
-
|
|
103
|
-
v8::Isolate* const isolate_;
|
|
104
|
-
uv_loop_t* const loop_;
|
|
105
|
-
uv_async_t* flush_tasks_ = nullptr;
|
|
106
|
-
TaskQueue<v8::Task> foreground_tasks_;
|
|
107
|
-
TaskQueue<DelayedTask> foreground_delayed_tasks_;
|
|
108
|
-
|
|
109
|
-
// Use a custom deleter because libuv needs to close the handle first.
|
|
110
|
-
typedef std::unique_ptr<DelayedTask, void(*)(DelayedTask*)>
|
|
111
|
-
DelayedTaskPointer;
|
|
112
|
-
std::vector<DelayedTaskPointer> scheduled_delayed_tasks_;
|
|
113
|
-
};
|
|
114
|
-
|
|
115
|
-
// This acts as the single worker thread task runner for all Isolates.
|
|
116
|
-
class WorkerThreadsTaskRunner {
|
|
117
|
-
public:
|
|
118
|
-
explicit WorkerThreadsTaskRunner(int thread_pool_size);
|
|
119
|
-
|
|
120
|
-
void PostTask(std::unique_ptr<v8::Task> task);
|
|
121
|
-
void PostDelayedTask(std::unique_ptr<v8::Task> task,
|
|
122
|
-
double delay_in_seconds);
|
|
123
|
-
|
|
124
|
-
void BlockingDrain();
|
|
125
|
-
void Shutdown();
|
|
126
|
-
|
|
127
|
-
int NumberOfWorkerThreads() const;
|
|
128
|
-
|
|
129
|
-
private:
|
|
130
|
-
TaskQueue<v8::Task> pending_worker_tasks_;
|
|
131
|
-
|
|
132
|
-
class DelayedTaskScheduler;
|
|
133
|
-
std::unique_ptr<DelayedTaskScheduler> delayed_task_scheduler_;
|
|
134
|
-
|
|
135
|
-
std::vector<std::unique_ptr<uv_thread_t>> threads_;
|
|
136
|
-
};
|
|
137
|
-
|
|
138
|
-
class NodePlatform : public MultiIsolatePlatform {
|
|
139
|
-
public:
|
|
140
|
-
NodePlatform(int thread_pool_size,
|
|
141
|
-
v8::TracingController* tracing_controller);
|
|
142
|
-
~NodePlatform() override;
|
|
143
|
-
|
|
144
|
-
void DrainTasks(v8::Isolate* isolate) override;
|
|
145
|
-
void Shutdown();
|
|
146
|
-
|
|
147
|
-
// v8::Platform implementation.
|
|
148
|
-
int NumberOfWorkerThreads() override;
|
|
149
|
-
void CallOnWorkerThread(std::unique_ptr<v8::Task> task) override;
|
|
150
|
-
void CallDelayedOnWorkerThread(std::unique_ptr<v8::Task> task,
|
|
151
|
-
double delay_in_seconds) override;
|
|
152
|
-
bool IdleTasksEnabled(v8::Isolate* isolate) override;
|
|
153
|
-
double MonotonicallyIncreasingTime() override;
|
|
154
|
-
double CurrentClockTimeMillis() override;
|
|
155
|
-
v8::TracingController* GetTracingController() override;
|
|
156
|
-
bool FlushForegroundTasks(v8::Isolate* isolate) override;
|
|
157
|
-
|
|
158
|
-
void RegisterIsolate(v8::Isolate* isolate, uv_loop_t* loop) override;
|
|
159
|
-
void RegisterIsolate(v8::Isolate* isolate,
|
|
160
|
-
IsolatePlatformDelegate* delegate) override;
|
|
161
|
-
|
|
162
|
-
void UnregisterIsolate(v8::Isolate* isolate) override;
|
|
163
|
-
void AddIsolateFinishedCallback(v8::Isolate* isolate,
|
|
164
|
-
void (*callback)(void*), void* data) override;
|
|
165
|
-
|
|
166
|
-
std::shared_ptr<v8::TaskRunner> GetForegroundTaskRunner(
|
|
167
|
-
v8::Isolate* isolate) override;
|
|
168
|
-
|
|
169
|
-
Platform::StackTracePrinter GetStackTracePrinter() override;
|
|
170
|
-
|
|
171
|
-
private:
|
|
172
|
-
IsolatePlatformDelegate* ForIsolate(v8::Isolate* isolate);
|
|
173
|
-
std::shared_ptr<PerIsolatePlatformData> ForNodeIsolate(v8::Isolate* isolate);
|
|
174
|
-
|
|
175
|
-
Mutex per_isolate_mutex_;
|
|
176
|
-
using DelegatePair = std::pair<
|
|
177
|
-
IsolatePlatformDelegate*, std::shared_ptr<PerIsolatePlatformData>>;
|
|
178
|
-
std::unordered_map<v8::Isolate*, DelegatePair> per_isolate_;
|
|
179
|
-
|
|
180
|
-
v8::TracingController* tracing_controller_;
|
|
181
|
-
std::shared_ptr<WorkerThreadsTaskRunner> worker_thread_task_runner_;
|
|
182
|
-
bool has_shut_down_ = false;
|
|
183
|
-
};
|
|
184
|
-
|
|
185
|
-
} // namespace node
|
|
186
|
-
|
|
187
|
-
#endif // defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS
|
|
188
|
-
|
|
189
|
-
#endif // SRC_NODE_PLATFORM_H_
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
#ifndef SRC_NODE_PROCESS_H_
|
|
2
|
-
#define SRC_NODE_PROCESS_H_
|
|
3
|
-
|
|
4
|
-
#if defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS
|
|
5
|
-
|
|
6
|
-
#include "v8.h"
|
|
7
|
-
|
|
8
|
-
namespace node {
|
|
9
|
-
|
|
10
|
-
v8::MaybeLocal<v8::Object> CreateEnvVarProxy(v8::Local<v8::Context> context,
|
|
11
|
-
v8::Isolate* isolate);
|
|
12
|
-
|
|
13
|
-
// Most of the time, it's best to use `console.error` to write
|
|
14
|
-
// to the process.stderr stream. However, in some cases, such as
|
|
15
|
-
// when debugging the stream.Writable class or the process.nextTick
|
|
16
|
-
// function, it is useful to bypass JavaScript entirely.
|
|
17
|
-
void RawDebug(const v8::FunctionCallbackInfo<v8::Value>& args);
|
|
18
|
-
|
|
19
|
-
v8::MaybeLocal<v8::Value> ProcessEmit(Environment* env,
|
|
20
|
-
const char* event,
|
|
21
|
-
v8::Local<v8::Value> message);
|
|
22
|
-
|
|
23
|
-
v8::Maybe<bool> ProcessEmitWarningGeneric(Environment* env,
|
|
24
|
-
const char* warning,
|
|
25
|
-
const char* type = nullptr,
|
|
26
|
-
const char* code = nullptr);
|
|
27
|
-
|
|
28
|
-
v8::Maybe<bool> ProcessEmitWarning(Environment* env, const char* fmt, ...);
|
|
29
|
-
v8::Maybe<bool> ProcessEmitExperimentalWarning(Environment* env,
|
|
30
|
-
const char* warning);
|
|
31
|
-
v8::Maybe<bool> ProcessEmitDeprecationWarning(Environment* env,
|
|
32
|
-
const char* warning,
|
|
33
|
-
const char* deprecation_code);
|
|
34
|
-
|
|
35
|
-
v8::MaybeLocal<v8::Object> CreateProcessObject(Environment* env);
|
|
36
|
-
void PatchProcessObject(const v8::FunctionCallbackInfo<v8::Value>& args);
|
|
37
|
-
|
|
38
|
-
} // namespace node
|
|
39
|
-
#endif // defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS
|
|
40
|
-
#endif // SRC_NODE_PROCESS_H_
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
#pragma once
|
|
2
|
-
|
|
3
|
-
#include "node.h"
|
|
4
|
-
#include "node_buffer.h"
|
|
5
|
-
#include "uv.h"
|
|
6
|
-
#include "util.h"
|
|
7
|
-
|
|
8
|
-
#ifndef _WIN32
|
|
9
|
-
#include <sys/types.h>
|
|
10
|
-
#include <unistd.h>
|
|
11
|
-
#endif
|
|
12
|
-
|
|
13
|
-
#include <iomanip>
|
|
14
|
-
|
|
15
|
-
namespace report {
|
|
16
|
-
|
|
17
|
-
// Function declarations - functions in src/node_report.cc
|
|
18
|
-
std::string TriggerNodeReport(v8::Isolate* isolate,
|
|
19
|
-
node::Environment* env,
|
|
20
|
-
const char* message,
|
|
21
|
-
const char* trigger,
|
|
22
|
-
const std::string& name,
|
|
23
|
-
v8::Local<v8::Object> error);
|
|
24
|
-
void GetNodeReport(v8::Isolate* isolate,
|
|
25
|
-
node::Environment* env,
|
|
26
|
-
const char* message,
|
|
27
|
-
const char* trigger,
|
|
28
|
-
v8::Local<v8::Object> error,
|
|
29
|
-
std::ostream& out);
|
|
30
|
-
|
|
31
|
-
// Function declarations - utility functions in src/node_report_utils.cc
|
|
32
|
-
void WalkHandle(uv_handle_t* h, void* arg);
|
|
33
|
-
|
|
34
|
-
template <typename T>
|
|
35
|
-
std::string ValueToHexString(T value) {
|
|
36
|
-
std::stringstream hex;
|
|
37
|
-
|
|
38
|
-
hex << "0x" << std::setfill('0') << std::setw(sizeof(T) * 2) << std::hex <<
|
|
39
|
-
value;
|
|
40
|
-
return hex.str();
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
// Function declarations - export functions in src/node_report_module.cc
|
|
44
|
-
void WriteReport(const v8::FunctionCallbackInfo<v8::Value>& info);
|
|
45
|
-
void GetReport(const v8::FunctionCallbackInfo<v8::Value>& info);
|
|
46
|
-
|
|
47
|
-
} // namespace report
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
#ifndef SRC_NODE_REVERT_H_
|
|
2
|
-
#define SRC_NODE_REVERT_H_
|
|
3
|
-
|
|
4
|
-
#if defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS
|
|
5
|
-
|
|
6
|
-
#include "node.h"
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* Note that it is expected for this list to vary across specific LTS and
|
|
10
|
-
* Stable versions! Only CVE's whose fixes require *breaking* changes within
|
|
11
|
-
* a given LTS or Stable may be added to this list, and only with TSC
|
|
12
|
-
* consensus.
|
|
13
|
-
*
|
|
14
|
-
* For *master* this list should always be empty!
|
|
15
|
-
**/
|
|
16
|
-
namespace node {
|
|
17
|
-
|
|
18
|
-
#define SECURITY_REVERSIONS(XX) \
|
|
19
|
-
// XX(CVE_2016_PEND, "CVE-2016-PEND", "Vulnerability Title")
|
|
20
|
-
|
|
21
|
-
enum reversion {
|
|
22
|
-
#define V(code, ...) SECURITY_REVERT_##code,
|
|
23
|
-
SECURITY_REVERSIONS(V)
|
|
24
|
-
#undef V
|
|
25
|
-
};
|
|
26
|
-
|
|
27
|
-
namespace per_process {
|
|
28
|
-
extern unsigned int reverted_cve;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
inline const char* RevertMessage(const reversion cve) {
|
|
32
|
-
#define V(code, label, msg) case SECURITY_REVERT_##code: return label ": " msg;
|
|
33
|
-
switch (cve) {
|
|
34
|
-
SECURITY_REVERSIONS(V)
|
|
35
|
-
default:
|
|
36
|
-
return "Unknown";
|
|
37
|
-
}
|
|
38
|
-
#undef V
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
inline void Revert(const reversion cve) {
|
|
42
|
-
per_process::reverted_cve |= 1 << cve;
|
|
43
|
-
printf("SECURITY WARNING: Reverting %s\n", RevertMessage(cve));
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
inline void Revert(const char* cve, std::string* error) {
|
|
47
|
-
#define V(code, label, _) \
|
|
48
|
-
if (strcmp(cve, label) == 0) return Revert(SECURITY_REVERT_##code);
|
|
49
|
-
SECURITY_REVERSIONS(V)
|
|
50
|
-
#undef V
|
|
51
|
-
*error = "Error: Attempt to revert an unknown CVE [";
|
|
52
|
-
*error += cve;
|
|
53
|
-
*error += ']';
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
inline bool IsReverted(const reversion cve) {
|
|
57
|
-
return per_process::reverted_cve & (1 << cve);
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
inline bool IsReverted(const char* cve) {
|
|
61
|
-
#define V(code, label, _) \
|
|
62
|
-
if (strcmp(cve, label) == 0) return IsReverted(SECURITY_REVERT_##code);
|
|
63
|
-
SECURITY_REVERSIONS(V)
|
|
64
|
-
return false;
|
|
65
|
-
#undef V
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
} // namespace node
|
|
69
|
-
|
|
70
|
-
#endif // defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS
|
|
71
|
-
|
|
72
|
-
#endif // SRC_NODE_REVERT_H_
|