ppaass_agent/
lib.rs

1use event::AgentServerEvent;
2use tokio::sync::mpsc::Sender;
3use tracing::error;
4
5mod codec;
6pub mod command;
7pub mod config;
8mod crypto;
9mod error;
10pub mod event;
11pub mod log;
12mod proxy;
13pub mod server;
14mod tunnel;
15
16pub const SOCKS_V5: u8 = 5;
17pub const SOCKS_V4: u8 = 4;
18
19pub async fn publish_server_event(
20    server_event_tx: &Sender<AgentServerEvent>,
21    event: AgentServerEvent,
22) {
23    if server_event_tx.is_closed() {
24        return;
25    }
26    if let Err(e) = server_event_tx.send(event).await {
27        error!("Fail to publish server event because of error: {e:?}");
28    }
29}