Skip to content
Open
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions metadata/multirepo/multirepo.go
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,15 @@ func NewConfig(repoMap []byte, roots map[string][]byte) (*MultiRepoConfig, error
}
}

// validation pass against malformed or adversarially crafted map
for _, m := range mapFile.Mapping {
for _, repo := range m.Repositories {
if _, ok := mapFile.Repositories[repo]; !ok {
return nil, fmt.Errorf("mapping references unknown repository %q", repo)
}
}
}
Comment on lines +105 to +115
Comment on lines +105 to +115

return &MultiRepoConfig{
RepoMap: mapFile,
TrustedRoots: roots,
Expand Down