// Copyright 2017 syzkaller project authors. All rights reserved. // Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file. // +build gofuzz package report import ( "regexp" ) var reporter, _ = NewReporter("linux", "", "", nil, []*regexp.Regexp{regexp.MustCompile("foo")}) func FuzzLinux(data []byte) int { containsCrash := reporter.ContainsCrash(data) rep := reporter.Parse(data) if containsCrash != (rep != nil) { panic("ContainsCrash and Parse disagree") } if rep == nil { return 0 } if rep.Title == "" { panic("rep.Title == \"\"") } if len(rep.Report) == 0 { panic("len(rep.Report) == 0") } if len(rep.Output) == 0 { panic("len(rep.Output) == 0") } if rep.StartPos >= rep.EndPos { panic("rep.StartPos >= rep.EndPos") } return 1 }