aboutsummaryrefslogtreecommitdiff
path: root/internal/cvss/cvss.go
diff options
context:
space:
mode:
authorPaul Duncan <pabs@pablotron.org>2022-01-31 14:25:22 -0500
committerPaul Duncan <pabs@pablotron.org>2022-01-31 14:25:22 -0500
commit55b2d74e508d1067b2f6a6ecf9d1d8c4e335eb40 (patch)
tree9b9841d35c31e892b33411b56394927e17a9ea76 /internal/cvss/cvss.go
parent00a8545e7acad181e7ac83a2c6f97f6ba657748c (diff)
downloadcvez-55b2d74e508d1067b2f6a6ecf9d1d8c4e335eb40.tar.bz2
cvez-55b2d74e508d1067b2f6a6ecf9d1d8c4e335eb40.zip
add internal/cvss/badmetric.go
Diffstat (limited to 'internal/cvss/cvss.go')
-rw-r--r--internal/cvss/cvss.go11
1 files changed, 5 insertions, 6 deletions
diff --git a/internal/cvss/cvss.go b/internal/cvss/cvss.go
index 057a163..41422f7 100644
--- a/internal/cvss/cvss.go
+++ b/internal/cvss/cvss.go
@@ -2,7 +2,6 @@
package cvss
import (
- "fmt"
"strings"
)
@@ -235,7 +234,7 @@ func getV2MetricFromString(s string) (v2Metric, error) {
// get metric
m, ok := v2MetricStrLut[s]
if !ok {
- return v2InvalidMetric, fmt.Errorf("invalid metric: %s", s)
+ return v2InvalidMetric, newBadMetric(V20, s)
}
// return success
@@ -725,11 +724,11 @@ func (m v3Metric) Key() Key {
}
// Convert string to CVSS 3.1 metric.
-func getV3Metric(s string) (v3Metric, error) {
+func getV3Metric(version Version, s string) (v3Metric, error) {
// get metric
m, ok := v3MetricStrLut[s]
if !ok {
- return v3InvalidMetric, fmt.Errorf("invalid metric: %s", s)
+ return v3InvalidMetric, newBadMetric(version, s)
}
// return success
@@ -782,7 +781,7 @@ func newV30Vector(s string) (Vector, error) {
// walk metric strings
for i, ms := range(strs) {
// convert metric string to metric
- m, err := getV3Metric(ms)
+ m, err := getV3Metric(V30, ms)
if err != nil {
return nil, err
}
@@ -841,7 +840,7 @@ func newV31Vector(s string) (Vector, error) {
// walk metric strings
for i, ms := range(strs) {
// get metric from string
- m, err := getV3Metric(ms)
+ m, err := getV3Metric(V31, ms)
if err != nil {
return nil, err
}