1个不稳定版本

0.1.0 2023年11月28日

#518 in 压缩


2个crate中使用了(通过orphism

MIT许可协议

32KB
949

caff-archive 最新版本

这是什么?

一个用于处理二进制CAFF归档的库。这是用于.cmo3.can3文件的格式。

如何获得这个强大的工具?

在您的项目目录中运行以下Cargo命令(假设您已安装cargo-edit

cargo add caff-archive

或者将以下行添加到您的Cargo.toml(在[dependencies]数组中)

caff-archive = "^ 0.1"

如何使用它?

fn main() {
  let mut file = File::open(&archive).expect("failed to open archive for reading");
  let mut archive = caff_archive::Archive::read(&mut file).expect("failed to read archive from input data");
}

可选功能

  • logging在读取和写入归档时启用跟踪和调试日志。
  • discovery意味着logging,并启用从该库的视角出发的额外日志记录,例如解析为枚举中的回退值的基本值,或预期为填充但包含非零字节的预期数据段,以及这些字节的不同潜在解析方式,以及其他事项。

这是如何制作的?

  • 小心翼翼,不使用或引用格式供应商的任何代码或库。
  • ImHexMOC3ingbird漏洞(CVE-2023-27566)的突出显示模式在理解此格式方面发挥了重要作用。
  • 未记录的二进制格式的发现过程描述在此处

许可协议

caff-archive可在MIT许可协议下获得。有关完整文本,请参阅LICENSE.txt

虽然许可协议简短,但仍然是用律师式的语言编写的。如果您喜欢更接地气的语言,请考虑以下

  • tl;drLegal在此处提供了简单的视觉摘要。
  • FOSSA在此处提供了更深入的概述。

依赖项

~0.4–1MB
~21K SLoC