mirror of
https://github.com/denoland/deno.git
synced 2024-11-28 16:20:57 -05:00
fix(cli): Only set allow net flag for deno serve if not already allowed all (#25743)
Fixes #25740
This commit is contained in:
parent
dad5678baa
commit
6a04bbe076
1 changed files with 29 additions and 1 deletions
|
@ -4738,7 +4738,10 @@ fn serve_parse(
|
||||||
format!("{host}:{port}")
|
format!("{host}:{port}")
|
||||||
}])?;
|
}])?;
|
||||||
match &mut flags.permissions.allow_net {
|
match &mut flags.permissions.allow_net {
|
||||||
None => flags.permissions.allow_net = Some(allowed),
|
None if !flags.permissions.allow_all => {
|
||||||
|
flags.permissions.allow_net = Some(allowed)
|
||||||
|
}
|
||||||
|
None => {}
|
||||||
Some(v) => {
|
Some(v) => {
|
||||||
if !v.is_empty() {
|
if !v.is_empty() {
|
||||||
v.extend(allowed);
|
v.extend(allowed);
|
||||||
|
@ -10747,6 +10750,31 @@ mod tests {
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn serve_with_allow_all() {
|
||||||
|
let r = flags_from_vec(svec!["deno", "serve", "--allow-all", "./main.ts"]);
|
||||||
|
let flags = r.unwrap();
|
||||||
|
assert_eq!(
|
||||||
|
&flags,
|
||||||
|
&Flags {
|
||||||
|
subcommand: DenoSubcommand::Serve(ServeFlags::new_default(
|
||||||
|
"./main.ts".into(),
|
||||||
|
8000,
|
||||||
|
"0.0.0.0"
|
||||||
|
)),
|
||||||
|
permissions: PermissionFlags {
|
||||||
|
allow_all: true,
|
||||||
|
allow_net: None,
|
||||||
|
..Default::default()
|
||||||
|
},
|
||||||
|
code_cache_enabled: true,
|
||||||
|
..Default::default()
|
||||||
|
}
|
||||||
|
);
|
||||||
|
// just make sure this doesn't panic
|
||||||
|
let _ = flags.permissions.to_options();
|
||||||
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn escape_and_split_commas_test() {
|
fn escape_and_split_commas_test() {
|
||||||
assert_eq!(escape_and_split_commas("foo".to_string()).unwrap(), ["foo"]);
|
assert_eq!(escape_and_split_commas("foo".to_string()).unwrap(), ["foo"]);
|
||||||
|
|
Loading…
Reference in a new issue