blob: 1a31a883954cf381eff59d5bca2a03a8da195cb7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
//! Stream handling logic
use tor_proto::circuit::CircHopSyncView;
use tor_proto::stream::{
IncomingStreamRequestContext, IncomingStreamRequestDisposition, IncomingStreamRequestFilter,
};
/// Filter callback used to enforce early requirements on streams,
/// acting as an [`IncomingStreamRequestFilter`].
#[derive(Clone, Debug, Default)]
pub(crate) struct RequestFilter {
// TODO(relay): implement
}
impl IncomingStreamRequestFilter for RequestFilter {
fn disposition(
&mut self,
_ctx: &IncomingStreamRequestContext<'_>,
_circ: &CircHopSyncView<'_>,
) -> tor_proto::Result<IncomingStreamRequestDisposition> {
// TODO(relay): enforce the checks mentioned in relay-streams.md
Ok(IncomingStreamRequestDisposition::Accept)
}
}
|