#json #fuzzer #arbitrary

bin+lib arbitrary-json

基于serde_json和arbitrary的JSON生成器

2个版本

0.1.1 2022年2月23日
0.1.0 2022年1月13日

开发工具 中排名第1462

Download history 20/week @ 2024-03-11 23/week @ 2024-03-18 8/week @ 2024-03-25 16/week @ 2024-04-01 11/week @ 2024-04-08 7/week @ 2024-04-22 4/week @ 2024-05-06 2/week @ 2024-05-13 6/week @ 2024-05-20 123/week @ 2024-05-27 39/week @ 2024-06-03 50/week @ 2024-06-10 8/week @ 2024-06-17 46/week @ 2024-06-24

每月下载量143
2 crate 中使用

WTFPL许可协议

7KB
97 代码行

Arbitrary JSON

这个crate提供了一个介于serde_jsonarbitrary之间的兼容层。这允许你在模糊测试Rust代码时生成随机的有效JSON。请参阅以下示例

#![no_main]
use arbitrary_json::ArbitraryValue;
use libfuzzer_sys::fuzz_target;

fuzz_target!(|data: ArbitraryValue| {
    // call your very complex code here
    if data["truc"] == serde_json::json!(42) {
        panic!("Found the magic value");
    }
});

lib.rs:

Arbitrary JSON

这个crate提供了一个介于serde_jsonarbitrary之间的兼容层。这允许你在模糊测试Rust代码时生成随机的有效JSON。请参阅以下示例

#![no_main]
use arbitrary_json::ArbitraryValue;
use libfuzzer_sys::fuzz_target;

fuzz_target!(|data: ArbitraryValue| {
    // call your very complex code here
    if data["truc"] == serde_json::json!(42) {
        panic!("Found the magic value");
    }
});

依赖

~0.4–0.8MB
~18K SLoC