命令默认使用39271端口
This commit is contained in:
@@ -12,18 +12,19 @@ pub struct CommandClient {
|
||||
impl CommandClient {
|
||||
pub fn new() -> io::Result<Self> {
|
||||
let path_buf = crate::app_home()?.join("command-port");
|
||||
if !path_buf.exists() {
|
||||
return Err(io::Error::new(io::ErrorKind::Other, "not started"));
|
||||
}
|
||||
let port = std::fs::read_to_string(path_buf)?;
|
||||
let port = match u16::from_str(&port) {
|
||||
Ok(port) => port,
|
||||
Err(_) => {
|
||||
return Err(io::Error::new(
|
||||
io::ErrorKind::Other,
|
||||
"'command-port' file error",
|
||||
));
|
||||
let port = if path_buf.exists() {
|
||||
let port = std::fs::read_to_string(path_buf)?;
|
||||
match u16::from_str(&port) {
|
||||
Ok(port) => port,
|
||||
Err(_) => {
|
||||
return Err(io::Error::new(
|
||||
io::ErrorKind::Other,
|
||||
"'command-port' file error",
|
||||
));
|
||||
}
|
||||
}
|
||||
} else {
|
||||
39271
|
||||
};
|
||||
let udp = UdpSocket::bind("127.0.0.1:0")?;
|
||||
udp.set_read_timeout(Some(Duration::from_secs(5)))?;
|
||||
|
||||
@@ -14,7 +14,11 @@ impl CommandServer {
|
||||
|
||||
impl CommandServer {
|
||||
pub async fn start(self, vnt: Vnt) -> io::Result<()> {
|
||||
let udp = UdpSocket::bind("127.0.0.1:0").await?;
|
||||
let udp = if let Ok(udp) = UdpSocket::bind("127.0.0.1:39271").await {
|
||||
udp
|
||||
} else {
|
||||
UdpSocket::bind("127.0.0.1:0").await?
|
||||
};
|
||||
let path_buf = crate::app_home()?.join("command-port");
|
||||
let mut file = std::fs::File::create(path_buf)?;
|
||||
let addr = udp.local_addr()?;
|
||||
|
||||
Reference in New Issue
Block a user