Merge pull request #7718 from AdamKorcz/fuzz1234

fuzzing: improve archive fuzzer
This commit is contained in:
Derek McGowan 2022-12-12 09:29:34 -08:00 committed by GitHub
commit 182375794d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -82,6 +82,7 @@ func FuzzImportIndex(data []byte) int {
return 0
}
if shouldRequireLayoutOrManifest {
hasLayoutOrManifest := false
tr := tar.NewReader(r)
for {
hdr, err := tr.Next()
@ -93,14 +94,13 @@ func FuzzImportIndex(data []byte) int {
}
hdrName := path.Clean(hdr.Name)
switch hdrName {
case ocispec.ImageLayoutFile:
break
case "manifest.json":
break
default:
return 0
case ocispec.ImageLayoutFile, "manifest.json":
hasLayoutOrManifest = true
}
}
if !hasLayoutOrManifest {
return 0
}
}
tmpdir, err := os.MkdirTemp("", "fuzzing-")
if err != nil {