rust
Rust - Sized还是?Sized
动态大小类型 DST 读者大大们之前学过的几乎所有类型,都是固定大小的类型,包括集合 Vec、String 和 HashMap 等,而动态大小类型刚好与之相反:编译器无法在编译期得知该类型值的大小,只有到了程序运行时,才能动态获知。对于动态类型,我们使用 DST(dynamically sized
锐捷 - 认证流程抓包分析
寻找认证服务器 通过抓包发现3个与众不同的包,下面紧接着就是锐捷认证服务器的回复包,协议开始变成EAP协议。 接下来,我们对包的内容进行一波分析, c8:7f:54:c9:b2:df 不是我的mac地址吗?前面也是6字节,说明前面大概率也是一个mac地址,而且是固
LLVM - Linux配置/安装LLVM环境
本次编译及运行测试均在Deepin(Debian)平台。 下载源代码 首先我们得克隆llvm-project完整的代码,不能只下载llvm子项目的代码(这样只有旧版才能编译的了)。 github git clone https://github.com/llvm/llvm-project gitee
锐捷 - SuConfig.dat解密Rust版
pub fn decode_config(file_path: &str) { let mut file_bytes = std::fs::read(file_path).unwrap(); let mut dst = vec![0u8; 2048]; decode_dat(
Termux - 安装VSCode Server
首先我们需要更新升级一下已安装的包(不然安装node的时候大概率会爆炸!): pkg update && pkg upgrade 接下来我们需要安装我们需要的库: pkg install -y python nodejs yarn git 如果安装太慢了 记得换一下源或者挂个梯子! 使用yarn安装
Rust - 纯Safe双向链表
该代码仅仅提供学习与交流,你要是和我考究性能,你开心就好。 Rust实现 struct Node<T> { data: Box<T>, head: Option<Arc<Mutex<Node<T>>>>, next: Option<Arc<Mutex<Node<T>>>>,
Rust - 延迟初始化(静态/非静态)变量
lazy_static A macro for declaring lazily evaluated statics. Using this macro, it is possible to have statics that require code to be executed at runti
Rust - Futures library
Futures is a library for writing asynchronous code. official website 导入库 futures = { version = "0.3.30", features = ["thread-pool"] } 开始 创建一个线程池 use
Rust - 强制修改私有变量
有一个场景,你导了一个奇怪的库,其中有一个结构体私有字段你要修改已达到奇怪的目的,但是他是私有的嘛,你不能直接改,怎么办呢? Unsafe大法 源代码 mod pri { pub struct MyPrivateStruct { name: String, a