From 0b8d97f96dd4db0e50a1cb68a0740a55017c469b Mon Sep 17 00:00:00 2001 From: EuAndreh Date: Wed, 14 Aug 2024 17:31:36 -0300 Subject: git mv _example doc/examples/ --- doc/examples/fuzz/fuzz_openexec.go | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 doc/examples/fuzz/fuzz_openexec.go (limited to 'doc/examples/fuzz/fuzz_openexec.go') diff --git a/doc/examples/fuzz/fuzz_openexec.go b/doc/examples/fuzz/fuzz_openexec.go new file mode 100644 index 0000000..5326044 --- /dev/null +++ b/doc/examples/fuzz/fuzz_openexec.go @@ -0,0 +1,30 @@ +package sqlite3_fuzz + +import ( + "bytes" + "database/sql" + "io/ioutil" + + _ "github.com/mattn/go-sqlite3" +) + +func FuzzOpenExec(data []byte) int { + sep := bytes.IndexByte(data, 0) + if sep <= 0 { + return 0 + } + err := ioutil.WriteFile("/tmp/fuzz.db", data[sep+1:], 0644) + if err != nil { + return 0 + } + db, err := sql.Open("sqlite3", "/tmp/fuzz.db") + if err != nil { + return 0 + } + defer db.Close() + _, err = db.Exec(string(data[:sep-1])) + if err != nil { + return 0 + } + return 1 +} -- cgit v1.2.3