Commit Graph
5 Commits
Author SHA1 Message Date
lbl c2fd1ff870 refactor: remove panic-prone unwrap and expect calls 2026-08-23 12:04:40 +08:00
lbl 60a4403f0e feat: add desktop updater and release automation 2026-08-22 10:00:24 +08:00
lbl 74c47bce69 feat: add outbound interface binding 2026-08-22 07:58:18 +08:00
lbl cc80bd2d37 fix(dns): 非法域名不再导致 panic
排查发现比报告更深一层的问题:dns-parser 0.8 的 add_question 对
超长 label 直接 assert panic(builder.build() 的 unwrap 只是第二层),
配置中的非法域名(如 label 超 63 字节)会使整个进程 panic。

修复:
- query() 调用前先经 is_valid_domain 校验(label 非空 ≤63 字节、
  全长 ≤253 字节,允许 FQDN 尾点),非法域名返回 InvalidInput。
- build().unwrap() 同步改为 map_err 作为纵深防御。

测试:非法域名 query 返回 InvalidInput 而非 panic;
is_valid_domain 合法/非法样例。
2026-08-21 02:45:46 +08:00
lbl b4301a8106 v2 2026-02-10 18:20:39 +08:00