lbl
|
ca72f2b3d4
|
修复 Web 状态机在启动中停止时卡死
- 启动任务(含注册重试循环)此前是裸 tokio::spawn,stop 打不断:
服务器不可达时点击停止,状态永远卡在 Starting 或显示 Running 的死网络。
现在保存 JoinHandle,stop/restart 时先 abort_start_task 中断它,
defer 守卫负责把状态迁移到 Stopped
- 清理任务此前 spawn 在自己所等待的 task_group 里,形成自引用等待,
网络自行停止时永不返回;改为在任务组外等待
- 顺带修复 TaskGroup::wait_all_stopped 的丢失唤醒竞态:
notified() 先 enable 注册再检查条件
- 补充 Starting 状态停止迁移、任务自然结束唤醒两个测试
|
2026-08-20 22:21:54 +08:00 |
|
lbl
|
bd79844849
|
修复 Web 静态资源目录穿越
static_handler 此前直接 join 未归一化的 URI 路径,
curl --path-as-is .../../../ 可读取进程权限内任意文件。
改为逐组件校验:仅允许 Normal/CurDir 组件,拒绝 ..、根路径、盘符。
补充路径校验单元测试。
|
2026-08-20 22:16:01 +08:00 |
|
lbl
|
7d481560e3
|
规范依赖管理并适配 rand 0.10
- tcp_ip 从 git 依赖切换为 crates.io 0.2(IpStackConfig 改用 builder)
- 公共依赖收拢到 workspace.dependencies 统一版本
- 移除 release profile 的 panic=abort(避免 vnt-jni 中止宿主 JVM)
- vnt-jni 升级 edition 2024(no_mangle 改为 unsafe(no_mangle))
- vnt-ipc 显式声明 tokio features
- 适配 rand 0.10:random_range 移至 RngExt,choose_multiple 改名 sample
- 修复 clippy 警告(type_complexity/collapsible_if/ptr_arg)
|
2026-08-20 20:58:07 +08:00 |
|
lbl
|
12f7eed8a5
|
记录具体路径的丢包率
|
2026-02-28 18:56:11 +08:00 |
|
lbl
|
2aa423062e
|
支持设置端口
|
2026-02-28 17:49:11 +08:00 |
|
lbl
|
5a31ad89f4
|
jni
|
2026-02-24 18:31:40 +08:00 |
|
lbl
|
4708ed2b16
|
注册失败时重试
|
2026-02-24 16:08:18 +08:00 |
|
lbl
|
b4301a8106
|
v2
|
2026-02-10 18:20:39 +08:00 |
|