func addExportedReportSymbols()

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
}