Skip to content

Commit b40990b

Browse files
committed
f
1 parent ff776e3 commit b40990b

File tree

3 files changed

+6
-84
lines changed

3 files changed

+6
-84
lines changed

clash-lib/src/app/dispatcher/mod.rs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,7 @@ mod tracked;
44

55
pub use dispatcher_impl::Dispatcher;
66
pub use statistics_manager::Manager as StatisticsManager;
7-
#[allow(unused)]
87
pub use tracked::{
98
BoxedChainedDatagram, BoxedChainedStream, ChainedDatagram,
10-
ChainedDatagramWrapper, ChainedStream, ChainedStreamWrapper, TrackCopy,
11-
TrackedStream,
9+
ChainedDatagramWrapper, ChainedStream, ChainedStreamWrapper, TrackedStream,
1210
};

clash-lib/src/app/dispatcher/tracked.rs

Lines changed: 0 additions & 77 deletions
Original file line numberDiff line numberDiff line change
@@ -167,83 +167,6 @@ impl TrackedStream {
167167
pub fn inner_mut(&mut self) -> &mut BoxedChainedStream {
168168
&mut self.inner
169169
}
170-
171-
pub fn trackers(
172-
&self,
173-
) -> (
174-
Arc<dyn TrackCopy + Send + Sync>,
175-
Arc<dyn TrackCopy + Send + Sync>,
176-
) {
177-
let r =
178-
Arc::new(ReadTracker::new(self.tracker.clone(), self.manager.clone()));
179-
let w = Arc::new(WriteTracker::new(
180-
self.tracker.clone(),
181-
self.manager.clone(),
182-
));
183-
(r, w)
184-
}
185-
}
186-
187-
#[allow(unused)]
188-
pub trait TrackCopy {
189-
fn track(&self, total: usize);
190-
}
191-
192-
impl TrackCopy for ReadTracker {
193-
fn track(&self, total: usize) {
194-
self.push_downloaded(total);
195-
}
196-
}
197-
198-
impl TrackCopy for WriteTracker {
199-
fn track(&self, total: usize) {
200-
self.push_uploaded(total);
201-
}
202-
}
203-
204-
#[allow(unused)]
205-
pub struct ReadTracker {
206-
tracker: Arc<TrackerInfo>,
207-
manager: Arc<Manager>,
208-
}
209-
210-
impl ReadTracker {
211-
fn new(tracker: Arc<TrackerInfo>, manager: Arc<Manager>) -> Self {
212-
Self { tracker, manager }
213-
}
214-
215-
fn push_downloaded(&self, download: usize) {
216-
self.manager.push_downloaded(download);
217-
self.tracker
218-
.download_total
219-
.fetch_add(download as u64, std::sync::atomic::Ordering::Release);
220-
}
221-
}
222-
223-
#[allow(unused)]
224-
pub struct WriteTracker {
225-
tracker: Arc<TrackerInfo>,
226-
manager: Arc<Manager>,
227-
}
228-
229-
impl WriteTracker {
230-
fn new(tracker: Arc<TrackerInfo>, manager: Arc<Manager>) -> Self {
231-
Self { tracker, manager }
232-
}
233-
234-
fn push_uploaded(&self, upload: usize) {
235-
self.manager.push_uploaded(upload);
236-
self.tracker
237-
.upload_total
238-
.fetch_add(upload as u64, std::sync::atomic::Ordering::Release);
239-
}
240-
}
241-
242-
impl Drop for TrackedStream {
243-
fn drop(&mut self) {
244-
debug!("untrack connection: {}", self.id());
245-
self.manager.untrack(self.id());
246-
}
247170
}
248171

249172
impl AsyncRead for TrackedStream {

clash-lib/src/app/dns/runtime.rs

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,18 @@
11
use std::{
22
io,
33
net::SocketAddr,
4-
sync::Arc,
54
task::{Context, Poll, ready},
65
time::Duration,
76
};
87

98
use crate::{
109
app::{
1110
dispatcher::{BoxedChainedDatagram, BoxedChainedStream},
12-
dns::{self, ThreadSafeDNSResolver},
11+
dns::ThreadSafeDNSResolver,
1312
net::OutboundInterface,
1413
},
1514
common::errors::new_io_error,
16-
config::proxy::PROXY_DIRECT,
17-
proxy::{AnyOutboundHandler, datagram::UdpPacket, direct},
15+
proxy::{AnyOutboundHandler, datagram::UdpPacket},
1816
session::{Network, Session, Type},
1917
};
2018
use futures::{SinkExt, StreamExt};
@@ -56,6 +54,9 @@ impl DnsRuntimeProvider {
5654
iface: Option<OutboundInterface>,
5755
so_mark: Option<u32>,
5856
) -> Self {
57+
use crate::{app::dns, config::proxy::PROXY_DIRECT, proxy::direct};
58+
use std::sync::Arc;
59+
5960
let proxy = Arc::new(direct::Handler::new(PROXY_DIRECT));
6061
// SystemResolver::new us trivial,it always return Ok
6162
let dns_resolver = Arc::new(dns::SystemResolver::new(false).unwrap());

0 commit comments

Comments
 (0)