1
0
mirror of https://github.com/bspeice/dtparse synced 2025-07-02 22:34:57 -04:00

Add fuzzing, find and fix a parser bug.

This commit is contained in:
Mike Meehan
2018-07-18 22:27:29 -04:00
parent fecba852d1
commit ac95e9e8c3
5 changed files with 46 additions and 2 deletions

5
fuzz/.gitignore vendored Normal file
View File

@ -0,0 +1,5 @@
target
libfuzzer
corpus
artifacts

22
fuzz/Cargo.toml Normal file
View File

@ -0,0 +1,22 @@
[package]
name = "dtparse-fuzz"
version = "0.0.1"
authors = ["Automatically generated"]
publish = false
[package.metadata]
cargo-fuzz = true
[dependencies.dtparse]
path = ".."
[dependencies.libfuzzer-sys]
git = "https://github.com/rust-fuzz/libfuzzer-sys.git"
# Prevent this from interfering with workspaces
[workspace]
members = ["."]
[[bin]]
name = "fuzzer_script_1"
path = "fuzzers/fuzzer_script_1.rs"

View File

@ -0,0 +1,10 @@
#![no_main]
extern crate libfuzzer_sys;
extern crate dtparse;
use dtparse::parse;
#[export_name="rust_fuzzer_test_input"]
pub extern fn go(data: &[u8]) {
if let Ok(s) = sd::str::from_utf8(data) {
parse(s);
}
}