cargo fmt

This commit is contained in:
lubeilin
2023-09-03 11:39:30 +08:00
parent acb5a8a325
commit c3cff7c5b5
94 changed files with 2976 additions and 1958 deletions
+12 -15
View File
@@ -3,7 +3,7 @@ use std::net::{Ipv4Addr, SocketAddr, SocketAddrV4, UdpSocket};
use std::str::FromStr;
use std::time::Duration;
use crate::command::entity::{DeviceItem, RouteItem, Info};
use crate::command::entity::{DeviceItem, Info, RouteItem};
pub struct CommandClient {
udp: UdpSocket,
@@ -17,9 +17,12 @@ impl CommandClient {
}
let port = std::fs::read_to_string(path_buf)?;
let port = match u16::from_str(&port) {
Ok(port) => { port }
Ok(port) => port,
Err(_) => {
return Err(io::Error::new(io::ErrorKind::Other, "'command-port' file error"));
return Err(io::Error::new(
io::ErrorKind::Other,
"'command-port' file error",
));
}
};
let udp = UdpSocket::bind("127.0.0.1:0")?;
@@ -38,11 +41,9 @@ impl CommandClient {
let mut buf = [0; 10240];
let len = self.udp.recv(&mut buf)?;
match serde_json::from_slice::<Vec<DeviceItem>>(&buf[..len]) {
Ok(val) => {
Ok(val)
}
Ok(val) => Ok(val),
Err(e) => {
log::error!("{:?}",e);
log::error!("{:?}", e);
Err(io::Error::new(io::ErrorKind::Other, "data error"))
}
}
@@ -52,11 +53,9 @@ impl CommandClient {
let mut buf = [0; 10240];
let len = self.udp.recv(&mut buf)?;
match serde_json::from_slice::<Vec<RouteItem>>(&buf[..len]) {
Ok(val) => {
Ok(val)
}
Ok(val) => Ok(val),
Err(e) => {
log::error!("{:?}",e);
log::error!("{:?}", e);
Err(io::Error::new(io::ErrorKind::Other, "data error"))
}
}
@@ -66,11 +65,9 @@ impl CommandClient {
let mut buf = [0; 10240];
let len = self.udp.recv(&mut buf)?;
match serde_json::from_slice::<Info>(&buf[..len]) {
Ok(val) => {
Ok(val)
}
Ok(val) => Ok(val),
Err(e) => {
log::error!("{:?},{:?}",&buf[..len],e);
log::error!("{:?},{:?}", &buf[..len], e);
Err(io::Error::new(io::ErrorKind::Other, "data error"))
}
}
+2 -2
View File
@@ -33,5 +33,5 @@ pub struct DeviceItem {
pub rt: String,
pub status: String,
pub client_secret: bool,
pub current_client_secret:bool,
}
pub current_client_secret: bool,
}
+19 -15
View File
@@ -1,11 +1,11 @@
use crate::command::entity::{DeviceItem, Info, RouteItem};
use crate::console_out;
use std::io;
use vnt::core::Vnt;
use crate::command::entity::{DeviceItem, RouteItem, Info};
use crate::console_out;
pub mod client;
pub mod server;
pub mod entity;
pub mod server;
pub enum CommandEnum {
Route,
@@ -51,7 +51,9 @@ pub fn command_route(vnt: &Vnt) -> Vec<RouteItem> {
let route_table = vnt.route_table();
let mut route_list = Vec::with_capacity(route_table.len());
for (destination, route) in route_table {
let next_hop = vnt.route_key(&route.route_key()).map_or(String::new(), |v| v.to_string());
let next_hop = vnt
.route_key(&route.route_key())
.map_or(String::new(), |v| v.to_string());
let metric = route.metric.to_string();
let rt = if route.rt < 0 {
"".to_string()
@@ -79,15 +81,17 @@ pub fn command_list(vnt: &Vnt) -> Vec<DeviceItem> {
for peer in device_list {
let name = peer.name;
let virtual_ip = peer.virtual_ip.to_string();
let (nat_type, public_ips, local_ip) = if let Some(nat_info) = vnt.peer_nat_info(&peer.virtual_ip) {
let nat_type = format!("{:?}", nat_info.nat_type);
let public_ips: Vec<String> = nat_info.public_ips.iter().map(|v| v.to_string()).collect();
let public_ips = public_ips.join(",");
let local_ip = nat_info.local_ipv4_addr.ip().to_string();
(nat_type, public_ips, local_ip)
} else {
("".to_string(), "".to_string(), "".to_string())
};
let (nat_type, public_ips, local_ip) =
if let Some(nat_info) = vnt.peer_nat_info(&peer.virtual_ip) {
let nat_type = format!("{:?}", nat_info.nat_type);
let public_ips: Vec<String> =
nat_info.public_ips.iter().map(|v| v.to_string()).collect();
let public_ips = public_ips.join(",");
let local_ip = nat_info.local_ipv4_addr.ip().to_string();
(nat_type, public_ips, local_ip)
} else {
("".to_string(), "".to_string(), "".to_string())
};
let (nat_traversal_type, rt) = if let Some(route) = vnt.route(&peer.virtual_ip) {
let nat_traversal_type = if route.metric == 1 {
"p2p"
@@ -95,7 +99,8 @@ pub fn command_list(vnt: &Vnt) -> Vec<DeviceItem> {
"server-relay"
} else {
"client-relay"
}.to_string();
}
.to_string();
let rt = if route.rt < 0 {
"".to_string()
} else {
@@ -155,4 +160,3 @@ pub fn command_info(vnt: &Vnt) -> Info {
ipv6_addr,
}
}
+15 -29
View File
@@ -4,7 +4,6 @@ use tokio::net::UdpSocket;
use vnt::core::Vnt;
pub struct CommandServer {}
impl CommandServer {
@@ -41,39 +40,26 @@ impl CommandServer {
}
}
fn command(cmd: &str, vnt: &Vnt) -> io::Result<String> {
let out_str = match cmd {
"route" => {
match serde_json::to_string(&crate::command::command_route(vnt)) {
Ok(str) => {
str
}
Err(e) => {
format!("{:?}", e)
}
"route" => match serde_json::to_string(&crate::command::command_route(vnt)) {
Ok(str) => str,
Err(e) => {
format!("{:?}", e)
}
}
"list" => {
match serde_json::to_string(&crate::command::command_list(vnt)) {
Ok(str) => {
str
}
Err(e) => {
format!("{:?}", e)
}
},
"list" => match serde_json::to_string(&crate::command::command_list(vnt)) {
Ok(str) => str,
Err(e) => {
format!("{:?}", e)
}
}
"info" => {
match serde_json::to_string(&crate::command::command_info(vnt)) {
Ok(str) => {
str
}
Err(e) => {
format!("{:?}", e)
}
},
"info" => match serde_json::to_string(&crate::command::command_info(vnt)) {
Ok(str) => str,
Err(e) => {
format!("{:?}", e)
}
}
},
"stop" => {
vnt.stop()?;
"stopped".to_string()