diff --git a/vnt-cli/src/callback.rs b/vnt-cli/src/callback.rs index 4aeaa1a..111bc7e 100644 --- a/vnt-cli/src/callback.rs +++ b/vnt-cli/src/callback.rs @@ -7,6 +7,9 @@ use vnt::{DeviceInfo, ErrorInfo, HandshakeInfo, RegisterInfo, VntCallback}; pub struct VntHandler {} impl VntCallback for VntHandler { + fn success(&self) { + println!(" ====== Connect Successfully ====== ") + } fn create_tun(&self, info: DeviceInfo) { println!("create_tun {}", info) } diff --git a/vnt-jni/src/callback.rs b/vnt-jni/src/callback.rs index 3c3d580..1812766 100644 --- a/vnt-jni/src/callback.rs +++ b/vnt-jni/src/callback.rs @@ -145,6 +145,8 @@ impl CallBack { } impl VntCallback for CallBack { + fn success(&self) { + } fn create_tun(&self, info: DeviceInfo) { if let Err(e) = self.create_tun0(info) { log::warn!("create_tun {:?}", e); diff --git a/vnt/src/handle/callback.rs b/vnt/src/handle/callback.rs index 0cc353d..8a432e7 100644 --- a/vnt/src/handle/callback.rs +++ b/vnt/src/handle/callback.rs @@ -182,6 +182,9 @@ impl Into for ErrorType { } pub trait VntCallback: Clone + Send + Sync + 'static { + /// 启动成功 + fn success(&self) {} + /// 创建网卡的信息 fn create_tun(&self, _info: DeviceInfo) {} /// 连接 diff --git a/vnt/src/handle/recv_data/server.rs b/vnt/src/handle/recv_data/server.rs index 3a6c7fe..2207db9 100644 --- a/vnt/src/handle/recv_data/server.rs +++ b/vnt/src/handle/recv_data/server.rs @@ -307,6 +307,7 @@ impl ServerPacketHandler { guard.push((dest, mask)); } } + self.callback.success(); } self.set_device_info_list(response.device_info_list, response.epoch as _); }