Bind client UDP sockets by peer family
ci / test (push) Canceled after 0s
ci / fuzz-smoke (push) Canceled after 0s
ci / macos-client (macos-aarch64, macos-14) (push) Canceled after 0s
ci / macos-client (macos-x86_64, macos-13) (push) Canceled after 0s
ci / windows-client (push) Canceled after 0s
ci / package-release (linux-x86_64, ubuntu-latest, , , ) (push) Canceled after 0s
ci / package-release (macos-aarch64, macos-14, , , ) (push) Canceled after 0s
ci / package-release (macos-x86_64, macos-13, , , ) (push) Canceled after 0s
ci / package-release (windows-aarch64, windows-latest, aarch64, windows, aarch64-pc-windows-msvc) (push) Canceled after 0s
ci / package-release (windows-x86_64, windows-latest, , , ) (push) Canceled after 0s
ci / remote-bench (push) Canceled after 0s
ci / publish-gitea-release (push) Canceled after 0s
ci / test (push) Canceled after 0s
ci / fuzz-smoke (push) Canceled after 0s
ci / macos-client (macos-aarch64, macos-14) (push) Canceled after 0s
ci / macos-client (macos-x86_64, macos-13) (push) Canceled after 0s
ci / windows-client (push) Canceled after 0s
ci / package-release (linux-x86_64, ubuntu-latest, , , ) (push) Canceled after 0s
ci / package-release (macos-aarch64, macos-14, , , ) (push) Canceled after 0s
ci / package-release (macos-x86_64, macos-13, , , ) (push) Canceled after 0s
ci / package-release (windows-aarch64, windows-latest, aarch64, windows, aarch64-pc-windows-msvc) (push) Canceled after 0s
ci / package-release (windows-x86_64, windows-latest, , , ) (push) Canceled after 0s
ci / remote-bench (push) Canceled after 0s
ci / publish-gitea-release (push) Canceled after 0s
This commit is contained in:
@@ -37,8 +37,8 @@ use dosh::transport::{
|
||||
TransportEvent,
|
||||
};
|
||||
use dosh::udp::{
|
||||
is_transient_udp_error, is_transient_udp_send_error, recv_udp_retrying_transient,
|
||||
send_udp_retrying_transient,
|
||||
bind_udp_for_peer, is_transient_udp_error, is_transient_udp_send_error,
|
||||
recv_udp_retrying_transient, send_udp_retrying_transient,
|
||||
};
|
||||
use serde::{Deserialize, Serialize};
|
||||
use sha2::{Digest, Sha256};
|
||||
@@ -451,7 +451,7 @@ async fn main() -> Result<()> {
|
||||
};
|
||||
let cache_requested_env = requested_env(&config, &host, resolved_ssh_config.as_ref());
|
||||
|
||||
let socket = UdpSocket::bind("0.0.0.0:0").await?;
|
||||
let socket = bind_udp_for_peer(resolve_addr(&target_udp_host, dosh_port)?).await?;
|
||||
|
||||
if let Some(mut cached) = credential.clone() {
|
||||
cached.udp_host = target_udp_host.clone();
|
||||
@@ -1955,7 +1955,7 @@ async fn run_doctor_for_host(
|
||||
"[info] forwarding requested by config: agent={} default_session={}",
|
||||
config.forward_agent, config.default_session
|
||||
);
|
||||
let socket = UdpSocket::bind("0.0.0.0:0").await?;
|
||||
let socket = bind_udp_for_peer(resolve_addr(&udp_host, dosh_port)?).await?;
|
||||
match try_native_auth_check(
|
||||
&socket,
|
||||
config,
|
||||
@@ -2393,7 +2393,7 @@ async fn run_proxy_stdio_command(config: &dosh::config::ClientConfig, args: &Arg
|
||||
let target_udp_host =
|
||||
selected_udp_host(requested_udp_host.as_deref(), &server, &resolved_ssh_config)?;
|
||||
let dosh_port = args.dosh_port.or(host.port).unwrap_or(config.dosh_port);
|
||||
let socket = UdpSocket::bind("0.0.0.0:0").await?;
|
||||
let socket = bind_udp_for_peer(resolve_addr(&target_udp_host, dosh_port)?).await?;
|
||||
let session = args
|
||||
.session
|
||||
.clone()
|
||||
|
||||
Reference in New Issue
Block a user