diff --git a/ext/vulnsrc/oracle/oracle.go b/ext/vulnsrc/oracle/oracle.go index 30363416..bc112865 100644 --- a/ext/vulnsrc/oracle/oracle.go +++ b/ext/vulnsrc/oracle/oracle.go @@ -174,7 +174,7 @@ func (u *updater) Update(datastore database.Datastore) (resp vulnsrc.UpdateRespo // Set the flag if we found anything. if len(elsaList) > 0 { resp.FlagName = updaterFlag - resp.FlagValue = strconv.Itoa(elsaList[len(elsaList)-1]) + resp.FlagValue = strconv.Itoa(largest(elsaList)) } else { log.Debug("no Oracle Linux update.") } @@ -182,6 +182,15 @@ func (u *updater) Update(datastore database.Datastore) (resp vulnsrc.UpdateRespo return resp, nil } +func largest(list []int) (largest int) { + for _, element := range list { + if element > largest { + largest = element + } + } + return +} + func (u *updater) Clean() {} func parseELSA(ovalReader io.Reader) (vulnerabilities []database.Vulnerability, err error) {