summaryrefslogtreecommitdiff
path: root/cli/args
diff options
context:
space:
mode:
authorLeo Kettmeir <crowlkats@toaxl.com>2024-09-20 11:10:46 -0700
committerGitHub <noreply@github.com>2024-09-20 11:10:46 -0700
commit3e053f8f06cfd83bd3f162ee68a0eca849e50d2a (patch)
tree969507fb482f8a5ea4f71872f4934035bb598ac1 /cli/args
parent92fc702cec555a08c38509bfb10edd3d163af241 (diff)
fix(flags): properly error out for urls (#25770)
Closes https://github.com/denoland/deno/issues/25760
Diffstat (limited to 'cli/args')
-rw-r--r--cli/args/flags.rs18
1 files changed, 16 insertions, 2 deletions
diff --git a/cli/args/flags.rs b/cli/args/flags.rs
index 691927353..7f67f6702 100644
--- a/cli/args/flags.rs
+++ b/cli/args/flags.rs
@@ -5084,12 +5084,12 @@ fn permission_args_parse(
}
if let Some(net_wl) = matches.remove_many::<String>("allow-net") {
- let net_allowlist = flags_net::parse(net_wl.collect()).unwrap();
+ let net_allowlist = flags_net::parse(net_wl.collect())?;
flags.permissions.allow_net = Some(net_allowlist);
}
if let Some(net_wl) = matches.remove_many::<String>("deny-net") {
- let net_denylist = flags_net::parse(net_wl.collect()).unwrap();
+ let net_denylist = flags_net::parse(net_wl.collect())?;
flags.permissions.deny_net = Some(net_denylist);
}
@@ -10801,4 +10801,18 @@ mod tests {
["foo,", "bar"]
);
}
+
+ #[test]
+ fn net_flag_with_url() {
+ let r = flags_from_vec(svec![
+ "deno",
+ "run",
+ "--allow-net=https://example.com",
+ "script.ts"
+ ]);
+ assert_eq!(
+ r.unwrap_err().to_string(),
+ "error: invalid value 'https://example.com': URLs are not supported, only domains and ips"
+ );
+ }
}