mirror of
https://github.com/EasyTier/EasyTier.git
synced 2026-05-13 17:35:37 +00:00
perf: simplify method signatures and reduce clone across multiple files (#1663)
This commit is contained in:
@@ -551,7 +551,7 @@ impl KcpProxyDst {
|
||||
|
||||
async fn run_accept_task(&mut self) {
|
||||
let kcp_endpoint = self.kcp_endpoint.clone();
|
||||
let global_ctx = self.peer_manager.get_global_ctx().clone();
|
||||
let global_ctx = self.peer_manager.get_global_ctx();
|
||||
let proxy_entries = self.proxy_entries.clone();
|
||||
let cidr_set = self.cidr_set.clone();
|
||||
let route = Arc::new(self.peer_manager.get_route());
|
||||
|
||||
@@ -296,7 +296,6 @@ impl Socks5ServerNet {
|
||||
cap.medium = smoltcp::phy::Medium::Ip;
|
||||
let (dev, stack_sink, mut stack_stream) = channel_device::ChannelDevice::new(cap);
|
||||
|
||||
let packet_recv = packet_recv.clone();
|
||||
forward_tasks.spawn(async move {
|
||||
let mut smoltcp_stack_receiver = packet_recv.lock().await;
|
||||
while let Some(packet) = smoltcp_stack_receiver.recv().await {
|
||||
|
||||
@@ -126,7 +126,7 @@ impl Reactor {
|
||||
(
|
||||
Reactor {
|
||||
notify,
|
||||
iface: iface.clone(),
|
||||
iface,
|
||||
socket_allocator,
|
||||
},
|
||||
fut,
|
||||
|
||||
@@ -46,10 +46,7 @@ impl TcpListener {
|
||||
local_addr,
|
||||
})
|
||||
}
|
||||
pub fn poll_accept(
|
||||
&mut self,
|
||||
cx: &mut Context<'_>,
|
||||
) -> Poll<io::Result<(TcpStream, SocketAddr)>> {
|
||||
pub fn poll_accept(&mut self, cx: &Context<'_>) -> Poll<io::Result<(TcpStream, SocketAddr)>> {
|
||||
let mut socket = self.reactor.get_socket::<tcp::Socket>(*self.handle);
|
||||
|
||||
if socket.state() == tcp::State::Established {
|
||||
@@ -69,7 +66,7 @@ impl TcpListener {
|
||||
Ok(self.local_addr)
|
||||
}
|
||||
|
||||
pub fn relisten(&mut self) {
|
||||
pub fn relisten(&self) {
|
||||
let mut socket = self.reactor.get_socket::<tcp::Socket>(*self.handle);
|
||||
let local_endpoint = socket.local_endpoint().unwrap();
|
||||
socket.abort();
|
||||
@@ -169,7 +166,7 @@ impl TcpStream {
|
||||
Ok((
|
||||
TcpStream {
|
||||
handle: replace(&mut listener.handle, new_handle),
|
||||
reactor: reactor.clone(),
|
||||
reactor,
|
||||
local_addr,
|
||||
peer_addr,
|
||||
},
|
||||
@@ -183,7 +180,7 @@ impl TcpStream {
|
||||
pub fn peer_addr(&self) -> io::Result<SocketAddr> {
|
||||
Ok(self.peer_addr)
|
||||
}
|
||||
pub fn poll_connected(&self, cx: &mut Context<'_>) -> Poll<io::Result<()>> {
|
||||
pub fn poll_connected(&self, cx: &Context<'_>) -> Poll<io::Result<()>> {
|
||||
let mut socket = self.reactor.get_socket::<tcp::Socket>(*self.handle);
|
||||
if socket.state() == tcp::State::Established {
|
||||
return Poll::Ready(Ok(()));
|
||||
@@ -290,7 +287,7 @@ impl UdpSocket {
|
||||
/// Note that on multiple calls to a poll_* method in the send direction, only the Waker from the Context passed to the most recent call will be scheduled to receive a wakeup.
|
||||
pub fn poll_send_to(
|
||||
&self,
|
||||
cx: &mut Context<'_>,
|
||||
cx: &Context<'_>,
|
||||
buf: &[u8],
|
||||
target: SocketAddr,
|
||||
) -> Poll<io::Result<usize>> {
|
||||
@@ -317,7 +314,7 @@ impl UdpSocket {
|
||||
/// Note that on multiple calls to a poll_* method in the recv direction, only the Waker from the Context passed to the most recent call will be scheduled to receive a wakeup.
|
||||
pub fn poll_recv_from(
|
||||
&self,
|
||||
cx: &mut Context<'_>,
|
||||
cx: &Context<'_>,
|
||||
buf: &mut [u8],
|
||||
) -> Poll<io::Result<(usize, SocketAddr)>> {
|
||||
let mut socket = self.reactor.get_socket::<udp::Socket>(*self.handle);
|
||||
|
||||
@@ -85,7 +85,7 @@ impl UdpNatEntry {
|
||||
|
||||
async fn compose_ipv4_packet(
|
||||
self: &Arc<Self>,
|
||||
packet_sender: &mut Sender<ZCPacket>,
|
||||
packet_sender: &Sender<ZCPacket>,
|
||||
buf: &mut [u8],
|
||||
src_v4: &SocketAddrV4,
|
||||
payload_len: usize,
|
||||
@@ -139,7 +139,7 @@ impl UdpNatEntry {
|
||||
|
||||
async fn forward_task(
|
||||
self: Arc<Self>,
|
||||
mut packet_sender: Sender<ZCPacket>,
|
||||
packet_sender: Sender<ZCPacket>,
|
||||
virtual_ipv4: Ipv4Addr,
|
||||
real_ipv4: Ipv4Addr,
|
||||
mapped_ipv4: Ipv4Addr,
|
||||
@@ -207,7 +207,7 @@ impl UdpNatEntry {
|
||||
|
||||
let Ok(_) = Self::compose_ipv4_packet(
|
||||
&self_clone,
|
||||
&mut packet_sender,
|
||||
&packet_sender,
|
||||
&mut packet,
|
||||
&src_v4,
|
||||
len,
|
||||
|
||||
Reference in New Issue
Block a user