31 个版本
0.11.7 | 2024 年 2 月 1 日 |
---|---|
0.11.6 | 2023 年 3 月 31 日 |
0.11.5 | 2023 年 1 月 9 日 |
0.11.4 | 2022 年 8 月 1 日 |
0.4.0 | 2018 年 7 月 23 日 |
#231 在 Cargo 插件 中
每月 310 次下载
255KB
6.5K SLoC
cargo-geiger ☢️
一个工具,列出与 Rust 包及其所有依赖项中 unsafe Rust 代码使用相关的统计数据。
此 cargo 插件最初基于两个其他项目的代码
安装
尝试查找和使用全局安装的 OpenSSL 库
cargo install --locked cargo-geiger
或者,构建并将 OpenSSL 静态链接到 cargo-geiger 可执行文件中
cargo install --locked cargo-geiger --features vendored-openssl
或者,可以从 GitHub 发布版 获取预构建的二进制文件。
用法
- 导航到您要分析的同目录中的
Cargo.toml
。 cargogeiger
预期用途
此工具并非旨在直接建议代码是否最终确实不安全。
cargo-geiger 的目的是为审计提供统计输入,例如使用
unsafe 的使用具有细微差别,在有些情况下是必要的,任何使用它的动机都不在 cargo-geiger 的范围内。
重要的是要小心处理任何报告
输出示例
已知问题
- 查看 问题跟踪器。
库
Cargo Geiger 暴露了三个库
cargo-geiger
- 未版本化且高度不稳定的库,暴露了cargo-geiger
二进制的内部。因此,此库中包含的任何函数都可能发生变化。cargo-geiger-serde
- 包含可序列化报告类型的库geiger
- 包含一些解耦的 cargo 组件的库,被 cargo-geiger 使用
变更日志
查看 变更日志。
为什么叫这个名字?
https://en.wikipedia.org/wiki/Geiger_counter
在某些情况下,像电离辐射这样的不安全代码是不可避免的,并且应该被安全地封装!
依赖项
~66MB
~1.5M SLoC