diff --git a/lib/internal/bootstrap/node.js b/lib/internal/bootstrap/node.js index 8f05c1a4ce1b53..284778becfed64 100644 --- a/lib/internal/bootstrap/node.js +++ b/lib/internal/bootstrap/node.js @@ -375,7 +375,8 @@ 'tcp_wrap', 'tls_wrap', 'util', - 'async_wrap']); + 'async_wrap', + 'url']); process.binding = function binding(name) { return internalBindingWhitelist.has(name) ? internalBinding(name) : diff --git a/lib/internal/url.js b/lib/internal/url.js index 2afd2db9b72f16..40b3104baf4116 100644 --- a/lib/internal/url.js +++ b/lib/internal/url.js @@ -37,6 +37,7 @@ let querystring; const { platform } = process; const isWindows = platform === 'win32'; +const { internalBinding } = require('internal/bootstrap/loaders'); const { domainToASCII: _domainToASCII, domainToUnicode: _domainToUnicode, @@ -60,7 +61,7 @@ const { kPort, kQuery, kSchemeStart -} = process.binding('url'); +} = internalBinding('url'); const context = Symbol('context'); const cannotBeBase = Symbol('cannot-be-base'); diff --git a/src/node_url.cc b/src/node_url.cc index 4d57027dd29ce9..f1008c917de31f 100644 --- a/src/node_url.cc +++ b/src/node_url.cc @@ -2420,4 +2420,4 @@ static void Initialize(Local target, } // namespace url } // namespace node -NODE_BUILTIN_MODULE_CONTEXT_AWARE(url, node::url::Initialize) +NODE_MODULE_CONTEXT_AWARE_INTERNAL(url, node::url::Initialize) diff --git a/test/parallel/test-process-binding-internalbinding-whitelist.js b/test/parallel/test-process-binding-internalbinding-whitelist.js index 63ce002887db8a..49b4fbd82caee5 100644 --- a/test/parallel/test-process-binding-internalbinding-whitelist.js +++ b/test/parallel/test-process-binding-internalbinding-whitelist.js @@ -12,3 +12,4 @@ assert(process.binding('v8')); assert(process.binding('stream_wrap')); assert(process.binding('signal_wrap')); assert(process.binding('contextify')); +assert(process.binding('url'));