summaryrefslogtreecommitdiff
path: root/src/main.rs
diff options
context:
space:
mode:
authorJan Wolff <janw@mailbox.org>2020-05-17 19:46:48 +0200
committerJan Wolff <janw@mailbox.org>2020-05-17 19:46:48 +0200
commitfaab34d44f11af3821c23d7075575f6570f984bd (patch)
tree5e534c15acc2cf9ba2567036381f547747a3f689 /src/main.rs
parent72c1e3c8132a8269833396ab955586185e7b0e58 (diff)
update readme, default configuration path
Diffstat (limited to 'src/main.rs')
-rw-r--r--src/main.rs16
1 files changed, 10 insertions, 6 deletions
diff --git a/src/main.rs b/src/main.rs
index 5639158..7e5787a 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -20,6 +20,10 @@ fn parse_args() -> Option<String> {
loop {
match args.next() {
Some(arg) => {
+ if arg == "-h" || arg == "--help" {
+ help();
+ return None;
+ }
if arg == "-c" || arg == "--config" {
let config_fname = args.next().unwrap();
return Some(config_fname);
@@ -29,7 +33,7 @@ fn parse_args() -> Option<String> {
}
}
- None
+ Some("/etc/sheldond.conf".to_string())
}
fn parse_config(fname: String) -> server::ServerConfig {
@@ -38,8 +42,8 @@ fn parse_config(fname: String) -> server::ServerConfig {
let file = match File::open(path) {
Ok(file) => BufReader::new(file),
- Err(e) => {
- panic!(e);
+ Err(_) => {
+ panic!("could not open config file: {}", fname);
}
};
@@ -77,13 +81,13 @@ fn parse_config(fname: String) -> server::ServerConfig {
}
fn main() {
- let config = match parse_args() {
- Some(config_fname) => parse_config(config_fname),
+ let config_fname = match parse_args() {
+ Some(config_fname) => config_fname,
None => {
- help();
return;
}
};
+ let config = parse_config(config_fname);
let server = server::Server::new(&config);
server.serve();