fuzz.go 436 B

123456789101112131415161718192021222324252627282930313233
  1. // +build gofuzz
  2. package gocql
  3. import "bytes"
  4. func Fuzz(data []byte) int {
  5. var bw bytes.Buffer
  6. r := bytes.NewReader(data)
  7. head, err := readHeader(r, make([]byte, 9))
  8. if err != nil {
  9. return 0
  10. }
  11. framer := newFramer(r, &bw, nil, byte(head.version))
  12. err = framer.readFrame(&head)
  13. if err != nil {
  14. return 0
  15. }
  16. frame, err := framer.parseFrame()
  17. if err != nil {
  18. return 0
  19. }
  20. if frame != nil {
  21. return 1
  22. }
  23. return 2
  24. }