summaryrefslogtreecommitdiff
path: root/src/main.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/main.rs')
-rw-r--r--src/main.rs18
1 files changed, 11 insertions, 7 deletions
diff --git a/src/main.rs b/src/main.rs
index 1a00173..296603d 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -12,7 +12,9 @@ fn help() {
}
fn parse_args() -> Option<String> {
+ let mut config_fname = "/etc/sheldond.conf".to_string();
let mut args = env::args();
+
loop {
match args.next() {
Some(arg) => {
@@ -21,15 +23,14 @@ fn parse_args() -> Option<String> {
return None;
}
if arg == "-c" || arg == "--config" {
- let config_fname = args.next().unwrap();
- return Some(config_fname);
+ config_fname = args.next().unwrap().to_string();
}
}
None => break,
}
}
- Some("/etc/sheldond.conf".to_string())
+ Some(config_fname)
}
fn parse_config(fname: String) -> server::ServerConfig {
@@ -79,10 +80,13 @@ fn parse_config(fname: String) -> server::ServerConfig {
}
fn main() {
- println!("sheldond {}", match option_env!("CARGO_PKG_VERSION") {
- Some(v) => v,
- None => "",
- });
+ println!(
+ "sheldond {}",
+ match option_env!("CARGO_PKG_VERSION") {
+ Some(v) => v,
+ None => "",
+ }
+ );
let config_fname = match parse_args() {
Some(config_fname) => config_fname,