summaryrefslogtreecommitdiffhomepage
path: root/mullvad_cli/src/cli.rs
diff options
context:
space:
mode:
authorLinus Färnstrand <linus@mullvad.net>2017-07-06 15:55:53 +0200
committerLinus Färnstrand <linus@mullvad.net>2017-07-06 22:37:01 +0200
commit239e101a91d67ee83d8f5e1c55cea60a095bbbaa (patch)
treeb65156026e4089c37c1d0ba1bf05b7f956d6a9e7 /mullvad_cli/src/cli.rs
parent84ab812dfbbd6dae47eacc16d950d8856b1916be (diff)
downloadmullvadvpn-239e101a91d67ee83d8f5e1c55cea60a095bbbaa.tar.xz
mullvadvpn-239e101a91d67ee83d8f5e1c55cea60a095bbbaa.zip
Renamed talpid_cli to mullvad_cli
Diffstat (limited to 'mullvad_cli/src/cli.rs')
-rw-r--r--mullvad_cli/src/cli.rs24
1 files changed, 24 insertions, 0 deletions
diff --git a/mullvad_cli/src/cli.rs b/mullvad_cli/src/cli.rs
new file mode 100644
index 0000000000..c21e7f1562
--- /dev/null
+++ b/mullvad_cli/src/cli.rs
@@ -0,0 +1,24 @@
+use clap::{App, AppSettings, Arg, ArgMatches, SubCommand};
+
+pub fn get_matches() -> ArgMatches<'static> {
+ let app = create_app();
+ app.clone().get_matches()
+}
+
+fn create_app() -> App<'static, 'static> {
+ App::new(crate_name!())
+ .version(crate_version!())
+ .author(crate_authors!())
+ .about(crate_description!())
+ .setting(AppSettings::SubcommandRequired)
+ .subcommand(SubCommand::with_name("account")
+ .about("Control and display information about the configured Mullvad account")
+ .setting(AppSettings::SubcommandRequired)
+ .subcommand(SubCommand::with_name("set")
+ .about("Change the Mullvad account")
+ .arg(Arg::with_name("token")
+ .help("The Mullvad account token to configure the daemon with")
+ .required(true)))
+ .subcommand(SubCommand::with_name("get")
+ .about("Display information about the currently configured account")))
+}