Skip to content

Commit c872a8b

Browse files
committed
some code change
1 parent f3dd2ad commit c872a8b

File tree

2 files changed

+15
-4
lines changed

2 files changed

+15
-4
lines changed

detector/detector.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -322,11 +322,12 @@ func Detect(rs []models.ScanResult, dir string) ([]models.ScanResult, error) {
322322
func DetectPkgCves(r *models.ScanResult, ovalCnf config.GovalDictConf, gostCnf config.GostConf, vuls2Conf config.Vuls2Conf, logOpts logging.LogOpts, noProgress bool) error {
323323
if isPkgCvesDetactable(r) {
324324
switch r.Family {
325-
case constant.RedHat, constant.CentOS, constant.Fedora, constant.Alma, constant.Rocky, constant.Oracle, constant.Alpine, constant.Ubuntu:
325+
case constant.RedHat, constant.CentOS, constant.Fedora, constant.Alma, constant.Rocky, constant.Oracle, constant.Alpine, constant.Ubuntu,
326+
constant.OpenSUSE, constant.OpenSUSELeap, constant.SUSEEnterpriseServer, constant.SUSEEnterpriseDesktop:
326327
if err := vuls2.Detect(r, vuls2Conf, noProgress); err != nil {
327328
return xerrors.Errorf("Failed to detect CVE with Vuls2: %w", err)
328329
}
329-
case constant.Amazon, constant.OpenSUSE, constant.OpenSUSELeap, constant.SUSEEnterpriseServer, constant.SUSEEnterpriseDesktop:
330+
case constant.Amazon:
330331
if err := detectPkgsCvesWithOval(ovalCnf, r, logOpts); err != nil {
331332
return xerrors.Errorf("Failed to detect CVE with OVAL: %w", err)
332333
}

detector/vuls2/vuls2.go

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ import (
1919
criteriaTypes "github.com/MaineK00n/vuls-data-update/pkg/extract/types/data/detection/condition/criteria"
2020
criterionTypes "github.com/MaineK00n/vuls-data-update/pkg/extract/types/data/detection/condition/criteria/criterion"
2121
vcAffectedRangeTypes "github.com/MaineK00n/vuls-data-update/pkg/extract/types/data/detection/condition/criteria/criterion/versioncriterion/affected/range"
22+
"github.com/MaineK00n/vuls-data-update/pkg/extract/types/data/detection/condition/criteria/criterion/versioncriterion/fixstatus"
2223
vcPackageTypes "github.com/MaineK00n/vuls-data-update/pkg/extract/types/data/detection/condition/criteria/criterion/versioncriterion/package"
2324
segmentTypes "github.com/MaineK00n/vuls-data-update/pkg/extract/types/data/detection/segment"
2425
ecosystemTypes "github.com/MaineK00n/vuls-data-update/pkg/extract/types/data/detection/segment/ecosystem"
@@ -475,6 +476,10 @@ func walkCriteria(e ecosystemTypes.Ecosystem, sourceID sourceTypes.SourceID, ca
475476

476477
switch fcn.Criterion.Version.Package.Type {
477478
case vcPackageTypes.PackageTypeBinary, vcPackageTypes.PackageTypeSource:
479+
if !cn.Criterion.Version.Vulnerable {
480+
continue
481+
}
482+
478483
rangeType, fixedIn := func() (vcAffectedRangeTypes.RangeType, string) {
479484
if fcn.Criterion.Version.Affected == nil {
480485
return vcAffectedRangeTypes.RangeTypeUnknown, ""
@@ -496,8 +501,13 @@ func walkCriteria(e ecosystemTypes.Ecosystem, sourceID sourceTypes.SourceID, ca
496501
}
497502
return fixState(e, sourceID, fcn.Criterion.Version.FixStatus.Vendor)
498503
}(),
499-
FixedIn: fixedIn,
500-
NotFixedYet: fixedIn == "",
504+
FixedIn: fixedIn,
505+
NotFixedYet: func() bool {
506+
if cn.Criterion.Version.FixStatus == nil {
507+
return true
508+
}
509+
return cn.Criterion.Version.FixStatus.Class != fixstatus.ClassFixed
510+
}(),
501511
},
502512
})
503513
}

0 commit comments

Comments
 (0)