basic main loop [CI SKIP]
This commit is contained in:
parent
9c5e14cd4e
commit
90f9d4cd36
@ -6,9 +6,30 @@ extern crate derive_builder;
|
||||
|
||||
mod controller;
|
||||
mod model;
|
||||
mod opts;
|
||||
|
||||
use controller::Userspace;
|
||||
use controller::{Userspace};
|
||||
use model::WireguardController;
|
||||
use opts::Opts;
|
||||
use std::io;
|
||||
use structopt::StructOpt;
|
||||
use std::thread::sleep;
|
||||
use std::time::{Duration,Instant};
|
||||
|
||||
fn main() {
|
||||
let controller = Userspace::new("");
|
||||
fn main() -> io::Result<()> {
|
||||
let opts = Opts::from_args();
|
||||
let mut controller: Box<WireguardController> = Box::new(Userspace::new(opts.socket.clone()));
|
||||
let interval = Duration::from_millis(opts.poll);
|
||||
println!("Polling {} every {:?}", opts.socket.to_str().unwrap(), interval);
|
||||
loop {
|
||||
let now = Instant::now();
|
||||
let peers = controller.peers()?;
|
||||
for peer in peers {
|
||||
dbg!(peer?);
|
||||
}
|
||||
let pause = interval - now.elapsed();
|
||||
dbg!(pause);
|
||||
sleep(if pause > interval/2 { pause } else {interval});
|
||||
}
|
||||
Ok(())
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user