#counter #coverage #fuzzing #fuzz

sanocv

Rust语言对LLVM的SanitizerCoverage接口的绑定

1个不稳定版本

0.1.0 2022年9月16日

#490编程语言

MIT/Apache

12KB
72

sanocv

Rust语言对LLVM的SanitizerCoverage接口的绑定。

GitHub Actions Status Documentation Status

关于

Rust语言对LLVM的SanitizerCoverage接口的绑定。

使用这些绑定可以让您向SanitizerCoverage消费者传递额外的覆盖率信息,这通常是一个模糊器,如libFuzzer。例如,您可以将JIT代码中的边界覆盖率信息或从您的自定义分配器中分配的大小类信息传递给模糊器,否则这些信息不会通过LLVM插入的覆盖率工具可见。

示例

use sancov::Counters;

// Define a bunch of counters.
static COUNTERS: Counters<4096> = Counters::new();

// Register the counters with the `SanitizerCoverage` consumer.
COUNTERS.register();

// Increment a counter when some custom code is executed!
COUNTERS[42].increment()

依赖项