Skip to content

Commit b3ce7d8

Browse files
committed
Do not print instructions for admin UI when telnet is already running
1 parent 02e8df5 commit b3ce7d8

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

installer/src/tplink.rs

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -295,6 +295,13 @@ async fn handler(state: State<AppState>, mut req: Request) -> Result<Response, S
295295
}
296296

297297
async fn tplink_launch_telnet_v5(admin_ip: &str) -> Result<(), Error> {
298+
let addr = SocketAddr::from_str(&format!("{admin_ip}:23")).unwrap();
299+
300+
if telnet_send_command(addr, "true", "exit code 0", true).await.is_ok() {
301+
println!("telnet already appears to be running");
302+
return Ok(());
303+
}
304+
298305
let client: HttpProxyClient =
299306
hyper_util::client::legacy::Client::<(), ()>::builder(TokioExecutor::new())
300307
.build(HttpConnector::new());
@@ -316,8 +323,6 @@ async fn tplink_launch_telnet_v5(admin_ip: &str) -> Result<(), Error> {
316323

317324
let handle = tokio::spawn(async move { axum::serve(listener, app).await });
318325

319-
let addr = SocketAddr::from_str(&format!("{admin_ip}:23")).unwrap();
320-
321326
while telnet_send_command(addr, "true", "exit code 0", true)
322327
.await
323328
.is_err()

0 commit comments

Comments
 (0)