vulncheck: unexport moduleVulnerabilities methods
They are on an unexported type, and aren't used outside the package.
Also, remove two methods which are unused.
Change-Id: Ib40a94707b6d1caa0415aed9905023bffe7d0396
Reviewed-on: https://go-review.googlesource.com/c/vuln/+/400116
Run-TryBot: Jonathan Amsterdam <jba@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Zvonimir Pavlinovic <zpavlinovic@google.com>
diff --git a/vulncheck/binary.go b/vulncheck/binary.go
index 2add537..0d1d331 100644
--- a/vulncheck/binary.go
+++ b/vulncheck/binary.go
@@ -31,7 +31,7 @@
if err != nil {
return nil, err
}
- modVulns = modVulns.Filter(lookupEnv("GOOS", runtime.GOOS), lookupEnv("GOARCH", runtime.GOARCH))
+ modVulns = modVulns.filter(lookupEnv("GOOS", runtime.GOOS), lookupEnv("GOARCH", runtime.GOARCH))
result := &Result{}
for pkg, symbols := range packageSymbols {
if cfg.ImportsOnly {
@@ -47,7 +47,7 @@
// addImportsOnlyVulns adds Vuln entries to result in imports only mode, i.e., for each vulnerable symbol
// of pkg.
func addImportsOnlyVulns(pkg string, symbols []string, result *Result, modVulns moduleVulnerabilities) {
- for _, osv := range modVulns.VulnsForPackage(pkg) {
+ for _, osv := range modVulns.vulnsForPackage(pkg) {
for _, affected := range osv.Affected {
if affected.Package.Name != pkg {
continue
@@ -81,7 +81,7 @@
// addSymbolVulns adds Vuln entries to result for every symbol of pkg in the binary that is vulnerable.
func addSymbolVulns(pkg string, symbols []string, result *Result, modVulns moduleVulnerabilities) {
for _, symbol := range symbols {
- for _, osv := range modVulns.VulnsForSymbol(pkg, symbol) {
+ for _, osv := range modVulns.vulnsForSymbol(pkg, symbol) {
for _, affected := range osv.Affected {
if affected.Package.Name != pkg {
continue
diff --git a/vulncheck/source.go b/vulncheck/source.go
index ed9698e..158f5ae 100644
--- a/vulncheck/source.go
+++ b/vulncheck/source.go
@@ -48,7 +48,7 @@
if err != nil {
return nil, err
}
- modVulns = modVulns.Filter(lookupEnv("GOOS", runtime.GOOS), lookupEnv("GOARCH", runtime.GOARCH))
+ modVulns = modVulns.filter(lookupEnv("GOOS", runtime.GOOS), lookupEnv("GOARCH", runtime.GOARCH))
result := &Result{
Imports: &ImportGraph{Packages: make(map[int]*PkgNode)},
@@ -132,7 +132,7 @@
}
// Check if pkg has known vulnerabilities.
- vulns := modVulns.VulnsForPackage(pkg.PkgPath)
+ vulns := modVulns.vulnsForPackage(pkg.PkgPath)
// If pkg is not vulnerable nor it transitively leads
// to vulnerabilities, jump out.
@@ -338,7 +338,7 @@
}
// Check if f has known vulnerabilities.
- vulns := modVulns.VulnsForSymbol(pkgPath(f), dbFuncName(f))
+ vulns := modVulns.vulnsForSymbol(pkgPath(f), dbFuncName(f))
var funNode *FuncNode
// If there are vulnerabilities for f, create node for f and
diff --git a/vulncheck/vulncheck.go b/vulncheck/vulncheck.go
index ea728a4..ab6ad8b 100644
--- a/vulncheck/vulncheck.go
+++ b/vulncheck/vulncheck.go
@@ -260,7 +260,7 @@
vulns []*osv.Entry
}
-func (mv moduleVulnerabilities) Filter(os, arch string) moduleVulnerabilities {
+func (mv moduleVulnerabilities) filter(os, arch string) moduleVulnerabilities {
var filteredMod moduleVulnerabilities
for _, mod := range mv {
module := mod.mod
@@ -318,18 +318,11 @@
}
return matchesOS && matchesArch
}
-func (mv moduleVulnerabilities) Num() int {
- var num int
- for _, m := range mv {
- num += len(m.vulns)
- }
- return num
-}
-// VulnsForPackage returns the vulnerabilities for the module which is the most
+// vulnsForPackage returns the vulnerabilities for the module which is the most
// specific prefix of importPath, or nil if there is no matching module with
// vulnerabilities.
-func (mv moduleVulnerabilities) VulnsForPackage(importPath string) []*osv.Entry {
+func (mv moduleVulnerabilities) vulnsForPackage(importPath string) []*osv.Entry {
var mostSpecificMod *modVulns
for _, mod := range mv {
md := mod
@@ -360,9 +353,9 @@
return packageVulns
}
-// VulnsForSymbol returns vulnerabilities for `symbol` in `mv.VulnsForPackage(importPath)`.
-func (mv moduleVulnerabilities) VulnsForSymbol(importPath, symbol string) []*osv.Entry {
- vulns := mv.VulnsForPackage(importPath)
+// vulnsForSymbol returns vulnerabilities for `symbol` in `mv.VulnsForPackage(importPath)`.
+func (mv moduleVulnerabilities) vulnsForSymbol(importPath, symbol string) []*osv.Entry {
+ vulns := mv.vulnsForPackage(importPath)
if vulns == nil {
return nil
}
@@ -388,18 +381,3 @@
}
return symbolVulns
}
-
-// Vulns returns vulnerabilities for all modules in `mv`.
-func (mv moduleVulnerabilities) Vulns() []*osv.Entry {
- var vulns []*osv.Entry
- seen := make(map[string]bool)
- for _, mv := range mv {
- for _, v := range mv.vulns {
- if !seen[v.ID] {
- vulns = append(vulns, v)
- seen[v.ID] = true
- }
- }
- }
- return vulns
-}
diff --git a/vulncheck/vulncheck_test.go b/vulncheck/vulncheck_test.go
index 9faf00e..7c7874c 100644
--- a/vulncheck/vulncheck_test.go
+++ b/vulncheck/vulncheck_test.go
@@ -103,7 +103,7 @@
},
}
- filtered := mv.Filter("linux", "amd64")
+ filtered := mv.filter("linux", "amd64")
if !reflect.DeepEqual(filtered, expected) {
t.Fatalf("Filter returned unexpected results, got:\n%s\nwant:\n%s", moduleVulnerabilitiesToString(filtered), moduleVulnerabilitiesToString(expected))
}
@@ -140,7 +140,7 @@
},
}
- filtered := mv.VulnsForPackage("example.mod/a/b/c")
+ filtered := mv.vulnsForPackage("example.mod/a/b/c")
expected := []*osv.Entry{
{ID: "b", Affected: []osv.Affected{{Package: osv.Package{Name: "example.mod/a/b/c"}}}},
}
@@ -175,7 +175,7 @@
},
}
- filtered := mv.VulnsForPackage("example.mod/a/b/c")
+ filtered := mv.vulnsForPackage("example.mod/a/b/c")
expected := []*osv.Entry{
{ID: "c", Affected: []osv.Affected{{Package: osv.Package{Name: "example.mod/b/c"}}}},
}
@@ -208,7 +208,7 @@
},
}
- filtered := mv.VulnsForSymbol("example.mod/a/b/c", "a")
+ filtered := mv.vulnsForSymbol("example.mod/a/b/c", "a")
expected := []*osv.Entry{
{ID: "b", Affected: []osv.Affected{{Package: osv.Package{Name: "example.mod/a/b/c"}, EcosystemSpecific: osv.EcosystemSpecific{Symbols: []string{"a"}}}}},
}