d912844543
* WIP: QA network details * Initial implementation to multiplex socks5-client sends * Introduce TransmissionLane enum * WIP * WIP: client requests connection id * WIP * mulitplex somewhat done * Remove closed lanes * WIP: connection handling over ws * Remove unused published active connections shared data * Start on status timer * Max number of connections, and prune * Some tidy * Remove commented out code and tweak log * Tidy * Tweak log output * Rename to TransmissionBuffer * Use number of msg sent instead of time to rank age of lanes * Create client-connections crate * Remove waker call that probably are not needed * Extract out some types from real traffic stream module * Revert to develop qa.env * Tweak comments, tidy for getting ready to merge * Update changelog * wasm client compile fixes * rustfmt
22 lines
744 B
Rust
22 lines
744 B
Rust
// Copyright 2022 - Nym Technologies SA <contact@nymtech.net>
|
|
// SPDX-License-Identifier: Apache-2.0
|
|
|
|
use futures::channel::mpsc;
|
|
|
|
pub type ConnectionId = u64;
|
|
|
|
#[derive(Copy, Clone, Debug, Hash, PartialEq, Eq)]
|
|
pub enum TransmissionLane {
|
|
General,
|
|
Reply,
|
|
Retransmission,
|
|
Control,
|
|
ConnectionId(ConnectionId),
|
|
}
|
|
|
|
/// Announce connections that are closed, for whoever is interested.
|
|
/// One usecase is that the network-requester and socks5-client wants to know about this, so that
|
|
/// they can forward this to the `OutQueueControl` (via `ClientRequest` for the network-requester)
|
|
pub type ClosedConnectionSender = mpsc::UnboundedSender<ConnectionId>;
|
|
pub type ClosedConnectionReceiver = mpsc::UnboundedReceiver<ConnectionId>;
|