#[tokio::main]
async fn main() {
let socket = tokio::net::TcpStream::connect(("localhost", 2222)).await
.expect("Could not open a TCP socket");
let config = makiko::ClientConfig::default();
let (client, mut client_rx, client_fut) = makiko::Client::open(socket, config)
.expect("Could not open client");
tokio::task::spawn(async move {
client_fut.await.expect("Error in client future");
});
loop {
let event = client_rx.recv().await
.expect("Error while receiving client event");
let Some(event) = event else {
break
};
match event {
makiko::ClientEvent::ServerPubkey(pubkey, accept) => {
println!("Server pubkey type {}, fingerprint {}", pubkey.type_str(), pubkey.fingerprint());
accept.accept();
},
_ => {},
}
}
let _ = client;
}