diff --git a/changelog.d/2794.fixed.md b/changelog.d/2794.fixed.md new file mode 100644 index 00000000000..9735193c49d --- /dev/null +++ b/changelog.d/2794.fixed.md @@ -0,0 +1 @@ +Don't drop RSTs, makes long-lived connections drop on steal start \ No newline at end of file diff --git a/mirrord/agent/src/entrypoint.rs b/mirrord/agent/src/entrypoint.rs index de64013aaa4..92123028e1e 100644 --- a/mirrord/agent/src/entrypoint.rs +++ b/mirrord/agent/src/entrypoint.rs @@ -46,7 +46,6 @@ use crate::{ StealerCommand, TcpConnectionStealer, TcpStealerApi, }, util::{run_thread_in_namespace, ClientId}, - vpn::VpnApi, watched_task::{TaskStatus, WatchedTask}, *, }; @@ -201,7 +200,6 @@ struct ClientConnectionHandler { tcp_outgoing_api: TcpOutgoingApi, udp_outgoing_api: UdpOutgoingApi, dns_api: DnsApi, - vpn_api: VpnApi, state: State, /// Whether the client has sent us [`ClientMessage::ReadyForLogs`]. ready_for_logs: bool, @@ -226,7 +224,6 @@ impl ClientConnectionHandler { let tcp_outgoing_api = TcpOutgoingApi::new(pid); let udp_outgoing_api = UdpOutgoingApi::new(pid); - let vpn_api = VpnApi::new(pid); let client_handler = Self { id, @@ -237,7 +234,6 @@ impl ClientConnectionHandler { tcp_outgoing_api, udp_outgoing_api, dns_api, - vpn_api, state, ready_for_logs: false, }; @@ -376,10 +372,10 @@ impl ClientConnectionHandler { Ok(message) => self.respond(DaemonMessage::GetAddrInfoResponse(message)).await?, Err(e) => break e, }, - message = self.vpn_api.daemon_message() => match message{ - Ok(message) => self.respond(DaemonMessage::Vpn(message)).await?, - Err(e) => break e, - }, + // message = self.vpn_api.daemon_message() => match message{ + // Ok(message) => self.respond(DaemonMessage::Vpn(message)).await?, + // Err(e) => break e, + // }, _ = cancellation_token.cancelled() => return Ok(()), } }; @@ -481,8 +477,9 @@ impl ClientConnectionHandler { ClientMessage::ReadyForLogs => { self.ready_for_logs = true; } - ClientMessage::Vpn(message) => { - self.vpn_api.layer_message(message).await?; + ClientMessage::Vpn(_message) => { + unreachable!("VPN is not supported"); + // self.vpn_api.layer_message(message).await?; } } diff --git a/mirrord/agent/src/error.rs b/mirrord/agent/src/error.rs index 4e17ddfe5df..ad04e49c8c5 100644 --- a/mirrord/agent/src/error.rs +++ b/mirrord/agent/src/error.rs @@ -80,6 +80,7 @@ pub(crate) enum AgentError { #[error("Timeout on accepting first client connection")] FirstConnectionTimeout, + #[allow(dead_code)] /// Temporary error for vpn feature #[error("Generic error in vpn: {0}")] VpnError(String), diff --git a/mirrord/agent/src/vpn.rs b/mirrord/agent/src/vpn.rs index 77e04e6e8e0..dd8c3a5133f 100644 --- a/mirrord/agent/src/vpn.rs +++ b/mirrord/agent/src/vpn.rs @@ -1,3 +1,4 @@ +#![allow(dead_code)] use std::{ fmt, io::Read,