Better error handling for invalid bind address, also return exit code failure on failure
This commit is contained in:
parent
700406992a
commit
09f203e99b
11
src/main.rs
11
src/main.rs
@ -5,6 +5,7 @@ use std::{
|
|||||||
io::{BufReader, Error, ErrorKind, Result, prelude::*},
|
io::{BufReader, Error, ErrorKind, Result, prelude::*},
|
||||||
net::{TcpListener, TcpStream},
|
net::{TcpListener, TcpStream},
|
||||||
path::{Path, PathBuf},
|
path::{Path, PathBuf},
|
||||||
|
process::ExitCode,
|
||||||
sync::{
|
sync::{
|
||||||
Arc, Mutex,
|
Arc, Mutex,
|
||||||
atomic::{AtomicUsize, Ordering},
|
atomic::{AtomicUsize, Ordering},
|
||||||
@ -32,10 +33,10 @@ use vn_settings::{
|
|||||||
|
|
||||||
mod dialog;
|
mod dialog;
|
||||||
|
|
||||||
fn main() {
|
fn main() -> ExitCode {
|
||||||
let Ok(path) = env::current_dir() else {
|
let Ok(path) = env::current_dir() else {
|
||||||
eprintln!("Current directory does not exist!");
|
eprintln!("Current directory does not exist!");
|
||||||
return;
|
return ExitCode::FAILURE;
|
||||||
};
|
};
|
||||||
|
|
||||||
let mut args = env::args();
|
let mut args = env::args();
|
||||||
@ -44,6 +45,7 @@ fn main() {
|
|||||||
let password = args.next();
|
let password = args.next();
|
||||||
let partial_password = args.next();
|
let partial_password = args.next();
|
||||||
start_server(path, &address, password, partial_password);
|
start_server(path, &address, password, partial_password);
|
||||||
|
ExitCode::FAILURE
|
||||||
}
|
}
|
||||||
|
|
||||||
fn start_server(
|
fn start_server(
|
||||||
@ -52,7 +54,10 @@ fn start_server(
|
|||||||
password: Option<String>,
|
password: Option<String>,
|
||||||
partial_password: Option<String>,
|
partial_password: Option<String>,
|
||||||
) {
|
) {
|
||||||
let listener = TcpListener::bind(address).expect("Invalid bind address!");
|
let Ok(listener) = TcpListener::bind(address) else {
|
||||||
|
eprintln!("Invalid bind address {address:?}!");
|
||||||
|
return;
|
||||||
|
};
|
||||||
eprintln!("Strated server!");
|
eprintln!("Strated server!");
|
||||||
|
|
||||||
let context: Arc<Mutex<Context>> = Arc::default();
|
let context: Arc<Mutex<Context>> = Arc::default();
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user