url: restrict setting protocol to "file"
Since file URLs can not have `username/password/port`, the specification was updated to restrict setting protocol to "file". Refs: https://github.com/whatwg/url/pull/269 Fixes: https://github.com/nodejs/node/issues/11785 PR-URL: https://github.com/nodejs/node/pull/11887 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Timothy Gu <timothygu99@gmail.com> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
This commit is contained in:
parent
ef4768754c
commit
60c8a35744
@ -133,6 +133,13 @@ function onParseProtocolComplete(flags, protocol, username, password,
|
||||
if ((s && !newIsSpecial) || (!s && newIsSpecial)) {
|
||||
return;
|
||||
}
|
||||
if (protocol === 'file:' &&
|
||||
(ctx.username || ctx.password || ctx.port !== undefined)) {
|
||||
return;
|
||||
}
|
||||
if (ctx.scheme === 'file:' && !ctx.host) {
|
||||
return;
|
||||
}
|
||||
if (newIsSpecial) {
|
||||
ctx.flags |= binding.URL_FLAGS_SPECIAL;
|
||||
} else {
|
||||
|
Loading…
x
Reference in New Issue
Block a user