From 2662c59fcffe1b62e019b08d1e22c1cd5c741066 Mon Sep 17 00:00:00 2001 From: Jonas Diemer Date: Tue, 2 Aug 2022 15:02:09 +0200 Subject: Added option restrict-upload-dir --- src/args.rs | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/args.rs') diff --git a/src/args.rs b/src/args.rs index a8718bd..4edf455 100644 --- a/src/args.rs +++ b/src/args.rs @@ -111,6 +111,10 @@ pub struct CliArgs { #[clap(short = 'u', long = "upload-files")] pub file_upload: bool, + /// Restrict upload directories + #[clap(long = "restrict-upload-dir")] + pub restrict_upload_dir: Vec, + /// Enable creating directories #[clap(short = 'U', long = "mkdir", requires = "file-upload")] pub mkdir_enabled: bool, -- cgit v1.2.3 From 66f34ca7035c404ea7ac08c2601d428985a54dd1 Mon Sep 17 00:00:00 2001 From: Jonas Diemer Date: Wed, 3 Aug 2022 07:50:07 +0200 Subject: Added dependency to -u for --restrict-upload-dir --- src/args.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/args.rs') diff --git a/src/args.rs b/src/args.rs index 4edf455..c7c988b 100644 --- a/src/args.rs +++ b/src/args.rs @@ -112,7 +112,8 @@ pub struct CliArgs { pub file_upload: bool, /// Restrict upload directories - #[clap(long = "restrict-upload-dir")] + #[clap(long = "restrict-upload-dir", requires = "file-upload")] + pub restrict_upload_dir: Vec, /// Enable creating directories -- cgit v1.2.3 From 455abe23d0fd2114f7836694502892990180577d Mon Sep 17 00:00:00 2001 From: Jonas Diemer Date: Wed, 3 Aug 2022 13:02:21 +0200 Subject: Switched to use of PathBuf, fixed for subdirs --- src/args.rs | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'src/args.rs') diff --git a/src/args.rs b/src/args.rs index c7c988b..6c6d6e0 100644 --- a/src/args.rs +++ b/src/args.rs @@ -112,9 +112,8 @@ pub struct CliArgs { pub file_upload: bool, /// Restrict upload directories - #[clap(long = "restrict-upload-dir", requires = "file-upload")] - - pub restrict_upload_dir: Vec, + #[clap(long = "restrict-upload-dir", requires = "file-upload", value_hint = ValueHint::FilePath)] + pub restrict_upload_dir: Vec, /// Enable creating directories #[clap(short = 'U', long = "mkdir", requires = "file-upload")] -- cgit v1.2.3 From 550ae0151c1dadc6c1f00df300d88528c29fbf49 Mon Sep 17 00:00:00 2001 From: Jonas Diemer Date: Thu, 4 Aug 2022 11:20:37 +0200 Subject: Renamed option for more clarity --- src/args.rs | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'src/args.rs') diff --git a/src/args.rs b/src/args.rs index 6c6d6e0..56c834c 100644 --- a/src/args.rs +++ b/src/args.rs @@ -111,9 +111,11 @@ pub struct CliArgs { #[clap(short = 'u', long = "upload-files")] pub file_upload: bool, - /// Restrict upload directories - #[clap(long = "restrict-upload-dir", requires = "file-upload", value_hint = ValueHint::FilePath)] - pub restrict_upload_dir: Vec, + /// Allowed upload directories (together with -u) + /// + /// If this is set, uploads are only allowed into the provided directories. + #[clap(long, requires = "file-upload", value_hint = ValueHint::FilePath)] + pub allowed_upload_dir: Vec, /// Enable creating directories #[clap(short = 'U', long = "mkdir", requires = "file-upload")] -- cgit v1.2.3 From e2ae526727e0154a1bc618971011788ee24e8748 Mon Sep 17 00:00:00 2001 From: Jonas Diemer Date: Mon, 15 Aug 2022 22:15:57 +0200 Subject: Use argument -u instead of --allowed-upload-dir --- src/args.rs | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) (limited to 'src/args.rs') diff --git a/src/args.rs b/src/args.rs index 56c834c..8cd8ffa 100644 --- a/src/args.rs +++ b/src/args.rs @@ -108,28 +108,22 @@ pub struct CliArgs { pub qrcode: bool, /// Enable file uploading - #[clap(short = 'u', long = "upload-files")] - pub file_upload: bool, - - /// Allowed upload directories (together with -u) - /// - /// If this is set, uploads are only allowed into the provided directories. - #[clap(long, requires = "file-upload", value_hint = ValueHint::FilePath)] - pub allowed_upload_dir: Vec, + #[clap(short = 'u', long = "upload-files", value_hint = ValueHint::FilePath, min_values = 0)] + pub allowed_upload_dir: Option>, /// Enable creating directories - #[clap(short = 'U', long = "mkdir", requires = "file-upload")] + #[clap(short = 'U', long = "mkdir", requires = "allowed-upload-dir")] pub mkdir_enabled: bool, /// Specify uploadable media types - #[clap(arg_enum, short = 'm', long = "media-type", requires = "file-upload")] + #[clap(arg_enum, short = 'm', long = "media-type", requires = "allowed-upload-dir")] pub media_type: Option>, /// Directly specify the uploadable media type expression #[clap( short = 'M', long = "raw-media-type", - requires = "file-upload", + requires = "allowed-upload-dir", conflicts_with = "media-type" )] pub media_type_raw: Option, -- cgit v1.2.3 From d905b68ca93c42769c3ebddf472a2916dc75b012 Mon Sep 17 00:00:00 2001 From: Jonas Diemer Date: Wed, 17 Aug 2022 10:28:46 +0200 Subject: cargo fmt --- src/args.rs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'src/args.rs') diff --git a/src/args.rs b/src/args.rs index 8cd8ffa..6ed1e0d 100644 --- a/src/args.rs +++ b/src/args.rs @@ -116,7 +116,12 @@ pub struct CliArgs { pub mkdir_enabled: bool, /// Specify uploadable media types - #[clap(arg_enum, short = 'm', long = "media-type", requires = "allowed-upload-dir")] + #[clap( + arg_enum, + short = 'm', + long = "media-type", + requires = "allowed-upload-dir" + )] pub media_type: Option>, /// Directly specify the uploadable media type expression -- cgit v1.2.3 From 0d722da1e66b7217f3486351f39faa90e5911fd3 Mon Sep 17 00:00:00 2001 From: Jonas Diemer Date: Wed, 17 Aug 2022 10:31:10 +0200 Subject: Improved output of -h --- src/args.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/args.rs') diff --git a/src/args.rs b/src/args.rs index 6ed1e0d..8757bc8 100644 --- a/src/args.rs +++ b/src/args.rs @@ -107,7 +107,7 @@ pub struct CliArgs { #[clap(short = 'q', long = "qrcode")] pub qrcode: bool, - /// Enable file uploading + /// Enable file uploading (and optionally specify for which directory) #[clap(short = 'u', long = "upload-files", value_hint = ValueHint::FilePath, min_values = 0)] pub allowed_upload_dir: Option>, -- cgit v1.2.3