improved timeout detection [CI SKIP]
This commit is contained in:
parent
a64fa75170
commit
e7999b0951
2
wg-event-gen/Cargo.lock
generated
2
wg-event-gen/Cargo.lock
generated
@ -1,3 +1,5 @@
|
|||||||
|
# This file is automatically @generated by Cargo.
|
||||||
|
# It is not intended for manual editing.
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "ansi_term"
|
name = "ansi_term"
|
||||||
version = "0.11.0"
|
version = "0.11.0"
|
||||||
|
@ -34,6 +34,7 @@ impl WireguardController for Userspace {
|
|||||||
let mut peer: Option<Peer> = None;
|
let mut peer: Option<Peer> = None;
|
||||||
let build_peer = |peer: &mut Option<Peer>, builder: &mut PeerBuilder| -> Result<()> {
|
let build_peer = |peer: &mut Option<Peer>, builder: &mut PeerBuilder| -> Result<()> {
|
||||||
if builder.has_key() {
|
if builder.has_key() {
|
||||||
|
//Threat as uninitialized otherwise
|
||||||
let built: Result<Peer> = parse_err(builder.build());
|
let built: Result<Peer> = parse_err(builder.build());
|
||||||
*peer = Some(built?);
|
*peer = Some(built?);
|
||||||
*builder = PeerBuilder::default();
|
*builder = PeerBuilder::default();
|
||||||
|
@ -19,7 +19,7 @@ use opts::Opts;
|
|||||||
use std::collections::HashMap;
|
use std::collections::HashMap;
|
||||||
use std::io;
|
use std::io;
|
||||||
use std::thread::sleep;
|
use std::thread::sleep;
|
||||||
use std::time::{Duration, Instant};
|
use std::time::{Duration, SystemTime,Instant, UNIX_EPOCH};
|
||||||
use structopt::StructOpt;
|
use structopt::StructOpt;
|
||||||
|
|
||||||
fn listeners(opts: &Opts) -> Vec<Box<EventListener>> {
|
fn listeners(opts: &Opts) -> Vec<Box<EventListener>> {
|
||||||
@ -46,6 +46,7 @@ fn main() -> io::Result<()> {
|
|||||||
interval
|
interval
|
||||||
);
|
);
|
||||||
let mut peers_last: Option<HashMap<ECCKey, Peer>> = None;
|
let mut peers_last: Option<HashMap<ECCKey, Peer>> = None;
|
||||||
|
let start = SystemTime::now();
|
||||||
loop {
|
loop {
|
||||||
let now = Instant::now();
|
let now = Instant::now();
|
||||||
let peers = controller.peers()?;
|
let peers = controller.peers()?;
|
||||||
@ -63,8 +64,16 @@ fn main() -> io::Result<()> {
|
|||||||
let peers = peers
|
let peers = peers
|
||||||
.map(|peer| peer.map(|peer_ok| (peer_ok.key.clone(), peer_ok)))
|
.map(|peer| peer.map(|peer_ok| (peer_ok.key.clone(), peer_ok)))
|
||||||
.collect::<io::Result<HashMap<_, _>>>()?;
|
.collect::<io::Result<HashMap<_, _>>>()?;
|
||||||
|
for (k, p) in peers.iter() {
|
||||||
|
if let Some(shake) = p.last_handshake {
|
||||||
|
println!(
|
||||||
|
"{} {:?}",
|
||||||
|
k.to_string()[0..5].to_string(),
|
||||||
|
shake.duration_since(start).unwrap()
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
if let Some(ref mut peers_last) = peers_last {
|
if let Some(ref mut peers_last) = peers_last {
|
||||||
|
|
||||||
gen_events(&peers, &peers_last, &listeners, timeout, interval);
|
gen_events(&peers, &peers_last, &listeners, timeout, interval);
|
||||||
|
|
||||||
*peers_last = peers;
|
*peers_last = peers;
|
||||||
|
@ -1 +1 @@
|
|||||||
cargo build --release && cat target/release/wg-event-gen | ssh core@ks1 "sudo bash -c 'cat > /srv/vpn/wireguard/event-gen'"
|
cargo +nightly build && cat target/release/wg-event-gen | ssh core@ks1 "sudo bash -c 'rm -f /srv/vpn/wireguard/event-gen; cat > /srv/vpn/wireguard/event-gen; chmod +x /srv/vpn/wireguard/event-gen'"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user