From b59570b29760ddbce955ed9b43c5f4245b3799e5 Mon Sep 17 00:00:00 2001 From: asxalex Date: Mon, 15 Jul 2024 19:47:27 +0800 Subject: [PATCH] added CommandLineInput --- src/bin/sdlan/main.rs | 11 +++++++---- src/lib.rs | 2 +- src/network/packet.rs | 1 + src/utils/command.rs | 6 ++++++ 4 files changed, 15 insertions(+), 5 deletions(-) diff --git a/src/bin/sdlan/main.rs b/src/bin/sdlan/main.rs index de8a8c5..1396510 100644 --- a/src/bin/sdlan/main.rs +++ b/src/bin/sdlan/main.rs @@ -1,15 +1,18 @@ use sdlan_rs::get_edge; use sdlan_rs::run_sdlan; use sdlan_rs::CommandLine; +use sdlan_rs::CommandLineInput; use sdlan_sn_rs::log; + +use structopt::StructOpt; use std::time::Duration; -use tokio::sync::mpsc::Sender; -use tokio::sync::oneshot; #[tokio::main] async fn main() { let _guard = log::init_log(); + let cmd = CommandLineInput::from_args(); + let (tx, rx) = std::sync::mpsc::channel(); let _ = run_sdlan( CommandLine { @@ -22,12 +25,12 @@ async fn main() { mtu: 1290, name: "tau".to_owned(), tos: 0, - token: "".to_owned(), + token: cmd.token, allow_p2p: true, }, tx, ).await; - rx.recv(); + let _ = rx.recv(); let edge = get_edge(); edge.start("0".to_owned()).await; diff --git a/src/lib.rs b/src/lib.rs index 996ef3c..b49db8f 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -13,7 +13,7 @@ use network::{async_main, init_edge, NodeConfig}; use tokio::sync::mpsc::channel; use tokio_util::sync::CancellationToken; use tracing::{debug, error}; -pub use utils::CommandLine; +pub use utils::{CommandLine, CommandLineInput}; use sdlan_sn_rs::{ peer::SdlanSock, diff --git a/src/network/packet.rs b/src/network/packet.rs index 9fd4296..7b41dfc 100644 --- a/src/network/packet.rs +++ b/src/network/packet.rs @@ -612,6 +612,7 @@ async fn send_register(eee: &Node, sock: &SdlanSock, _v6_info: &Option) let msg = encode_to_udp_message(Some(register), PacketType::Register as u8).unwrap(); + println!("send register to {}", sock.to_string()); let _ = send_to_sock(eee, &msg, sock).await; /* let key = eee.get_header_key(); diff --git a/src/utils/command.rs b/src/utils/command.rs index d130b72..215b4e3 100644 --- a/src/utils/command.rs +++ b/src/utils/command.rs @@ -1,5 +1,11 @@ use structopt::StructOpt; +#[derive(StructOpt, Debug)] +pub struct CommandLineInput { + #[structopt(long = "token", default_value = "")] + pub token: String, +} + #[derive(StructOpt, Debug)] pub struct CommandLine { #[structopt(short = "s", long = "sn", default_value = "127.0.0.1:7655")]