in cmd/vulnreport/main.go [189:218]
func addExportedReportSymbols(r *report.Report) (bool, error) {
if r.Module == "" || len(r.Symbols) == 0 {
return false, nil
}
if len(r.OS) > 0 || len(r.Arch) > 0 {
return false, errors.New("specific GOOS/GOARCH not yet implemented")
}
rc := newReportClient(r)
added := false
syms, err := findExportedSymbols(r.Module, r.Package, rc)
if err != nil {
return false, err
}
if len(syms) > 0 {
added = true
r.DerivedSymbols = syms
}
for i, ap := range r.AdditionalPackages {
syms, err := findExportedSymbols(ap.Module, ap.Package, rc)
if err != nil {
return false, err
}
if len(syms) > 0 {
added = true
// Need to start from r because r.AdditionalPackages is a slice of values.
r.AdditionalPackages[i].DerivedSymbols = syms
}
}
return added, nil
}