|
|
@@ -0,0 +1,33 @@
|
|
|
+// +build gofuzz
|
|
|
+
|
|
|
+package gocql
|
|
|
+
|
|
|
+import "bytes"
|
|
|
+
|
|
|
+func Fuzz(data []byte) int {
|
|
|
+ var bw bytes.Buffer
|
|
|
+
|
|
|
+ r := bytes.NewReader(data)
|
|
|
+
|
|
|
+ head, err := readHeader(r, make([]byte, 9))
|
|
|
+ if err != nil {
|
|
|
+ return 0
|
|
|
+ }
|
|
|
+
|
|
|
+ framer := newFramer(r, &bw, nil, 3)
|
|
|
+ err = framer.readFrame(&head)
|
|
|
+ if err != nil {
|
|
|
+ return 0
|
|
|
+ }
|
|
|
+
|
|
|
+ frame, err := framer.parseFrame()
|
|
|
+ if err != nil {
|
|
|
+ return 0
|
|
|
+ }
|
|
|
+
|
|
|
+ if frame != nil {
|
|
|
+ return 1
|
|
|
+ }
|
|
|
+
|
|
|
+ return 2
|
|
|
+}
|