first commit
This commit is contained in:
parent
17fb7ed120
commit
58c3ec763a
3 changed files with 269 additions and 12 deletions
19
src/main.rs
19
src/main.rs
|
|
@ -21,6 +21,8 @@ use pman::{init_process_manager, ProcessCommand, ProcessManager};
|
|||
use shadow_rs::shadow;
|
||||
use std::sync::{Arc, Mutex, OnceLock};
|
||||
use tokio::{signal, sync::mpsc::Sender};
|
||||
use trust_dns_resolver::config::{ResolverConfig, ResolverOpts};
|
||||
use trust_dns_resolver::{Resolver, TokioAsyncResolver};
|
||||
|
||||
shadow!(build);
|
||||
|
||||
|
|
@ -84,14 +86,23 @@ async fn main() -> anyhow::Result<()> {
|
|||
args.config
|
||||
});
|
||||
|
||||
rustls::crypto::aws_lc_rs::default_provider().install_default().expect("Couldnt install rustls crypto into process");
|
||||
|
||||
let _ = init_process_manager();
|
||||
|
||||
match args.command {
|
||||
Commands::CliClient => {
|
||||
let ip_addr_str = config().get_string("remote_endpoint")?;
|
||||
let ip_sock = SocketAddr::from_str(&ip_addr_str)?;
|
||||
let client_endpoint = quic::client::make_client_endpoint(ip_sock.clone(), None)?;
|
||||
let client = client_endpoint.connect(ip_sock, "localhost")?.await?;
|
||||
let host = config().get_string("remote_host")?;
|
||||
let port = config().get::<u16>("remote_port")?;
|
||||
let resolver = TokioAsyncResolver::tokio(
|
||||
ResolverConfig::quad9_tls(),
|
||||
ResolverOpts::default(),
|
||||
);
|
||||
let response = resolver.lookup_ip(&host).await?;
|
||||
let ip_addr = response.iter().next().expect("no addresses returned!");
|
||||
let ip_sock = SocketAddr::new(ip_addr, port);
|
||||
let client_endpoint = quic::client::make_client_endpoint(ip_sock.clone(), None).unwrap();
|
||||
let client = client_endpoint.connect(ip_sock, &host)?.await?;
|
||||
println!("[client] connected: addr={}", client.remote_address());
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue