change separate raspbian implementation from util
This commit is contained in:
@@ -138,12 +138,28 @@ func (o Debian) FillWithOval(driver db.DB, r *models.ScanResult) (nCVEs int, err
|
||||
|
||||
var relatedDefs ovalResult
|
||||
if config.Conf.OvalDict.IsFetchViaHTTP() {
|
||||
if relatedDefs, err = getDefsByPackNameViaHTTP(r); err != nil {
|
||||
return 0, err
|
||||
if r.Family != config.Raspbian {
|
||||
if relatedDefs, err = getDefsByPackNameViaHTTP(r); err != nil {
|
||||
return 0, err
|
||||
}
|
||||
} else {
|
||||
// OVAL does not support Package for Raspbian (version has `+rp(t|i)`), so skip it.
|
||||
result := r.ExtractDebianPackFromResult()
|
||||
if relatedDefs, err = getDefsByPackNameViaHTTP(&result); err != nil {
|
||||
return 0, err
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if relatedDefs, err = getDefsByPackNameFromOvalDB(driver, r); err != nil {
|
||||
return 0, err
|
||||
if r.Family != config.Raspbian {
|
||||
if relatedDefs, err = getDefsByPackNameFromOvalDB(driver, r); err != nil {
|
||||
return 0, err
|
||||
}
|
||||
} else {
|
||||
// OVAL does not support Package for Raspbian (version has `+rp(t|i)`), so skip it.
|
||||
result := r.ExtractDebianPackFromResult()
|
||||
if relatedDefs, err = getDefsByPackNameFromOvalDB(driver, &result); err != nil {
|
||||
return 0, err
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
14
oval/util.go
14
oval/util.go
@@ -223,15 +223,7 @@ func httpGet(url string, req request, resChan chan<- response, errChan chan<- er
|
||||
|
||||
func getDefsByPackNameFromOvalDB(driver db.DB, r *models.ScanResult) (relatedDefs ovalResult, err error) {
|
||||
requests := []request{}
|
||||
regexpRaspbianVersion := regexp.MustCompile(`.+\+rp(t|i)\d+`)
|
||||
for _, pack := range r.Packages {
|
||||
// OVAL DB does not support Package for Raspbian (version has `+rp(t|i)`), so skip it.
|
||||
if r.Family == config.Raspbian {
|
||||
if regexpRaspbianVersion.MatchString(pack.FormatVer()) {
|
||||
continue
|
||||
}
|
||||
}
|
||||
|
||||
requests = append(requests, request{
|
||||
packName: pack.Name,
|
||||
versionRelease: pack.FormatVer(),
|
||||
@@ -241,12 +233,6 @@ func getDefsByPackNameFromOvalDB(driver db.DB, r *models.ScanResult) (relatedDef
|
||||
})
|
||||
}
|
||||
for _, pack := range r.SrcPackages {
|
||||
if r.Family == config.Raspbian {
|
||||
if regexpRaspbianVersion.MatchString(pack.Version) {
|
||||
continue
|
||||
}
|
||||
}
|
||||
|
||||
requests = append(requests, request{
|
||||
packName: pack.Name,
|
||||
binaryPackNames: pack.BinaryNames,
|
||||
|
||||
Reference in New Issue
Block a user