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)) {
|
if ((s && !newIsSpecial) || (!s && newIsSpecial)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (protocol === 'file:' &&
|
||||||
|
(ctx.username || ctx.password || ctx.port !== undefined)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (ctx.scheme === 'file:' && !ctx.host) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (newIsSpecial) {
|
if (newIsSpecial) {
|
||||||
ctx.flags |= binding.URL_FLAGS_SPECIAL;
|
ctx.flags |= binding.URL_FLAGS_SPECIAL;
|
||||||
} else {
|
} else {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user