|
|
- 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
- }
|