From 333d808d7e45b4a4843485501a4a88d117dbd2cc Mon Sep 17 00:00:00 2001 From: Ben Foster Date: Wed, 20 Nov 2024 04:26:22 -0500 Subject: [PATCH] fix(oracle-oval): Support multiple ELSAs per CVE (#221) Co-authored-by: DmitriyLewen --- pkg/vulnsrc/oracle-oval/oracle-oval.go | 181 ++++++- pkg/vulnsrc/oracle-oval/oracle-oval_test.go | 290 +++++++++++- .../testdata/fixtures/data-source.yaml | 7 + .../oracle-oval/testdata/fixtures/happy.yaml | 2 + .../testdata/fixtures/multiple-versions.yaml | 10 + .../oracle-oval/testdata/fixtures/old.yaml | 7 + .../oval/oracle/2021/ELSA-2021-9280.json | 74 +++ .../oval/oracle/2021/ELSA-2021-9344.json | 74 +++ .../oval/oracle/2021/ELSA-2021-9306.json | 440 ++++++++++++++++++ .../oval/oracle/2021/ELSA-2021-9362.json | 440 ++++++++++++++++++ .../oval/oracle/2021/ELSA-2021-4451.json | 263 +++++++++++ .../oval/oracle/2022/ELSA-2022-9221.json | 245 ++++++++++ pkg/vulnsrc/oracle-oval/types.go | 10 +- 13 files changed, 2002 insertions(+), 41 deletions(-) create mode 100644 pkg/vulnsrc/oracle-oval/testdata/fixtures/data-source.yaml create mode 100644 pkg/vulnsrc/oracle-oval/testdata/fixtures/multiple-versions.yaml create mode 100644 pkg/vulnsrc/oracle-oval/testdata/fixtures/old.yaml create mode 100644 pkg/vulnsrc/oracle-oval/testdata/ksplice/vuln-list/oval/oracle/2021/ELSA-2021-9280.json create mode 100644 pkg/vulnsrc/oracle-oval/testdata/ksplice/vuln-list/oval/oracle/2021/ELSA-2021-9344.json create mode 100644 pkg/vulnsrc/oracle-oval/testdata/multi-elsas/vuln-list/oval/oracle/2021/ELSA-2021-9306.json create mode 100644 pkg/vulnsrc/oracle-oval/testdata/multi-elsas/vuln-list/oval/oracle/2021/ELSA-2021-9362.json create mode 100644 pkg/vulnsrc/oracle-oval/testdata/multi-flavor/vuln-list/oval/oracle/2021/ELSA-2021-4451.json create mode 100644 pkg/vulnsrc/oracle-oval/testdata/multi-flavor/vuln-list/oval/oracle/2022/ELSA-2022-9221.json diff --git a/pkg/vulnsrc/oracle-oval/oracle-oval.go b/pkg/vulnsrc/oracle-oval/oracle-oval.go index 8cc37def..8b174d5b 100644 --- a/pkg/vulnsrc/oracle-oval/oracle-oval.go +++ b/pkg/vulnsrc/oracle-oval/oracle-oval.go @@ -10,13 +10,14 @@ import ( "strings" version "github.com/knqyf263/go-rpm-version" + "github.com/samber/lo" bolt "go.etcd.io/bbolt" + "golang.org/x/exp/maps" "golang.org/x/xerrors" "github.com/aquasecurity/trivy-db/pkg/db" "github.com/aquasecurity/trivy-db/pkg/types" "github.com/aquasecurity/trivy-db/pkg/utils" - ustrings "github.com/aquasecurity/trivy-db/pkg/utils/strings" "github.com/aquasecurity/trivy-db/pkg/vulnsrc/vulnerability" ) @@ -34,10 +35,10 @@ var ( ) type PutInput struct { - VulnID string // CVE-ID or ELSA-ID - Vuln types.VulnerabilityDetail // vulnerability detail such as CVSS and description - Advisories map[AffectedPackage]types.Advisory // pkg => advisory - OVAL OracleOVAL // for extensibility, not used in trivy-db + VulnID string // CVE-ID or ELSA-ID + Vuln types.VulnerabilityDetail // vulnerability detail such as CVSS and description + Advisories map[Package]types.Advisories // pkg => advisories + OVALs []OracleOVAL // for extensibility, not used in trivy-db } type DB interface { @@ -111,6 +112,8 @@ func (vs *VulnSrc) put(ovals []OracleOVAL) error { } func (vs *VulnSrc) commit(tx *bolt.Tx, ovals []OracleOVAL) error { + // CVE -> PutInput + putInputs := make(map[string]PutInput) for _, oval := range ovals { elsaID := strings.Split(oval.Title, ":")[0] @@ -122,14 +125,14 @@ func (vs *VulnSrc) commit(tx *bolt.Tx, ovals []OracleOVAL) error { vulnIDs = append(vulnIDs, elsaID) } - advisories := map[AffectedPackage]types.Advisory{} + advisories := map[Package]types.Advisories{} affectedPkgs := walkOracle(oval.Criteria, "", []AffectedPackage{}) for _, affectedPkg := range affectedPkgs { if affectedPkg.Package.Name == "" { continue } - platformName := affectedPkg.PlatformName() + platformName := affectedPkg.Package.PlatformName() if !slices.Contains(targetPlatforms, platformName) { continue } @@ -138,9 +141,18 @@ func (vs *VulnSrc) commit(tx *bolt.Tx, ovals []OracleOVAL) error { return xerrors.Errorf("failed to put data source: %w", err) } - advisories[affectedPkg] = types.Advisory{ - FixedVersion: affectedPkg.Package.FixedVersion, + advs := types.Advisories{ + Entries: []types.Advisory{ + { + FixedVersion: affectedPkg.FixedVersion, + }, + }, } + if savedAdvs, ok := advisories[affectedPkg.Package]; ok { + advs.Entries = append(advs.Entries, savedAdvs.Entries...) + } + advisories[affectedPkg.Package] = advs + } var references []string @@ -156,21 +168,116 @@ func (vs *VulnSrc) commit(tx *bolt.Tx, ovals []OracleOVAL) error { Severity: severityFromThreat(oval.Severity), } - err := vs.Put(tx, PutInput{ + input := PutInput{ VulnID: vulnID, Vuln: vuln, - Advisories: advisories, - OVAL: oval, - }) - if err != nil { - return xerrors.Errorf("db put error: %w", err) + Advisories: maps.Clone(advisories), + OVALs: []OracleOVAL{oval}, + } + + if savedInput, ok := putInputs[input.VulnID]; ok { + input.OVALs = append(input.OVALs, savedInput.OVALs...) + + for inputPkg, inputAdvs := range input.Advisories { + if savedPkgAdvs, pkgFound := savedInput.Advisories[inputPkg]; pkgFound { + inputAdvs.Entries = append(savedPkgAdvs.Entries, inputAdvs.Entries...) + } + savedInput.Advisories[inputPkg] = inputAdvs + } + input.Advisories = savedInput.Advisories } + putInputs[input.VulnID] = input + } + } + + for _, input := range putInputs { + for pkg, advs := range input.Advisories { + input.Advisories[pkg] = resolveAdvisoriesEntries(advs) + } + + err := vs.Put(tx, input) + if err != nil { + return xerrors.Errorf("db put error: %w", err) } } return nil } +// resolveAdvisoriesEntries removes entries with the same fixedVersion. +// Additionally, it only selects the latest fixedVersion for each flavor. +func resolveAdvisoriesEntries(advisories types.Advisories) types.Advisories { + fixedVersions := lo.Map(advisories.Entries, func(entry types.Advisory, _ int) string { + return entry.FixedVersion + }) + fixedVer, resolvedVers := resolveVersions(fixedVersions) + entries := lo.Map(resolvedVers, func(ver string, _ int) types.Advisory { + return types.Advisory{ + FixedVersion: ver, + } + }) + return types.Advisories{ + FixedVersion: fixedVer, + Entries: entries, + } +} + +// resolveVersions removes duplicates and returns normal flavor + only one version for each flavor. +func resolveVersions(vers []string) (string, []string) { + vers = lo.Uniq(vers) + + fixedVers := make(map[PkgFlavor]string) + for _, ver := range vers { + flavor := PackageFlavor(ver) + if savedVer, ok := fixedVers[flavor]; ok { + v := version.NewVersion(ver) + sv := version.NewVersion(savedVer) + if v.LessThan(sv) { + ver = savedVer + } + } + fixedVers[flavor] = ver + } + + versions := lo.Values(fixedVers) + slices.Sort(versions) + + fixedVersion, ok := fixedVers[NormalPackageFlavor] + // To keep the previous logic - use the ksplice/fips version if the normal flavor doesn't exist. + if !ok { + fixedVersion = versions[0] + } + + return fixedVersion, versions +} + +type PkgFlavor string + +const ( + NormalPackageFlavor PkgFlavor = "normal" + FipsPackageFlavor PkgFlavor = "fips" + KsplicePackageFlavor PkgFlavor = "ksplice" +) + +// PackageFlavor determinants the package "flavor" based on its version string +// - normal +// - FIPS validated +// - ksplice userspace +func PackageFlavor(version string) PkgFlavor { + version = strings.ToLower(version) + if strings.HasSuffix(version, "_fips") { + return FipsPackageFlavor + } + + subs := strings.Split(version, ".") + for _, s := range subs { + if strings.HasPrefix(s, "ksplice") { + return KsplicePackageFlavor + } + } + return NormalPackageFlavor +} + func (o *Oracle) Put(tx *bolt.Tx, input PutInput) error { if err := o.PutVulnerabilityDetail(tx, input.VulnID, source.ID, input.Vuln); err != nil { return xerrors.Errorf("failed to save Oracle Linux OVAL vulnerability: %w", err) @@ -183,7 +290,7 @@ func (o *Oracle) Put(tx *bolt.Tx, input PutInput) error { for pkg, advisory := range input.Advisories { platformName := pkg.PlatformName() - if err := o.PutAdvisoryDetail(tx, input.VulnID, pkg.Package.Name, []string{platformName}, advisory); err != nil { + if err := o.PutAdvisoryDetail(tx, input.VulnID, pkg.Name, []string{platformName}, advisory); err != nil { return xerrors.Errorf("failed to save Oracle Linux advisory: %w", err) } } @@ -192,10 +299,36 @@ func (o *Oracle) Put(tx *bolt.Tx, input PutInput) error { func (o *Oracle) Get(release string, pkgName string) ([]types.Advisory, error) { bucket := fmt.Sprintf(platformFormat, release) - advisories, err := o.GetAdvisories(bucket, pkgName) + rawAdvisories, err := o.ForEachAdvisory([]string{bucket}, pkgName) if err != nil { - return nil, xerrors.Errorf("failed to get Oracle Linux advisories: %w", err) + return nil, xerrors.Errorf("unable to iterate advisories: %w", err) } + var advisories []types.Advisory + for vulnID, v := range rawAdvisories { + var adv types.Advisories + if err = json.Unmarshal(v.Content, &adv); err != nil { + return nil, xerrors.Errorf("failed to unmarshal advisory JSON: %w", err) + } + + // For backward compatibility (This code can be deleted after Dec 19th, 2024) + // The old trivy-db has no entries, but has fixed versions and custom fields. + if len(adv.Entries) == 0 { + advisories = append(advisories, types.Advisory{ + VulnerabilityID: vulnID, + FixedVersion: adv.FixedVersion, + DataSource: &v.Source, + Custom: adv.Custom, + }) + continue + } + + for _, entry := range adv.Entries { + entry.VulnerabilityID = vulnID + entry.DataSource = &v.Source + advisories = append(advisories, entry) + } + } + return advisories, nil } @@ -211,11 +344,11 @@ func walkOracle(cri Criteria, osVer string, pkgs []AffectedPackage) []AffectedPa } pkgs = append(pkgs, AffectedPackage{ - OSVer: osVer, Package: Package{ - Name: ss[0], - FixedVersion: version.NewVersion(ss[1]).String(), + Name: ss[0], + OSVer: osVer, }, + FixedVersion: version.NewVersion(ss[1]).String(), }) } @@ -234,7 +367,11 @@ func referencesFromContains(sources []string, matches []string) []string { } } } - return ustrings.Unique(references) + + references = lo.Uniq(references) + slices.Sort(references) + + return references } func severityFromThreat(sev string) types.Severity { diff --git a/pkg/vulnsrc/oracle-oval/oracle-oval_test.go b/pkg/vulnsrc/oracle-oval/oracle-oval_test.go index 9d3ed857..7017c40a 100644 --- a/pkg/vulnsrc/oracle-oval/oracle-oval_test.go +++ b/pkg/vulnsrc/oracle-oval/oracle-oval_test.go @@ -37,26 +37,46 @@ func TestVulnSrc_Update(t *testing.T) { }, { Key: []string{"advisory-detail", "CVE-2007-0493", "Oracle Linux 5", "bind-devel"}, - Value: types.Advisory{ + Value: types.Advisories{ FixedVersion: "30:9.3.3-8.el5", + Entries: []types.Advisory{ + { + FixedVersion: "30:9.3.3-8.el5", + }, + }, }, }, { Key: []string{"advisory-detail", "CVE-2007-0494", "Oracle Linux 5", "bind-devel"}, - Value: types.Advisory{ + Value: types.Advisories{ FixedVersion: "30:9.3.3-8.el5", + Entries: []types.Advisory{ + { + FixedVersion: "30:9.3.3-8.el5", + }, + }, }, }, { Key: []string{"advisory-detail", "CVE-2007-0493", "Oracle Linux 5", "bind-sdb"}, - Value: types.Advisory{ + Value: types.Advisories{ FixedVersion: "30:9.3.3-8.el5", + Entries: []types.Advisory{ + { + FixedVersion: "30:9.3.3-8.el5", + }, + }, }, }, { Key: []string{"advisory-detail", "CVE-2007-0494", "Oracle Linux 5", "bind-sdb"}, - Value: types.Advisory{ + Value: types.Advisories{ FixedVersion: "30:9.3.3-8.el5", + Entries: []types.Advisory{ + { + FixedVersion: "30:9.3.3-8.el5", + }, + }, }, }, { @@ -115,50 +135,90 @@ func TestVulnSrc_Update(t *testing.T) { }, { Key: []string{"advisory-detail", "CVE-2018-1094", "Oracle Linux 6", "kernel-uek-doc"}, - Value: types.Advisory{ + Value: types.Advisories{ FixedVersion: "4.1.12-124.24.3.el6uek", + Entries: []types.Advisory{ + { + FixedVersion: "4.1.12-124.24.3.el6uek", + }, + }, }, }, { Key: []string{"advisory-detail", "CVE-2018-19824", "Oracle Linux 6", "kernel-uek-doc"}, - Value: types.Advisory{ + Value: types.Advisories{ FixedVersion: "4.1.12-124.24.3.el6uek", + Entries: []types.Advisory{ + { + FixedVersion: "4.1.12-124.24.3.el6uek", + }, + }, }, }, { Key: []string{"advisory-detail", "CVE-2018-1094", "Oracle Linux 6", "kernel-uek-firmware"}, - Value: types.Advisory{ + Value: types.Advisories{ FixedVersion: "4.1.12-124.24.3.el6uek", + Entries: []types.Advisory{ + { + FixedVersion: "4.1.12-124.24.3.el6uek", + }, + }, }, }, { Key: []string{"advisory-detail", "CVE-2018-19824", "Oracle Linux 6", "kernel-uek-firmware"}, - Value: types.Advisory{ + Value: types.Advisories{ FixedVersion: "4.1.12-124.24.3.el6uek", + Entries: []types.Advisory{ + { + FixedVersion: "4.1.12-124.24.3.el6uek", + }, + }, }, }, { Key: []string{"advisory-detail", "CVE-2018-1094", "Oracle Linux 7", "kernel-uek-doc"}, - Value: types.Advisory{ + Value: types.Advisories{ FixedVersion: "4.1.12-124.24.3.el7uek", + Entries: []types.Advisory{ + { + FixedVersion: "4.1.12-124.24.3.el7uek", + }, + }, }, }, { Key: []string{"advisory-detail", "CVE-2018-19824", "Oracle Linux 7", "kernel-uek-doc"}, - Value: types.Advisory{ + Value: types.Advisories{ FixedVersion: "4.1.12-124.24.3.el7uek", + Entries: []types.Advisory{ + { + FixedVersion: "4.1.12-124.24.3.el7uek", + }, + }, }, }, { Key: []string{"advisory-detail", "CVE-2018-1094", "Oracle Linux 7", "kernel-uek-firmware"}, - Value: types.Advisory{ + Value: types.Advisories{ FixedVersion: "4.1.12-124.24.3.el7uek", + Entries: []types.Advisory{ + { + FixedVersion: "4.1.12-124.24.3.el7uek", + }, + }, }, }, { Key: []string{"advisory-detail", "CVE-2018-19824", "Oracle Linux 7", "kernel-uek-firmware"}, - Value: types.Advisory{ + Value: types.Advisories{ FixedVersion: "4.1.12-124.24.3.el7uek", + Entries: []types.Advisory{ + { + FixedVersion: "4.1.12-124.24.3.el7uek", + }, + }, }, }, { @@ -195,6 +255,155 @@ func TestVulnSrc_Update(t *testing.T) { }, }, }, + { + name: "happy path multi flavors", + dir: filepath.Join("testdata", "multi-flavor"), + wantValues: []vulnsrctest.WantValues{ + { + Key: []string{"data-source", "Oracle Linux 8"}, + Value: types.DataSource{ + ID: vulnerability.OracleOVAL, + Name: "Oracle Linux OVAL definitions", + URL: "https://linux.oracle.com/security/oval/", + }, + }, + + { + Key: []string{"advisory-detail", "CVE-2021-20232", "Oracle Linux 8", "gnutls"}, + Value: types.Advisories{ + FixedVersion: "3.6.16-4.el8", + Entries: []types.Advisory{ + { + FixedVersion: "10:3.6.16-4.0.1.el8_fips", + }, + { + FixedVersion: "3.6.16-4.el8", + }, + }, + }, + }, + { + Key: []string{"advisory-detail", "CVE-2021-20232", "Oracle Linux 8", "nettle"}, + Value: types.Advisories{ + FixedVersion: "3.4.1-7.el8", + Entries: []types.Advisory{ + { + FixedVersion: "3.4.1-7.el8", + }, + }, + }, + }, + { + Key: []string{"vulnerability-detail", "CVE-2021-20232", "oracle-oval"}, + Value: types.VulnerabilityDetail{ + Title: "ELSA-2022-9221: gnutls security update (MODERATE)", + Description: "[3.6.16-4.0.1_fips]\n- Allow RSA keygen with modulus sizes bigger than 3072 bits and validate the seed length\n as defined in FIPS 186-4 section B.3.2 [Orabug: 33200526]\n- Allow bigger known RSA modulus sizes when calling\n rsa_generate_fips186_4_keypair directly [Orabug: 33200526]\n- Change Epoch from 1 to 10\n\n[3.6.16-4]\n- p11tool: Document ID reuse behavior when importing certs (#1776250)\n\n[3.6.16-3]\n- Treat SHA-1 signed CA in the trusted set differently (#1965445)\n\n[3.6.16-2]\n- Filter certificate_types in TLS 1.2 CR based on signature algorithms (#1942216)\n\n[3.6.16-1]\n- Update to upstream 3.6.16 release (#1956783)\n- Fix potential use-after-free in key_share handling (#1927597)\n- Fix potential use-after-free in pre_shared_key handling (#1927593)\n- Stop gnutls-serv relying on AI_ADDRCONFIG to decide listening address (#1908334)\n- Fix cert expiration issue in tests (#1908110)\n\n[3.6.14-10]\n- Port fixes for potential miscalculation in ecdsa_verify (#1942931)\n\n[3.6.14-9]\n- Revert the previous change", + References: []string{ + "https://linux.oracle.com/cve/CVE-2021-20232.html", + "https://linux.oracle.com/errata/ELSA-2022-9221.html", + }, + Severity: types.SeverityMedium, + }, + }, + { + Key: []string{"vulnerability-id", "CVE-2021-20232"}, + Value: map[string]interface{}{}, + }, + }, + }, + { + name: "happy path multiple ELSAs", + dir: filepath.Join("testdata", "multi-elsas"), + wantValues: []vulnsrctest.WantValues{ + { + Key: []string{"data-source", "Oracle Linux 8"}, + Value: types.DataSource{ + ID: vulnerability.OracleOVAL, + Name: "Oracle Linux OVAL definitions", + URL: "https://linux.oracle.com/security/oval/", + }, + }, + + { + Key: []string{"advisory-detail", "CVE-2021-23133", "Oracle Linux 7", "kernel-uek"}, + Value: types.Advisories{ + FixedVersion: "5.4.17-2102.203.5.el7uek", + Entries: []types.Advisory{ + { + FixedVersion: "5.4.17-2102.203.5.el7uek", + }, + }, + }, + }, + { + Key: []string{"advisory-detail", "CVE-2021-23133", "Oracle Linux 8", "kernel-uek"}, + Value: types.Advisories{ + FixedVersion: "5.4.17-2102.203.5.el8uek", + Entries: []types.Advisory{ + { + FixedVersion: "5.4.17-2102.203.5.el8uek", + }, + }, + }, + }, + { + Key: []string{"vulnerability-detail", "CVE-2021-23133", "oracle-oval"}, + Value: types.VulnerabilityDetail{ + Title: "ELSA-2021-9362: Unbreakable Enterprise kernel security update (IMPORTANT)", + Description: "[5.4.17-2102.203.5]\n- rds/ib: move rds_ib_clear_irq_miss() to .h ...", + References: []string{ + "https://linux.oracle.com/cve/CVE-2021-23133.html", + "https://linux.oracle.com/errata/ELSA-2021-9362.html", + }, + Severity: types.SeverityHigh, + }, + }, + { + Key: []string{"vulnerability-id", "CVE-2021-23133"}, + Value: map[string]interface{}{}, + }, + }, + }, + { + name: "multiple ksplice builds", + dir: filepath.Join("testdata", "ksplice"), + wantValues: []vulnsrctest.WantValues{ + { + Key: []string{"data-source", "Oracle Linux 8"}, + Value: types.DataSource{ + ID: vulnerability.OracleOVAL, + Name: "Oracle Linux OVAL definitions", + URL: "https://linux.oracle.com/security/oval/", + }, + }, + { + Key: []string{"advisory-detail", "CVE-2016-10228", "Oracle Linux 8", "glibc"}, + Value: types.Advisories{ + FixedVersion: "2:2.28-151.0.1.ksplice2.el8", + Entries: []types.Advisory{ + { + FixedVersion: "2:2.28-151.0.1.ksplice2.el8", + }, + }, + }, + }, + { + Key: []string{"vulnerability-detail", "CVE-2016-10228", "oracle-oval"}, + Value: types.VulnerabilityDetail{ + Title: "ELSA-2021-9344: glibc security update (IMPORTANT)", + References: []string{ + "https://linux.oracle.com/cve/CVE-2016-10228.html", + "https://linux.oracle.com/errata/ELSA-2021-9344.html", + }, + Severity: types.SeverityHigh, + }, + }, + { + Key: []string{"vulnerability-id", "CVE-2016-10228"}, + Value: map[string]interface{}{}, + }, + }, + }, { name: "happy path ELSA-ID", dir: filepath.Join("testdata", "elsa-id"), @@ -209,8 +418,13 @@ func TestVulnSrc_Update(t *testing.T) { }, { Key: []string{"advisory-detail", "ELSA-2007-0057", "Oracle Linux 5", "bind-devel"}, - Value: types.Advisory{ + Value: types.Advisories{ FixedVersion: "9.3.3-8.el5", + Entries: []types.Advisory{ + { + FixedVersion: "9.3.3-8.el5", + }, + }, }, }, { @@ -286,13 +500,61 @@ func TestVulnSrc_Get(t *testing.T) { }{ { name: "happy path", - fixtures: []string{"testdata/fixtures/happy.yaml"}, + fixtures: []string{"testdata/fixtures/happy.yaml", "testdata/fixtures/data-source.yaml"}, + version: "8", + pkgName: "bind", + want: []types.Advisory{ + { + VulnerabilityID: "ELSA-2019-1145", + FixedVersion: "32:9.11.4-17.P2.el8_0", + DataSource: &types.DataSource{ + ID: "oracle-oval", + Name: "Oracle Linux OVAL definitions", + URL: "https://linux.oracle.com/security/oval/", + }, + }, + }, + }, + { + name: "happy path. Multiple versions for one CVE", + fixtures: []string{"testdata/fixtures/multiple-versions.yaml", "testdata/fixtures/data-source.yaml"}, + version: "8", + pkgName: "gnutls", + want: []types.Advisory{ + { + VulnerabilityID: "CVE-2021-20232", + FixedVersion: "10:3.6.16-4.0.1.el8_fips", + DataSource: &types.DataSource{ + ID: "oracle-oval", + Name: "Oracle Linux OVAL definitions", + URL: "https://linux.oracle.com/security/oval/", + }, + }, + { + VulnerabilityID: "CVE-2021-20232", + FixedVersion: "3.6.16-4.el8", + DataSource: &types.DataSource{ + ID: "oracle-oval", + Name: "Oracle Linux OVAL definitions", + URL: "https://linux.oracle.com/security/oval/", + }, + }, + }, + }, + { + name: "happy path. Old trivy-db", + fixtures: []string{"testdata/fixtures/old.yaml", "testdata/fixtures/data-source.yaml"}, version: "8", pkgName: "bind", want: []types.Advisory{ { VulnerabilityID: "ELSA-2019-1145", FixedVersion: "32:9.11.4-17.P2.el8_0", + DataSource: &types.DataSource{ + ID: "oracle-oval", + Name: "Oracle Linux OVAL definitions", + URL: "https://linux.oracle.com/security/oval/", + }, }, }, }, diff --git a/pkg/vulnsrc/oracle-oval/testdata/fixtures/data-source.yaml b/pkg/vulnsrc/oracle-oval/testdata/fixtures/data-source.yaml new file mode 100644 index 00000000..7eef13b6 --- /dev/null +++ b/pkg/vulnsrc/oracle-oval/testdata/fixtures/data-source.yaml @@ -0,0 +1,7 @@ +- bucket: data-source + pairs: + - key: Oracle Linux 8 + value: + ID: "oracle-oval" + Name: "Oracle Linux OVAL definitions" + URL: "https://linux.oracle.com/security/oval/" \ No newline at end of file diff --git a/pkg/vulnsrc/oracle-oval/testdata/fixtures/happy.yaml b/pkg/vulnsrc/oracle-oval/testdata/fixtures/happy.yaml index 05fb8b16..8ab7b195 100644 --- a/pkg/vulnsrc/oracle-oval/testdata/fixtures/happy.yaml +++ b/pkg/vulnsrc/oracle-oval/testdata/fixtures/happy.yaml @@ -5,3 +5,5 @@ - key: ELSA-2019-1145 value: FixedVersion: "32:9.11.4-17.P2.el8_0" + Entries: + - FixedVersion: "32:9.11.4-17.P2.el8_0" diff --git a/pkg/vulnsrc/oracle-oval/testdata/fixtures/multiple-versions.yaml b/pkg/vulnsrc/oracle-oval/testdata/fixtures/multiple-versions.yaml new file mode 100644 index 00000000..5418a539 --- /dev/null +++ b/pkg/vulnsrc/oracle-oval/testdata/fixtures/multiple-versions.yaml @@ -0,0 +1,10 @@ +- bucket: Oracle Linux 8 + pairs: + - bucket: gnutls + pairs: + - key: CVE-2021-20232 + value: + FixedVersion: "3.6.16-4.el8" + Entries: + - FixedVersion: "10:3.6.16-4.0.1.el8_fips" + - FixedVersion: "3.6.16-4.el8" diff --git a/pkg/vulnsrc/oracle-oval/testdata/fixtures/old.yaml b/pkg/vulnsrc/oracle-oval/testdata/fixtures/old.yaml new file mode 100644 index 00000000..05fb8b16 --- /dev/null +++ b/pkg/vulnsrc/oracle-oval/testdata/fixtures/old.yaml @@ -0,0 +1,7 @@ +- bucket: Oracle Linux 8 + pairs: + - bucket: bind + pairs: + - key: ELSA-2019-1145 + value: + FixedVersion: "32:9.11.4-17.P2.el8_0" diff --git a/pkg/vulnsrc/oracle-oval/testdata/ksplice/vuln-list/oval/oracle/2021/ELSA-2021-9280.json b/pkg/vulnsrc/oracle-oval/testdata/ksplice/vuln-list/oval/oracle/2021/ELSA-2021-9280.json new file mode 100644 index 00000000..f97642b0 --- /dev/null +++ b/pkg/vulnsrc/oracle-oval/testdata/ksplice/vuln-list/oval/oracle/2021/ELSA-2021-9280.json @@ -0,0 +1,74 @@ +{ + "Title": "ELSA-2021-9280: glibc security update (IMPORTANT)", + "Description": "[2.28-151.0.1.el8_4]\n- merge RH patches for ol8-u4 release\nReview-exception: Patch merge\n- Provide glibc.pthread.mutex_spin_count tunable for pthread adaptive\n- spin mutex\nOrabug: 27982358.\nReviewed-by: Qing Zhao \u003cqing.zhao@oracle.com\u003e\n- add Ampere emag to tunable cpu list (Patrick McGehearty)\n- add optimized memset for emag\n- add an ASIMD variant of strlen for falkor\n- Orabug: 2700101.\n- Modify glibc-ora28849085.patch so it works with RHCK kernels.\n- Orabug: 28849085.\n- Make _IO_funlockfile match __funlockfile and _IO_flockfile match __flockfile\n- Both should test\n- if (stream-\u003e_flags \u0026 _IO_USER_LOCK) == 0)\n- _IO_lock_lock (*stream-\u003e_lock);\n- OraBug: 28481550.\nReviewed-by: Qing Zhao \u003cqing.zhao@oracle.com\u003e\n\n[2.28-153]\n- Support SEM_STAT_ANY via semctl. Return EINVAL for unknown commands to semctl,\n msgctl, and shmctl. (#1912670)\n\n[2.28-151]\n- CVE-2019-9169: Fix buffer overread in regexec.c (#1685400).\n\n[2.28-150]\n- Rebuild glibc to update security markup metadata (#1931305)\n\n[2.28-149]\n- Fix NSS files and compat service upgrade defect (#1927040).\n\n[2.28-148]\n- CVE-2021-3326: iconv assertion failure in ISO-2022-JP-3 decoding (#1924919)\n\n[2.28-147]\n- x86-64: Fix FMA4 math routine selection after bug 1817513 (#1918115)\n\n[2.28-146]\n- CVE-2019-25013:Fix buffer overrun in EUC-KR conversion module (#1912544)\n\n[2.28-145]\n- Update glibc-hwcaps fix from upstream (#1817513)\n\n[2.28-144]\n- Support running libc.so.6 as a main program in more cases (#1882466)\n\n[2.28-142]\n- Add glibc-hwcaps support (#1817513)\n- Implement DT_AUDIT support (#1871385)\n\n[2.28-141]\n- Update Intel CET support (#1855790)\n\n[2.28-140]\n- Fix calling lazily-bound SVE-using functions on AArch64 (#1893662)\n\n[2.28-139]\n- CVE-2016-10228, CVE-2020-27618: Fix infinite loops in iconv (#1704868,\n\n[2.28-138]\n- Avoid comments after %endif in the RPM spec file (#1894340)\n\n[2.28-137]\n- x86: Further memcpy optimizations for AMD Zen (#1880670)\n\n[2.28-136]\n- Allow __getauxval in testsuite check (#1856398)\n\n[2.28-135]\n- Use -moutline-atomics for aarch64 (#1856398)\n\n[2.28-134]\n- resolv: Handle DNS transaction ID collisions (#1868106)\n\n[2.28-133]\n- x86: Update auto-tuning of memcpy non-temporal threshold (#1880670)\n\n[2.28-132]\n- Fix fgetsgent_r data corruption bug (#1871397)\n\n[2.28-131]\n- Improve IBM zSeries (s390x) Performance (#1871395)\n\n[2.28-130]\n- Fix avx2 strncmp offset compare condition check (#1871394)\n- Add strncmp and strcmp testcases for page boundary\n\n[2.28-129]\n- Improve IBM POWER9 architecture performance (#1871387)\n\n[2.28-128]\n- Enable glibc for POWER10 (#1845098)", + "Platform": [ + "Oracle Linux 8" + ], + "References": [ + { + "Source": "elsa", + "URI": "https://linux.oracle.com/errata/ELSA-2021-9280.html", + "ID": "ELSA-2021-9280" + }, + { + "Source": "CVE", + "URI": "https://linux.oracle.com/cve/CVE-2016-10228.html", + "ID": "CVE-2016-10228" + } + ], + "Criteria": { + "Operator": "AND", + "Criterias": [ + { + "Operator": "OR", + "Criterias": [ + { + "Operator": "AND", + "Criterias": [ + { + "Operator": "OR", + "Criterias": [ + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "glibc is earlier than 2:2.28-151.0.1.ksplice1.el8" + }, + { + "Comment": "glibc is signed with the Oracle Linux 8 key" + }, + { + "Comment": "glibc is ksplice-based" + } + ] + } + ], + "Criterions": null + } + ], + "Criterions": [ + { + "Comment": "Oracle Linux arch is x86_64" + } + ] + } + ], + "Criterions": null + } + ], + "Criterions": [ + { + "Comment": "Oracle Linux 8 is installed" + } + ] + }, + "Severity": "IMPORTANT", + "Cves": [ + { + "Impact": "", + "Href": "https://linux.oracle.com/cve/CVE-2016-10228.html", + "ID": "CVE-2016-10228" + } + ] +} \ No newline at end of file diff --git a/pkg/vulnsrc/oracle-oval/testdata/ksplice/vuln-list/oval/oracle/2021/ELSA-2021-9344.json b/pkg/vulnsrc/oracle-oval/testdata/ksplice/vuln-list/oval/oracle/2021/ELSA-2021-9344.json new file mode 100644 index 00000000..0856b653 --- /dev/null +++ b/pkg/vulnsrc/oracle-oval/testdata/ksplice/vuln-list/oval/oracle/2021/ELSA-2021-9344.json @@ -0,0 +1,74 @@ +{ + "Title": "ELSA-2021-9344: glibc security update (IMPORTANT)", + "Description": "", + "Platform": [ + "Oracle Linux 8" + ], + "References": [ + { + "Source": "elsa", + "URI": "https://linux.oracle.com/errata/ELSA-2021-9344.html", + "ID": "ELSA-2021-9344" + }, + { + "Source": "CVE", + "URI": "https://linux.oracle.com/cve/CVE-2016-10228.html", + "ID": "CVE-2016-10228" + } + ], + "Criteria": { + "Operator": "AND", + "Criterias": [ + { + "Operator": "OR", + "Criterias": [ + { + "Operator": "AND", + "Criterias": [ + { + "Operator": "OR", + "Criterias": [ + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "glibc is earlier than 2:2.28-151.0.1.ksplice2.el8" + }, + { + "Comment": "glibc is signed with the Oracle Linux 8 key" + }, + { + "Comment": "glibc is ksplice-based" + } + ] + } + ], + "Criterions": null + } + ], + "Criterions": [ + { + "Comment": "Oracle Linux arch is x86_64" + } + ] + } + ], + "Criterions": null + } + ], + "Criterions": [ + { + "Comment": "Oracle Linux 8 is installed" + } + ] + }, + "Severity": "IMPORTANT", + "Cves": [ + { + "Impact": "", + "Href": "https://linux.oracle.com/cve/CVE-2016-10228.html", + "ID": "CVE-2016-10228" + } + ] +} \ No newline at end of file diff --git a/pkg/vulnsrc/oracle-oval/testdata/multi-elsas/vuln-list/oval/oracle/2021/ELSA-2021-9306.json b/pkg/vulnsrc/oracle-oval/testdata/multi-elsas/vuln-list/oval/oracle/2021/ELSA-2021-9306.json new file mode 100644 index 00000000..8f6672ac --- /dev/null +++ b/pkg/vulnsrc/oracle-oval/testdata/multi-elsas/vuln-list/oval/oracle/2021/ELSA-2021-9306.json @@ -0,0 +1,440 @@ +{ + "Title": "ELSA-2021-9306: Unbreakable Enterprise kernel security update (IMPORTANT)", + "Description": "[5.4.17-2102.202.5]\n- sctp: delay auto_asconf init until binding the first addr (Xin Long) [Orabug: 32907967] {CVE-2021-23133} {CVE-2021-23133}\n- dm ioctl: fix out of bounds array access when no devices (Mikulas Patocka) [Orabug: 32860491] {CVE-2021-31916}\n- uek-rpm: update kABI lists for the new symbols (Saeed Mirzamohammadi) [Orabug: 32883836] \n- md/raid1: properly indicate failure when ending a failed write request (Paul Clements) [Orabug: 32888143] \n- scsi: lpfc: Fix DMA virtual address ptr assignment in bsg (James Smart) [Orabug: 32827840]\n\n[5.4.17-2102.202.4]\n- uek-rpm: Update missing configs as compared to OL8.4 RHCK (Saeed Mirzamohammadi) [Orabug: 32837542] \n- video: hyperv_fb: Add ratelimit on error message (Michael Kelley) [Orabug: 32867569] \n- Drivers: hv: vmbus: Initialize unload_event statically (Andrea Parri (Microsoft)) [Orabug: 32867569] \n- Drivers: hv: vmbus: Increase wait time for VMbus unload (Michael Kelley) [Orabug: 32867569] \n- uek-rpm: Remove hwcap directive and /etc/ld.so.conf.d/*.conf file (Victor Erminpour) [Orabug: 32816428]\n\n[5.4.17-2102.202.3]\n- LTS tag: v5.4.94 (Jack Vogel) \n- fs: fix lazytime expiration handling in __writeback_single_inode() (Eric Biggers) \n- writeback: Drop I_DIRTY_TIME_EXPIRE (Jan Kara) \n- dm integrity: conditionally disable 'recalculate' feature (Mikulas Patocka) \n- tools: Factor HOSTCC, HOSTLD, HOSTAR definitions (Jean-Philippe Brucker) \n- SMB3.1.1: do not log warning message if server doesn't populate salt (Steve French) \n- arm64: mm: use single quantity to represent the PA to VA translation (Ard Biesheuvel) \n- tracing: Fix race in trace_open and buffer resize call (Gaurav Kohli) \n- io_uring: Fix current-\u003efs handling in io_sq_wq_submit_work() (Nicolai Stange) \n- HID: wacom: Correct NULL dereference on AES pen proximity (Jason Gerecke) \n- Revert 'mm/slub: fix a memory leak in sysfs_slab_add()' (Wang Hai) \n- gpio: mvebu: fix pwm .get_state period calculation (Baruch Siach) \n- LTS tag: v5.4.93 (Jack Vogel) \n- tcp: fix TCP_USER_TIMEOUT with zero window (Enke Chen) \n- net: dsa: b53: fix an off by one in checking 'vlan-\u003evid' (Dan Carpenter) \n- net: Disable NETIF_F_HW_TLS_RX when RXCSUM is disabled (Tariq Toukan) \n- net: mscc: ocelot: allow offloading of bridge on top of LAG (Vladimir Oltean) \n- ipv6: set multicast flag on the multicast route (Matteo Croce) \n- net_sched: reject silly cell_log in qdisc_get_rtab() (Eric Dumazet) \n- net_sched: avoid shift-out-of-bounds in tcindex_set_parms() (Eric Dumazet) \n- ipv6: create multicast route with RTPROT_KERNEL (Matteo Croce) \n- udp: mask TOS bits in udp_v4_early_demux() (Guillaume Nault) \n- kasan: fix incorrect arguments passing in kasan_add_zero_shadow (Lecopzer Chen) \n- kasan: fix unaligned address is unhandled in kasan_remove_zero_shadow (Lecopzer Chen) \n- skbuff: back tiny skbs with kmalloc() in __netdev_alloc_skb() too (Alexander Lobakin) \n- lightnvm: fix memory leak when submit fails (Pan Bian) \n- sh_eth: Fix power down vs. is_opened flag ordering (Geert Uytterhoeven) \n- net: dsa: mv88e6xxx: also read STU state in mv88e6250_g1_vtu_getnext (Rasmus Villemoes) \n- sh: dma: fix kconfig dependency for G2_DMA (Necip Fazil Yildiran) \n- netfilter: rpfilter: mask ecn bits before fib lookup (Guillaume Nault) \n- x86/cpu/amd: Set __max_die_per_package on AMD (Yazen Ghannam) \n- pinctrl: ingenic: Fix JZ4760 support (Paul Cercueil) \n- driver core: Extend device_is_dependent() (Rafael J. Wysocki) \n- xhci: tegra: Delay for disabling LFPS detector (JC Kuo) \n- xhci: make sure TRB is fully written before giving it to the controller (Mathias Nyman) \n- usb: bdc: Make bdc pci driver depend on BROKEN (Patrik Jakobsson) \n- usb: udc: core: Use lock when write to soft_connect (Thinh Nguyen) \n- usb: gadget: aspeed: fix stop dma register setting. (Ryan Chen) \n- USB: ehci: fix an interrupt calltrace error (Longfang Liu) \n- ehci: fix EHCI host controller initialization sequence (Eugene Korenevsky) \n- serial: mvebu-uart: fix tx lost characters at power off (Pali Rohar) \n- stm class: Fix module init return on allocation failure (Wang Hui) \n- intel_th: pci: Add Alder Lake-P support (Alexander Shishkin) \n- x86/mmx: Use KFPU_387 for MMX string operations (Andy Lutomirski) \n- x86/topology: Make __max_die_per_package available unconditionally (Borislav Petkov) \n- x86/fpu: Add kernel_fpu_begin_mask() to selectively initialize state (Andy Lutomirski) \n- irqchip/mips-cpu: Set IPI domain parent chip (Mathias Kresin) \n- cifs: do not fail __smb_send_rqst if non-fatal signals are pending (Ronnie Sahlberg) \n- iio: ad5504: Fix setting power-down state (Lars-Peter Clausen) \n- can: peak_usb: fix use after free bugs (Vincent Mailhol) \n- can: vxcan: vxcan_xmit: fix use after free bug (Vincent Mailhol) \n- can: dev: can_restart: fix use after free bug (Vincent Mailhol) \n- selftests: net: fib_tests: remove duplicate log test (Hangbin Liu) \n- platform/x86: intel-vbtn: Drop HP Stream x360 Convertible PC 11 from allow-list (Hans de Goede) \n- i2c: octeon: check correct size of maximum RECV_LEN packet (Wolfram Sang) \n- powerpc: Fix alignment bug within the init sections (Ariel Marcovitch) \n- scsi: megaraid_sas: Fix MEGASAS_IOC_FIRMWARE regression (Arnd Bergmann) \n- pinctrl: aspeed: g6: Fix PWMG0 pinctrl setting (Billy Tsai) \n- powerpc: Use the common INIT_DATA_SECTION macro in vmlinux.lds.S (Youling Tang) \n- drm/nouveau/kms/nv50-: fix case where notifier buffer is at offset 0 (Ben Skeggs) \n- drm/nouveau/mmu: fix vram heap sizing (Ben Skeggs) \n- drm/nouveau/i2c/gm200: increase width of aux semaphore owner fields (Ben Skeggs) \n- drm/nouveau/privring: ack interrupts the same way as RM (Ben Skeggs) \n- drm/nouveau/bios: fix issue shadowing expansion ROMs (Ben Skeggs) \n- drm/amd/display: Fix to be able to stop crc calculation (Wayne Lin) \n- drm/amdgpu/psp: fix psp gfx ctrl cmds (Victor Zhao) \n- riscv: defconfig: enable gpio support for HiFive Unleashed (Sagar Shrikant Kadam) \n- dts: phy: fix missing mdio device and probe failure of vsc8541-01 device (Sagar Shrikant Kadam) \n- x86/xen: Add xen_no_vector_callback option to test PCI INTX delivery (David Woodhouse) \n- xen: Fix event channel callback via INTX/GSI (David Woodhouse) \n- arm64: make atomic helpers __always_inline (Arnd Bergmann) \n- clk: tegra30: Add hda clock default rates to clock driver (Peter Geis) \n- HID: Ignore battery for Elan touchscreen on ASUS UX550 (Seth Miller) \n- HID: logitech-dj: add the G602 receiver (Filipe Lains) \n- riscv: Fix sifive serial driver (Damien Le Moal) \n- riscv: Fix kernel time_init() (Damien Le Moal) \n- scsi: sd: Suppress spurious errors when WRITE SAME is being disabled (Ewan D. Milne) \n- scsi: qedi: Correct max length of CHAP secret (Nilesh Javali) \n- scsi: ufs: Correct the LUN used in eh_device_reset_handler() callback (Can Guo) \n- dm integrity: select CRYPTO_SKCIPHER (Anthony Iliopoulos) \n- HID: multitouch: Enable multi-input for Synaptics pointstick/touchpad device (Kai-Heng Feng) \n- ASoC: Intel: haswell: Add missing pm_ops (Cezary Rojewski) \n- drm/i915/gt: Prevent use of engine-\u003ewa_ctx after error (Chris Wilson) \n- drm/syncobj: Fix use-after-free (Daniel Vetter) \n- drm/atomic: put state on error path (Pan Bian) \n- dm integrity: fix a crash if 'recalculate' used without 'internal_hash' (Mikulas Patocka) \n- dm: avoid filesystem lookup in dm_get_dev_t() (Hannes Reinecke) \n- mmc: sdhci-xenon: fix 1.8v regulator stabilization (Alex Leibovich) \n- mmc: core: don't initialize block size from ext_csd if not present (Peter Collingbourne) \n- btrfs: send: fix invalid clone operations when cloning from the same file and root (Filipe Manana) \n- btrfs: don't clear ret in btrfs_start_dirty_block_groups (Josef Bacik) \n- btrfs: fix lockdep splat in btrfs_recover_relocation (Josef Bacik) \n- btrfs: don't get an EINTR during drop_snapshot for reloc (Josef Bacik) \n- ACPI: scan: Make acpi_bus_get_device() clear return pointer on error (Hans de Goede) \n- ALSA: hda/via: Add minimum mute flag (Takashi Iwai) \n- ALSA: seq: oss: Fix missing error check in snd_seq_oss_synth_make_info() (Takashi Iwai) \n- platform/x86: ideapad-laptop: Disable touchpad_switch for ELAN0634 (Jiaxun Yang) \n- platform/x86: i2c-multi-instantiate: Don't create platform device for INT3515 ACPI nodes (Heikki Krogerus) \n- i2c: bpmp-tegra: Ignore unknown I2C_M flags (Mikko Perttunen) \n- LTS tag: v5.4.92 (Jack Vogel) \n- spi: cadence: cache reference clock rate during probe (Michael Hennerich) \n- mac80211: check if atf has been disabled in __ieee80211_schedule_txq (Lorenzo Bianconi) \n- mac80211: do not drop tx nulldata packets on encrypted links (Felix Fietkau) \n- tipc: fix NULL deref in tipc_link_xmit() (Hoang Le) \n- net, sctp, filter: remap copy_from_user failure error (Daniel Borkmann) \n- rxrpc: Fix handling of an unsupported token type in rxrpc_read() (David Howells) \n- net: avoid 32 x truesize under-estimation for tiny skbs (Eric Dumazet) \n- net: sit: unregister_netdevice on newlink's error path (Jakub Kicinski) \n- net: stmmac: Fixed mtu channged by cache aligned (David Wu) \n- rxrpc: Call state should be read with READ_ONCE() under some circumstances (Baptiste Lepers) \n- net: dcb: Accept RTM_GETDCB messages carrying set-like DCB commands (Petr Machata) \n- net: dcb: Validate netlink message in DCB handler (Petr Machata) \n- esp: avoid unneeded kmap_atomic call (Willem de Bruijn) \n- rndis_host: set proper input size for OID_GEN_PHYSICAL_MEDIUM request (Andrey Zhizhikin) \n- net: mvpp2: Remove Pause and Asym_Pause support (Stefan Chulski) \n- mlxsw: core: Increase critical threshold for ASIC thermal zone (Vadim Pasternak) \n- mlxsw: core: Add validation of transceiver temperature thresholds (Vadim Pasternak) \n- net: ipv6: Validate GSO SKB before finish IPv6 processing (Aya Levin) \n- netxen_nic: fix MSI/MSI-x interrupts (Manish Chopra) \n- udp: Prevent reuseport_select_sock from reading uninitialized socks (Baptiste Lepers) \n- bpf: Fix helper bpf_map_peek_elem_proto pointing to wrong callback (Mircea Cirjaliu) \n- bpf: Don't leak memory in bpf getsockopt when optlen == 0 (Stanislav Fomichev) \n- nfsd4: readdirplus shouldn't return parent of export (J. Bruce Fields) \n- spi: npcm-fiu: Disable clock in probe error path (Lukas Wunner) \n- spi: npcm-fiu: simplify the return expression of npcm_fiu_probe() (Qinglang Miao) \n- elfcore: fix building with clang (Arnd Bergmann) \n- xen/privcmd: allow fetching resource sizes (Roger Pau Monne) \n- compiler.h: Raise minimum version of GCC to 5.1 for arm64 (Will Deacon) \n- usb: ohci: Make distrust_firmware param default to false (Hamish Martin) \n- LTS tag: v5.4.91 (Jack Vogel) \n- netfilter: nft_compat: remove flush counter optimization (Florian Westphal) \n- netfilter: nf_nat: Fix memleak in nf_nat_init (Dinghao Liu) \n- netfilter: conntrack: fix reading nf_conntrack_buckets (Jesper Dangaard Brouer) \n- ALSA: firewire-tascam: Fix integer overflow in midi_port_work() (Geert Uytterhoeven) \n- ALSA: fireface: Fix integer overflow in transmit_midi_msg() (Geert Uytterhoeven) \n- dm: eliminate potential source of excessive kernel log noise (Mike Snitzer) \n- net: sunrpc: interpret the return value of kstrtou32 correctly (j.nixdorf@avm.de) \n- iommu/vt-d: Fix unaligned addresses for intel_flush_svm_range_dev() (Lu Baolu) \n- mm, slub: consider rest of partial list if acquire_slab() fails (Jann Horn) \n- drm/i915/dsi: Use unconditional msleep for the panel_on_delay when there is no reset-deassert MIPI-sequence (Hans de Goede) \n- IB/mlx5: Fix error unwinding when set_has_smi_cap fails (Parav Pandit) \n- RDMA/mlx5: Fix wrong free of blue flame register on error (Mark Bloch) \n- bnxt_en: Improve stats context resource accounting with RDMA driver loaded. (Michael Chan) \n- RDMA/usnic: Fix memleak in find_free_vf_and_create_qp_grp (Dinghao Liu) \n- RDMA/restrack: Don't treat as an error allocation ID wrapping (Leon Romanovsky) \n- ext4: fix superblock checksum failure when setting password salt (Jan Kara) \n- NFS: nfs_igrab_and_active must first reference the superblock (Trond Myklebust) \n- NFS/pNFS: Fix a leak of the layout 'plh_outstanding' counter (Trond Myklebust) \n- pNFS: Stricter ordering of layoutget and layoutreturn (Trond Myklebust) \n- pNFS: Mark layout for return if return-on-close was not sent (Trond Myklebust) \n- pNFS: We want return-on-close to complete when evicting the inode (Trond Myklebust) \n- NFS4: Fix use-after-free in trace_event_raw_event_nfs4_set_lock (Dave Wysochanski) \n- nvme-tcp: fix possible data corruption with bio merges (Sagi Grimberg) \n- ASoC: Intel: fix error code cnl_set_dsp_D0() (Dan Carpenter) \n- ASoC: meson: axg-tdmin: fix axg skew offset (Jerome Brunet) \n- ASoC: meson: axg-tdm-interface: fix loopback (Jerome Brunet) \n- dump_common_audit_data(): fix racy accesses to -\u003ed_name (Al Viro) \n- perf intel-pt: Fix 'CPU too large' error (Adrian Hunter) \n- ARM: picoxcell: fix missing interrupt-parent properties (Arnd Bergmann) \n- drm/msm: Call msm_init_vram before binding the gpu (Craig Tatlor) \n- ACPI: scan: add stub acpi_create_platform_device() for !CONFIG_ACPI (Shawn Guo) \n- usb: typec: Fix copy paste error for NVIDIA alt-mode description (Peter Robinson) \n- drm/amdgpu: fix a GPU hang issue when remove device (Dennis Li) \n- nvmet-rdma: Fix list_del corruption on queue establishment failure (Israel Rukshin) \n- nvme-pci: mark Samsung PM1725a as IGNORE_DEV_SUBNQN (Gopal Tiwari) \n- selftests: fix the return value for UDP GRO test (Po-Hsu Lin) \n- net: ethernet: fs_enet: Add missing MODULE_LICENSE (Michael Ellerman) \n- misdn: dsp: select CONFIG_BITREVERSE (Arnd Bergmann) \nto fix build error on ARC (Randy Dunlap) \n- bfq: Fix computation of shallow depth (Jan Kara) \n- lib/raid6: Let rules work with macOS userland (John Millikin) \n- hwmon: (pwm-fan) Ensure that calculation doesn't discard big period values (Uwe Kleine-Konig) \n- habanalabs: Fix memleak in hl_device_reset (Dinghao Liu) \n- habanalabs: register to pci shutdown callback (Oded Gabbay) \n- ethernet: ucc_geth: fix definition and size of ucc_geth_tx_global_pram (Rasmus Villemoes) \n- regulator: bd718x7: Add enable times (Guido Gunther) \n- btrfs: fix transaction leak and crash after RO remount caused by qgroup rescan (Filipe Manana) \n- netfilter: ipset: fixes possible oops in mtype_resize (Vasily Averin) \n- ARC: build: move symlink creation to arch/arc/Makefile to avoid race (Masahiro Yamada) \n- ARC: build: add boot_targets to PHONY (Masahiro Yamada) \n- ARC: build: add uImage.lzma to the top-level target (Masahiro Yamada) \n- ARC: build: remove non-existing bootpImage from KBUILD_IMAGE (Masahiro Yamada) \n- dm integrity: fix flush with external metadata device (Mikulas Patocka) \n- cifs: fix interrupted close commands (Paulo Alcantara) \n- smb3: remove unused flag passed into close functions (Steve French) \n- ext4: don't leak old mountpoint samples (Theodore Ts'o) \n- ext4: fix bug for rename with RENAME_WHITEOUT (yangerkun) \n- drm/i915/backlight: fix CPU mode backlight takeover on LPT (Jani Nikula) \n- btrfs: tree-checker: check if chunk item end overflows (Su Yue) \n- r8152: Add Lenovo Powered USB-C Travel Hub (Leon Schuermann) \n- dm integrity: fix the maximum number of arguments (Mikulas Patocka) \n- dm snapshot: flush merged data before committing metadata (Akilesh Kailash) \n- dm raid: fix discard limits for raid1 (Mike Snitzer) \n- mm/hugetlb: fix potential missing huge page size info (Miaohe Lin) \n- ACPI: scan: Harden acpi_device_add() against device ID overflows (Dexuan Cui) \n- RDMA/ocrdma: Fix use after free in ocrdma_dealloc_ucontext_pd() (Tom Rix) \n- MIPS: relocatable: fix possible boot hangup with KASLR enabled (Alexander Lobakin) \n- MIPS: boot: Fix unaligned access with CONFIG_MIPS_RAW_APPENDED_DTB (Paul Cercueil) \n- mips: lib: uncached: fix non-standard usage of variable 'sp' (Anders Roxell) \n- mips: fix Section mismatch in reference (Anders Roxell) \n- tracing/kprobes: Do the notrace functions check without kprobes on ftrace (Masami Hiramatsu) \n- x86/hyperv: check cpu mask after interrupt has been disabled (Wei Liu) \n- ASoC: dapm: remove widget from dirty list on free (Thomas Hebb) \n- btrfs: prevent NULL pointer dereference in extent_io_tree_panic (Su Yue) \n- kbuild: enforce -Werror=return-type (Olaf Hering) \n- IB/ipoib: Improve latency in ipoib/cm connection formation (Manjunath Patil) [Orabug: 32852998]\n\n[5.4.17-2102.202.2]\n- vfio/pci: restore remap elision logic in vfio_pci_mmap_fault() (Ankur Arora) [Orabug: 32478548]\n\n[5.4.17-2102.202.1]\n- LTS tag: v5.4.90 (Jack Vogel) \n- regmap: debugfs: Fix a reversed if statement in regmap_debugfs_init() (Dan Carpenter) \n- net: drop bogus skb with CHECKSUM_PARTIAL and offset beyond end of trimmed packet (Vasily Averin) \n- block: fix use-after-free in disk_part_iter_next (Ming Lei) \n- KVM: arm64: Don't access PMCR_EL0 when no PMU is available (Marc Zyngier) \n- net: mvpp2: disable force link UP during port init procedure (Stefan Chulski) \n- regulator: qcom-rpmh-regulator: correct hfsmps515 definition (Dmitry Baryshkov) \n- wan: ds26522: select CONFIG_BITREVERSE (Arnd Bergmann) \n- regmap: debugfs: Fix a memory leak when calling regmap_attach_dev (Xiaolei Wang) \n- net/mlx5e: Fix two double free cases (Dinghao Liu) \n- net/mlx5e: Fix memleak in mlx5e_create_l2_table_groups (Dinghao Liu) \n- iommu/intel: Fix memleak in intel_irq_remapping_alloc (Dinghao Liu) \n- lightnvm: select CONFIG_CRC32 (Arnd Bergmann) \n- block: rsxx: select CONFIG_CRC32 (Arnd Bergmann) \n- wil6210: select CONFIG_CRC32 (Arnd Bergmann) \n- qed: select CONFIG_CRC32 (Arnd Bergmann) \n- dmaengine: xilinx_dma: fix mixed_enum_type coverity warning (Shravya Kumbham) \n- dmaengine: xilinx_dma: fix incompatible param warning in _child_probe() (Shravya Kumbham) \n- dmaengine: xilinx_dma: check dma_async_device_register return value (Shravya Kumbham) \n- dmaengine: mediatek: mtk-hsdma: Fix a resource leak in the error handling path of the probe function (Christophe JAILLET) \n- i2c: i801: Fix the i2c-mux gpiod_lookup_table not being properly terminated (Hans de Goede) \n- spi: stm32: FIFO threshold level - fix align packet size (Roman Guskov) \n- cpufreq: powernow-k8: pass policy rather than use cpufreq_cpu_get() (Colin Ian King) \n- can: kvaser_pciefd: select CONFIG_CRC32 (Arnd Bergmann) \n- can: m_can: m_can_class_unregister(): remove erroneous m_can_clk_stop() (Marc Kleine-Budde) \n- can: tcan4x5x: fix bittiming const, use common bittiming from m_can driver (Marc Kleine-Budde) \n- dmaengine: dw-edma: Fix use after free in dw_edma_alloc_chunk() (Dan Carpenter) \n- i2c: sprd: use a specific timeout to avoid system hang up issue (Chunyan Zhang) \n- ARM: OMAP2+: omap_device: fix idling of devices during probe (Andreas Kemnade) \n- HID: wacom: Fix memory leakage caused by kfifo_alloc (Ping Cheng) \n- iio: imu: st_lsm6dsx: fix edge-trigger interrupts (Lorenzo Bianconi) \n- vmlinux.lds.h: Add PGO and AutoFDO input sections (Nick Desaulniers) \n- exfat: Month timestamp metadata accidentally incremented (Valdis Kletnieks) \n- x86/resctrl: Don't move a task to the same resource group (Fenghua Yu) \n- x86/resctrl: Use an IPI instead of task_work_add() to update PQR_ASSOC MSR (Fenghua Yu) \n- chtls: Fix chtls resources release sequence (Ayush Sawal) \n- chtls: Added a check to avoid NULL pointer dereference (Ayush Sawal) \n- chtls: Replace skb_dequeue with skb_peek (Ayush Sawal) \n- chtls: Fix panic when route to peer not configured (Ayush Sawal) \n- chtls: Remove invalid set_tcb call (Ayush Sawal) \n- chtls: Fix hardware tid leak (Ayush Sawal) \n- net/mlx5e: ethtool, Fix restriction of autoneg with 56G (Aya Levin) \n- net/mlx5: Use port_num 1 instead of 0 when delete a RoCE address (Mark Zhang) \n- net: dsa: lantiq_gswip: Exclude RMII from modes that report 1 GbE (Aleksander Jan Bajkowski) \n- s390/qeth: fix L2 header access in qeth_l3_osa_features_check() (Julian Wiedmann) \n- nexthop: Unlink nexthop group entry in error path (Ido Schimmel) \n- nexthop: Fix off-by-one error in error path (Ido Schimmel) \n- octeontx2-af: fix memory leak of lmac and lmac-\u003ename (Colin Ian King) \n- net: ip: always refragment ip defragmented packets (Florian Westphal) \n- net: fix pmtu check in nopmtudisc mode (Florian Westphal) \n- tools: selftests: add test for changing routes with PTMU exceptions (Sean Tranchetti) \n- net: ipv6: fib: flush exceptions when purging route (Sean Tranchetti) \n- net/sonic: Fix some resource leaks in error handling paths (Christophe JAILLET) \n- net: vlan: avoid leaks on register_vlan_dev() failures (Jakub Kicinski) \n- net: stmmac: dwmac-sun8i: Balance internal PHY power (Samuel Holland) \n- net: stmmac: dwmac-sun8i: Balance internal PHY resource references (Samuel Holland) \n- net: hns3: fix a phy loopback fail issue (Yonglong Liu) \n- net: hns3: fix the number of queues actually used by ARQ (Yufeng Mo) \n- net: cdc_ncm: correct overhead in delayed_ndp_size (Jouni K. Seppanen) \n- vfio iommu: Add dma available capability (Matthew Rosato) \n- x86/asm/32: Add ENDs to some functions and relabel with SYM_CODE_* (Jiri Slaby) \n- LTS tag: v5.4.89 (Jack Vogel) \n- scsi: target: Fix XCOPY NAA identifier lookup (David Disseldorp) {CVE-2020-28374}\n- KVM: x86: fix shift out of bounds reported by UBSAN (Paolo Bonzini) \n- x86/mtrr: Correct the range check before performing MTRR type lookups (Ying-Tsun Huang) \n- netfilter: nft_dynset: report EOPNOTSUPP on missing set feature (Pablo Neira Ayuso) \n- netfilter: xt_RATEEST: reject non-null terminated string from userspace (Florian Westphal) \n- netfilter: ipset: fix shift-out-of-bounds in htable_bits() (Vasily Averin) \n- netfilter: x_tables: Update remaining dereference to RCU (Subash Abhinov Kasiviswanathan) \n- drm/i915: clear the gpu reloc batch (Matthew Auld) \n- dmabuf: fix use-after-free of dmabuf's file-\u003ef_inode (Charan Teja Reddy) \n- Revert 'device property: Keep secondary firmware node secondary by type' (Bard Liao) \n- btrfs: send: fix wrong file path when there is an inode with a pending rmdir (Filipe Manana) \n- ALSA: hda/realtek: Add two 'Intel Reference board' SSID in the ALC256. (PeiSen Hou) \n- ALSA: hda/realtek: Enable mute and micmute LED on HP EliteBook 850 G7 (Kai-Heng Feng) \n- ALSA: hda/realtek - Fix speaker volume control on Lenovo C940 (Kailang Yang) \n- ALSA: hda/conexant: add a new hda codec CX11970 (bo liu) \n- ALSA: hda/via: Fix runtime PM for Clevo W35xSS (Takashi Iwai) \n- kvm: check tlbs_dirty directly (Lai Jiangshan) \n- x86/mm: Fix leak of pmd ptlock (Dan Williams) \n- USB: serial: keyspan_pda: remove unused variable (Johan Hovold) \n- usb: gadget: configfs: Fix use-after-free issue with udc_name (Eddie Hung) \n- usb: gadget: configfs: Preserve function ordering after bind failure (Chandana Kishori Chiluveru) \n- usb: gadget: Fix spinlock lockup on usb_function_deactivate (Sriharsha Allenki) \n- USB: gadget: legacy: fix return error code in acm_ms_bind() (Yang Yingliang) \n- usb: gadget: u_ether: Fix MTU size mismatch with RX packet size (Manish Narani) \n- usb: gadget: function: printer: Fix a memory leak for interface descriptor (Zqiang) \n- usb: gadget: f_uac2: reset wMaxPacketSize (Jerome Brunet) \n- usb: gadget: select CONFIG_CRC32 (Arnd Bergmann) \n- ALSA: usb-audio: Fix UBSAN warnings for MIDI jacks (Takashi Iwai) \n- USB: usblp: fix DMA to stack (Johan Hovold) \n- USB: yurex: fix control-URB timeout handling (Johan Hovold) \n- USB: serial: option: add Quectel EM160R-GL (Bjorn Mork) \n- USB: serial: option: add LongSung M5710 module support (Daniel Palmer) \n- USB: serial: iuu_phoenix: fix DMA from stack (Johan Hovold) \n- usb: uas: Add PNY USB Portable SSD to unusual_uas (Thinh Nguyen) \n- usb: usbip: vhci_hcd: protect shift size (Randy Dunlap) \n- USB: xhci: fix U1/U2 handling for hardware with XHCI_INTEL_HOST quirk set (Michael Grzeschik) \n- usb: chipidea: ci_hdrc_imx: add missing put_device() call in usbmisc_get_init_data() (Yu Kuai) \n- usb: dwc3: ulpi: Use VStsDone to detect PHY regs access completion (Serge Semin) \n- USB: cdc-wdm: Fix use after free in service_outstanding_interrupt(). (Tetsuo Handa) \n- USB: cdc-acm: blacklist another IR Droid device (Sean Young) \n- usb: gadget: enable super speed plus (taehyun.cho) \n- staging: mt7621-dma: Fix a resource leak in an error handling path (Christophe JAILLET) \n- powerpc: Handle .text.{hot,unlikely}.* in linker script (Nathan Chancellor) \n- crypto: asym_tpm: correct zero out potential secrets (Greg Kroah-Hartman) \n- crypto: ecdh - avoid buffer overflow in ecdh_set_secret() (Ard Biesheuvel) \n- Bluetooth: revert: hci_h5: close serdev device and free hu in h5_close (Hans de Goede) \n- kbuild: don't hardcode depmod path (Dominique Martinet) \n- net/sched: sch_taprio: ensure to reset/destroy all child qdiscs (Davide Caratti) \n- ionic: account for vlan tag len in rx buffer len (Shannon Nelson) \n- vhost_net: fix ubuf refcount incorrectly when sendmsg fails (Yunjian Wang) \n- net: usb: qmi_wwan: add Quectel EM160R-GL (Bjorn Mork) \n- CDC-NCM: remove 'connected' log message (Roland Dreier) \n- net: dsa: lantiq_gswip: Fix GSWIP_MII_CFG(p) register access (Martin Blumenstingl) \n- net: dsa: lantiq_gswip: Enable GSWIP_MII_CFG_EN also for internal PHYs (Martin Blumenstingl) \n- r8169: work around power-saving bug on some chip versions (Heiner Kallweit) \n- net: hdlc_ppp: Fix issues when mod_timer is called while timer is running (Xie He) \n- erspan: fix version 1 check in gre_parse_header() (Cong Wang) \n- net: hns: fix return value check in __lb_other_process() (Yunjian Wang) \n- net: sched: prevent invalid Scell_log shift count (Randy Dunlap) \n- ipv4: Ignore ECN bits for fib lookups in fib_compute_spec_dst() (Guillaume Nault) \n- net: mvpp2: fix pkt coalescing int-threshold configuration (Stefan Chulski) \n- tun: fix return value when the number of iovs exceeds MAX_SKB_FRAGS (Yunjian Wang) \n- net: ethernet: ti: cpts: fix ethtool output when no ptp_clock registered (Grygorii Strashko) \n- net-sysfs: take the rtnl lock when accessing xps_rxqs_map and num_tc (Antoine Tenart) \n- net-sysfs: take the rtnl lock when storing xps_rxqs (Antoine Tenart) \n- net-sysfs: take the rtnl lock when accessing xps_cpus_map and num_tc (Antoine Tenart) \n- net-sysfs: take the rtnl lock when storing xps_cpus (Antoine Tenart) \n- net: ethernet: Fix memleak in ethoc_probe (Dinghao Liu) \n- net/ncsi: Use real net-device for response handler (John Wang) \n- virtio_net: Fix recursive call to cpus_read_lock() (Jeff Dike) \n- qede: fix offload for IPIP tunnel packets (Manish Chopra) \n- net: ethernet: mvneta: Fix error handling in mvneta_probe (Dinghao Liu) \n- ibmvnic: continue fatal error reset after passive init (Lijun Pan) \n- net: mvpp2: Fix GoP port 3 Networking Complex Control configurations (Stefan Chulski) \n- atm: idt77252: call pci_disable_device() on error path (Dan Carpenter) \n- ethernet: ucc_geth: set dev-\u003emax_mtu to 1518 (Rasmus Villemoes) \n- ethernet: ucc_geth: fix use-after-free in ucc_geth_remove() (Rasmus Villemoes) \n- net: systemport: set dev-\u003emax_mtu to UMAC_MAX_MTU_SIZE (Florian Fainelli) \n- net: mvpp2: prs: fix PPPoE with ipv6 packet parse (Stefan Chulski) \n- net: mvpp2: Add TCAM entry to drop flow control pause frames (Stefan Chulski) \n- iavf: fix double-release of rtnl_lock (Jakub Kicinski) \n- i40e: Fix Error I40E_AQ_RC_EINVAL when removing VFs (Sylwester Dziedziuch) \n- proc: fix lookup in /proc/net subdirectories after setns(2) (Alexey Dobriyan) \n- proc: change -\u003enlink under proc_subdir_lock (Alexey Dobriyan) \n- depmod: handle the case of /sbin/depmod without /sbin in PATH (Linus Torvalds) \n- lib/genalloc: fix the overflow when size is too big (Huang Shijie) \n- scsi: scsi_transport_spi: Set RQF_PM for domain validation commands (Bart Van Assche) \n- scsi: ide: Do not set the RQF_PREEMPT flag for sense requests (Bart Van Assche) \n- scsi: ufs-pci: Ensure UFS device is in PowerDown mode for suspend-to-disk -\u003epoweroff() (Adrian Hunter) \n- scsi: ufs: Fix wrong print message in dev_err() (Bean Huo) \n- workqueue: Kick a worker based on the actual activation of delayed works (Yunfeng Ye) \n- LTS tag: v5.4.88 (Jack Vogel) \n- exec: Transform exec_update_mutex into a rw_semaphore (Eric W. Biederman) \n- rwsem: Implement down_read_interruptible (Eric W. Biederman) \n- rwsem: Implement down_read_killable_nested (Eric W. Biederman) \n- perf: Break deadlock involving exec_update_mutex (peterz@infradead.org) \n- iio:imu:bmi160: Fix alignment and data leak issues (Jonathan Cameron) \n- kdev_t: always inline major/minor helper functions (Josh Poimboeuf) \n- dmaengine: at_hdmac: add missing kfree() call in at_dma_xlate() (Yu Kuai) \n- dmaengine: at_hdmac: add missing put_device() call in at_dma_xlate() (Yu Kuai) \n- dmaengine: at_hdmac: Substitute kzalloc with kmalloc (Tudor Ambarus) \n- Revert 'mtd: spinand: Fix OOB read' (Felix Fietkau) \n- Revert 'drm/amd/display: Fix memory leaks in S3 resume' (Alex Deucher) \n- LTS tag: v5.4.87 (Jack Vogel) \n- dm verity: skip verity work if I/O error when system is shutting down (Hyeongseok Kim) \n- ALSA: pcm: Clear the full allocated memory at hw_params (Takashi Iwai) \n- tick/sched: Remove bogus boot 'safety' check (Thomas Gleixner) \n- um: ubd: Submit all data segments atomically (Gabriel Krisman Bertazi) \n- fs/namespace.c: WARN if mnt_count has become negative (Eric Biggers) \n- module: delay kobject uevent until after module init call (Jessica Yu) \n- f2fs: avoid race condition for shrinker count (Jaegeuk Kim) \n- NFSv4: Fix a pNFS layout related use-after-free race when freeing the inode (Trond Myklebust) \n- i3c master: fix missing destroy_workqueue() on error in i3c_master_register (Qinglang Miao) \n- powerpc: sysdev: add missing iounmap() on error in mpic_msgr_probe() (Qinglang Miao) \n- rtc: pl031: fix resource leak in pl031_probe (Zheng Liang) \n- quota: Don't overflow quota file offsets (Jan Kara) \n- module: set MODULE_STATE_GOING state when a module fails to load (Miroslav Benes) \n- rtc: sun6i: Fix memleak in sun6i_rtc_clk_init (Dinghao Liu) \n- fcntl: Fix potential deadlock in send_sig{io, urg}() (Boqun Feng) \n- bfs: don't use WARNING: string when it's just info. (Randy Dunlap) \n- ALSA: rawmidi: Access runtime-\u003eavail always in spinlock (Takashi Iwai) \n- ALSA: seq: Use bool for snd_seq_queue internal flags (Takashi Iwai) \n- f2fs: fix shift-out-of-bounds in sanity_check_raw_super() (Chao Yu) \n- media: gp8psk: initialize stats at power control logic (Mauro Carvalho Chehab) \n- misc: vmw_vmci: fix kernel info-leak by initializing dbells in vmci_ctx_get_chkpt_doorbells() (Anant Thazhemadam) \n- reiserfs: add check for an invalid ih_entry_count (Rustam Kovhaev) \n- Bluetooth: hci_h5: close serdev device and free hu in h5_close (Anant Thazhemadam) \n- scsi: cxgb4i: Fix TLS dependency (Randy Dunlap) \n- cgroup: Fix memory leak when parsing multiple source parameters (Qinglang Miao) \n- of: fix linker-section match-table corruption (Johan Hovold) \n- null_blk: Fix zone size initialization (Damien Le Moal) \n- tools headers UAPI: Sync linux/const.h with the kernel headers (Arnaldo Carvalho de Melo) \n(Petr Vorel) \n- scsi: block: Fix a race in the runtime power management code (Bart Van Assche) \n- jffs2: Fix NULL pointer dereference in rp_size fs option parsing (Jamie Iles) \n- jffs2: Allow setting rp_size to zero during remounting (lizhe) \n- powerpc/bitops: Fix possible undefined behaviour with fls() and fls64() (Christophe Leroy) \n- KVM: x86: reinstate vendor-agnostic check on SPEC_CTRL cpuid bits (Paolo Bonzini) \n- KVM: x86: avoid incorrect writes to host MSR_IA32_SPEC_CTRL (Paolo Bonzini) \n- ext4: don't remount read-only with errors=continue on reboot (Jan Kara) \n- btrfs: fix race when defragmenting leads to unnecessary IO (Filipe Manana) \n- vfio/pci: Move dummy_resources_list init in vfio_pci_probe() (Eric Auger) \n- fscrypt: remove kernel-internal constants from UAPI header (Eric Biggers) \n- fscrypt: add fscrypt_is_nokey_name() (Eric Biggers) \n- f2fs: prevent creating duplicate encrypted filenames (Eric Biggers) \n- ubifs: prevent creating duplicate encrypted filenames (Eric Biggers) \n- ext4: prevent creating duplicate encrypted filenames (Eric Biggers) \n- thermal/drivers/cpufreq_cooling: Update cpufreq_state only if state has changed (Zhuguangqing) \n- md/raid10: initialize r10_bio-\u003eread_slot before use. (Kevin Vigor) \n- net/sched: sch_taprio: reset child qdiscs before freeing them (Davide Caratti) \n- uek/ol/config-aarch64: Update uek6 kernel with RPI IOT configs (Vijay Kumar) [Orabug: 32833361] \n- dts/bcm2711: set gpio6 to level=0 and pull=down (Vijay Kumar) [Orabug: 32833361] \n- dts: bcm283x: Fix vc4's firmware bus DMA limitations (Nicolas Saenz Julienne) [Orabug: 32833361] \n- uek6/config-aarch64-rpi: Enable CONFIG_RTC_DRV_ABEOZ9 (Vijay Kumar) [Orabug: 32833361] \n- rtc/ab-eoz9: Add support for ABEOA9 SPI chip (Vijay Kumar) [Orabug: 32833361] \n- rtc: abracon: add abeoa9 device id (Tom Saeger) [Orabug: 32833361] \n- arm64/dts/bcm2711: Set SPI_CE0_N to output for GPIO8 (Vijay Kumar) [Orabug: 32833361] \n- uek-rpm/ol8: Build rpi kernel (Tom Saeger) [Orabug: 32833361] \n- uek-rpm: add rpi specific config (Tom Saeger) [Orabug: 32833361] \n- firmware/raspberrypi: Notify firmware of a reboot (Phil Elwell) [Orabug: 32833361] \n- firmware: raspberrypi: Report the fw variant during probe (Dave Stevenson) [Orabug: 32833361] \n- raspberrypi-firmware: Export the general transaction function. (Eric Anholt) [Orabug: 32833361] \n- firmware: bcm2835: Support ARCH_BCM270x (Noralf Tronnes) [Orabug: 32833361] \n- Add NO_WAIT_RESP flag (Phil Elwell) [Orabug: 32833361] \n- bcm2835-dma: Add proper 40-bit DMA support (Phil Elwell) [Orabug: 32833361] \n- dmaengine: Add support for BCM2708 (Florian Meier) [Orabug: 32833361] \n- dmaengine: bcm2835: Load driver early and support legacy API (Noralf Tronnes) [Orabug: 32833361] \n- RPi: char: broadcom: Add vcio module (Noralf Tronnes) [Orabug: 32833361] \n- RPi: Add /dev/gpiomem device for rootless user GPIO access (Luke Wren) [Orabug: 32833361] \n- RPi: vcsm: VideoCore shared memory service for BCM2835 (Tim Gover) [Orabug: 32833361] \n- RPi: vc_mem: Add vc_mem driver for querying firmware memory addresses (popcornmix) [Orabug: 32833361] \n- RPi4/dts: set alias for i2c device (Vijay Kumar) [Orabug: 32833361] \n- dts: Enable i2c4 for RPi4 (Vijay Kumar) [Orabug: 32833361] \n- RPi:dts/bcm2711: Enable pwm for RPi4 board (Vijay Kumar) [Orabug: 32833361] \n- RPi: transplant rpi_backlight to it's expected place (Andrew Thomas) [Orabug: 32833361] \n- RPi: pinctrl-bcm2835: Set base to 0 for BCM2711 (Andrew Thomas) [Orabug: 32833361] \n- RPi: pinctrl-bcm2835: Set base to 0 give expected gpio numbering (notro) [Orabug: 32833361] \n- RPi: spidev: add rpi4 spidev0 (Tom Saeger) [Orabug: 32833361] \n- RPi: dts: rpi4 add gpiomem (Tom Saeger) [Orabug: 32833361] \n- RPi: dts: enable rpi4 touchscreen, i2c, and spi (Tom Saeger) [Orabug: 32833361] \n- RPi: rpi_display: add backlight driver and overlay (P33M) [Orabug: 32833361] \n- HID: quirks: Add quirk for Lenovo optical mouse (Saeed Mirzamohammadi) [Orabug: 32820273] \n- x86/amd: Disable IBS on Rome processors due to erratum 1215 (Boris Ostrovsky) [Orabug: 32817184] \n- perf/x86/intel/uncore: Remove uncore extra PCI dev HSWEP_PCI_PCU_3 (Kan Liang) [Orabug: 32806848]\n\n[5.4.17-2102.202.0]\n- LTS tag: v5.4.86 (Jack Vogel) \n- x86/CPU/AMD: Save AMD NodeId as cpu_die_id (Yazen Ghannam) \n- Revert: 'ring-buffer: Remove HAVE_64BIT_ALIGNED_ACCESS' (Steven Rostedt (VMware)) \n- rtc: ep93xx: Fix NULL pointer dereference in ep93xx_rtc_read_time (Nikita Shubin) \n- regulator: axp20x: Fix DLDO2 voltage control register mask for AXP22x (DingHua Ma) \n- PCI: Fix pci_slot_release() NULL pointer dereference (Jubin Zhong) \n- platform/x86: intel-vbtn: Allow switch events on Acer Switch Alpha 12 (Carlos Garnacho) \n- libnvdimm/namespace: Fix reaping of invalidated block-window-namespace labels (Dan Williams) \n- xen/xenbus: Count pending messages for each watch (SeongJae Park) \n- xen/xenbus: Allow watches discard events before queueing (SeongJae Park) \n- dma-buf/dma-resv: Respect num_fences when initializing the shared fence list. (Maarten Lankhorst) \n- device-dax/core: Fix memory leak when rmmod dax.ko (Wang Hai) \n- clk: tegra: Do not return 0 on failure (Nicolin Chen) \n- clk: mvebu: a3700: fix the XTAL MODE pin to MPP1_9 (Terry Zhou) \n- clk: ingenic: Fix divider calculation with div tables (Paul Cercueil) \n- pinctrl: sunxi: Always call chained_irq_{enter, exit} in sunxi_pinctrl_irq_handler (Yangtao Li) \n- md/cluster: fix deadlock when node is doing resync job (Zhao Heming) \n- md/cluster: block reshape with remote resync job (Zhao Heming) \n- iio:adc:ti-ads124s08: Fix alignment and data leak issues. (Jonathan Cameron) \n- iio:adc:ti-ads124s08: Fix buffer being too long. (Jonathan Cameron) \n- iio:imu:bmi160: Fix too large a buffer. (Jonathan Cameron) \n- iio:pressure:mpl3115: Force alignment of buffer (Jonathan Cameron) \n- iio:magnetometer:mag3110: Fix alignment and data leak issues. (Jonathan Cameron) \n- iio:light:st_uvis25: Fix timestamp alignment and prevent data leak. (Jonathan Cameron) \n- iio:light:rpr0521: Fix timestamp alignment and prevent data leak. (Jonathan Cameron) \n- iio: adc: rockchip_saradc: fix missing clk_disable_unprepare() on error in rockchip_saradc_resume (Qinglang Miao) \n- iio: buffer: Fix demux update (Nuno Sa) \n- scsi: qla2xxx: Fix crash during driver load on big endian machines (Arun Easi) \n- mtd: rawnand: meson: fix meson_nfc_dma_buffer_release() arguments (Sergei Antonov) \n- mtd: rawnand: qcom: Fix DMA sync on FLASH_STATUS register read (Praveenkumar I) \n- mtd: parser: cmdline: Fix parsing of part-names with colons (Sven Eckelmann) \n- mtd: spinand: Fix OOB read (Miquel Raynal) \n- soc: qcom: smp2p: Safely acquire spinlock without IRQs (Evan Green) \n- spi: atmel-quadspi: Fix AHB memory accesses (Tudor Ambarus) \n- spi: atmel-quadspi: Disable clock in probe error path (Lukas Wunner) \n- spi: mt7621: Don't leak SPI master in probe error path (Lukas Wunner) \n- spi: mt7621: Disable clock in probe error path (Lukas Wunner) \n- spi: synquacer: Disable clock in probe error path (Lukas Wunner) \n- spi: st-ssc4: Fix unbalanced pm_runtime_disable() in probe error path (Lukas Wunner) \n- spi: sc18is602: Don't leak SPI master in probe error path (Lukas Wunner) \n- spi: rb4xx: Don't leak SPI master in probe error path (Lukas Wunner) \n- spi: pic32: Don't leak DMA channels in probe error path (Lukas Wunner) \n- spi: mxic: Don't leak SPI master in probe error path (Lukas Wunner) \n- spi: gpio: Don't leak SPI master in probe error path (Lukas Wunner) \n- spi: fsl: fix use of spisel_boot signal on MPC8309 (Rasmus Villemoes) \n- spi: davinci: Fix use-after-free on unbind (Lukas Wunner) \n- spi: atmel-quadspi: Fix use-after-free on unbind (Lukas Wunner) \n- spi: spi-sh: Fix use-after-free on unbind (Lukas Wunner) \n- spi: pxa2xx: Fix use-after-free on unbind (Lukas Wunner) \n- drm/i915: Fix mismatch between misplaced vma check and vma insert (Chris Wilson) \n- drm/dp_aux_dev: check aux_dev before use in drm_dp_aux_dev_get_by_minor() (Zwane Mwaikambo) \n- drm/amd/display: Fix memory leaks in S3 resume (Stylon Wang) \n- platform/x86: mlx-platform: remove an unused variable (Arnd Bergmann) \n- jfs: Fix array index bounds check in dbAdjTree (Dave Kleikamp) \n- jffs2: Fix ignoring mounting options problem during remounting (lizhe) \n- jffs2: Fix GC exit abnormally (Zhe Li) \n- ubifs: wbuf: Don't leak kernel memory to flash (Richard Weinberger) \n- SMB3: avoid confusing warning message on mount to Azure (Steve French) \n- ceph: fix race in concurrent __ceph_remove_cap invocations (Luis Henriques) \n- um: Remove use of asprinf in umid.c (Anton Ivanov) \n- ima: Don't modify file descriptor mode on the fly (Roberto Sassu) \n- powerpc/powernv/memtrace: Fix crashing the kernel when enabling concurrently (David Hildenbrand) \n- powerpc/powernv/memtrace: Don't leak kernel memory to user space (David Hildenbrand) \n- powerpc/powernv/npu: Do not attempt NPU2 setup on POWER8NVL NPU (Alexey Kardashevskiy) \n- powerpc/mm: Fix verification of MMU_FTR_TYPE_44x (Christophe Leroy) \n- powerpc/8xx: Fix early debug when SMC1 is relocated (Christophe Leroy) \n- powerpc/xmon: Change printk() to pr_cont() (Christophe Leroy) \n- powerpc/feature: Add CPU_FTR_NOEXECUTE to G2_LE (Christophe Leroy) \n- powerpc/rtas: Fix typo of ibm,open-errinjct in RTAS filter (Tyrel Datwyler) \n- powerpc: Fix incorrect stw{, ux, u, x} instructions in __set_pte_at (Mathieu Desnoyers) \n- xprtrdma: Fix XDRBUF_SPARSE_PAGES support (Chuck Lever) \n- ARM: dts: at91: sama5d2: fix CAN message ram offset and size (Nicolas Ferre) \n- ARM: dts: pandaboard: fix pinmux for gpio user button of Pandaboard ES (H. Nikolaus Schaller) \n- KVM: arm64: Introduce handling of AArch32 TTBCR2 traps (Marc Zyngier) \n- ext4: fix deadlock with fs freezing and EA inodes (Jan Kara) \n- ext4: fix a memory leak of ext4_free_data (Chunguang Xu) \n- btrfs: trim: fix underflow in trim length to prevent access beyond device boundary (Qu Wenruo) \n- btrfs: do not shorten unpin len for caching block groups (Josef Bacik) \n- USB: serial: keyspan_pda: fix write unthrottling (Johan Hovold) \n- USB: serial: keyspan_pda: fix tx-unthrottle use-after-free (Johan Hovold) \n- USB: serial: keyspan_pda: fix write-wakeup use-after-free (Johan Hovold) \n- USB: serial: keyspan_pda: fix stalled writes (Johan Hovold) \n- USB: serial: keyspan_pda: fix write deadlock (Johan Hovold) \n- USB: serial: keyspan_pda: fix dropped unthrottle interrupts (Johan Hovold) \n- USB: serial: digi_acceleport: fix write-wakeup deadlocks (Johan Hovold) \n- USB: serial: mos7720: fix parallel-port state restore (Johan Hovold) \n- EDAC/amd64: Fix PCI component registration (Borislav Petkov) \n- EDAC/i10nm: Use readl() to access MMIO registers (Qiuxu Zhuo) \n- crypto: arm/aes-ce - work around Cortex-A57/A72 silion errata (Ard Biesheuvel) \n- crypto: ecdh - avoid unaligned accesses in ecdh_set_secret() (Ard Biesheuvel) \n- powerpc/perf: Exclude kernel samples while counting events in user space. (Athira Rajeev) \n- perf/x86/intel: Fix rtm_abort_event encoding on Ice Lake (Kan Liang) \n- perf/x86/intel: Add event constraint for CYCLE_ACTIVITY.STALLS_MEM_ANY (Kan Liang) \n- staging: comedi: mf6x4: Fix AI end-of-conversion detection (Ian Abbott) \n- ASoC: cx2072x: Fix doubly definitions of Playback and Capture streams (Takashi Iwai) \n- binder: add flag to clear buffer on txn complete (Todd Kjos) \n- s390/dasd: fix list corruption of lcu list (Stefan Haberland) \n- s390/dasd: fix list corruption of pavgroup group list (Stefan Haberland) \n- s390/dasd: prevent inconsistent LCU device data (Stefan Haberland) \n- s390/dasd: fix hanging device offline processing (Stefan Haberland) \n- s390/kexec_file: fix diag308 subcode when loading crash kernel (Philipp Rudo) \n- s390/smp: perform initial CPU reset also for SMT siblings (Sven Schnelle) \n- ALSA: core: memalloc: add page alignment for iram (Robin Gong) \n- ALSA: usb-audio: Disable sample read check if firmware doesn't give back (Takashi Iwai) \n- ALSA: usb-audio: Add VID to support native DSD reproduction on FiiO devices (Amadej Kastelic) \n- ALSA: hda/realtek: Apply jack fixup for Quanta NL3 (Chris Chiu) \n- ALSA: hda/realtek: Add quirk for MSI-GP73 (Takashi Iwai) \n- ALSA/hda: apply jack fixup for the Acer Veriton N4640G/N6640G/N2510G (Chris Chiu) \n- ALSA: pcm: oss: Fix a few more UBSAN fixes (Takashi Iwai) \n- ALSA: hda/realtek - Add supported for more Lenovo ALC285 Headset Button (Kailang Yang) \n- ALSA: hda/realtek - Enable headset mic of ASUS Q524UQK with ALC255 (Chris Chiu) \n- ALSA: hda/realtek - Enable headset mic of ASUS X430UN with ALC256 (Chris Chiu) \n- ALSA: hda/realtek: make bass spk volume adjustable on a yoga laptop (Hui Wang) \n- ALSA: hda/ca0132 - Fix AE-5 rear headphone pincfg. (Connor McAdams) \n- ALSA: hda: Fix regressions on clear and reconfig sysfs (Takashi Iwai) \n- ACPI: PNP: compare the string length in the matching_id() (Hui Wang) \n- Revert 'ACPI / resources: Use AE_CTRL_TERMINATE to terminate resources walks' (Daniel Scally) \n- PM: ACPI: PCI: Drop acpi_pm_set_bridge_wakeup() (Rafael J. Wysocki) \n- ALSA: hda/ca0132 - Change Input Source enum strings. (Connor McAdams) \n- Input: cyapa_gen6 - fix out-of-bounds stack access (Arnd Bergmann) \n- media: ipu3-cio2: Make the field on subdev format V4L2_FIELD_NONE (Sakari Ailus) \n- media: ipu3-cio2: Validate mbus format in setting subdev format (Sakari Ailus) \n- media: ipu3-cio2: Serialise access to pad format (Sakari Ailus) \n- media: ipu3-cio2: Return actual subdev format (Sakari Ailus) \n- media: ipu3-cio2: Remove traces of returned buffers (Sakari Ailus) \n- media: netup_unidvb: Don't leak SPI master in probe error path (Lukas Wunner) \n- media: sunxi-cir: ensure IR is handled when it is continuous (Sean Young) \n- media: gspca: Fix memory leak in probe (Alan Stern) \n- vfio/pci/nvlink2: Do not attempt NPU2 setup on POWER8NVL NPU (Alexey Kardashevskiy) \n- Input: goodix - add upside-down quirk for Teclast X98 Pro tablet (Simon Beginn) \n- initramfs: fix clang build failure (Arnd Bergmann) \n- Input: cros_ec_keyb - send 'scancodes' in addition to key events (Dmitry Torokhov) \n- drm/amdkfd: Fix leak in dmabuf import (Felix Kuehling) \n- drm/amd/display: Prevent bandwidth overflow (Chris Park) \n- lwt: Disable BH too in run_lwt_bpf() (Dongdong Wang) \n- fix namespaced fscaps when !CONFIG_SECURITY (Serge Hallyn) \n- cfg80211: initialize rekey_data (Sara Sharon) \n- ARM: sunxi: Add machine match for the Allwinner V3 SoC (Paul Kocialkowski) \n- perf probe: Fix memory leak when synthesizing SDT probes (Arnaldo Carvalho de Melo) \n- kconfig: fix return value of do_error_if() (Masahiro Yamada) \n- clk: sunxi-ng: Make sure divider tables have sentinel (Jernej Skrabec) \n- clk: s2mps11: Fix a resource leak in error handling paths in the probe function (Christophe JAILLET) \n- clk: at91: sam9x60: remove atmel,osc-bypass support (Alexandre Belloni) \n- virtio_ring: Fix two use after free bugs (Dan Carpenter) \n- virtio_net: Fix error code in probe() (Dan Carpenter) \n- virtio_ring: Cut and paste bugs in vring_create_virtqueue_packed() (Dan Carpenter) \n- qlcnic: Fix error code in probe (Dan Carpenter) \n- perf record: Fix memory leak when using '--user-regs=?' to list registers (Zheng Zengkai) \n- pwm: lp3943: Dynamically allocate PWM chip base (Lokesh Vutla) \n- pwm: zx: Add missing cleanup in error path (Uwe Kleine-Konig) \n- clk: ti: Fix memleak in ti_fapll_synth_setup (Zhang Qilong) \n- watchdog: coh901327: add COMMON_CLK dependency (Arnd Bergmann) \n- watchdog: qcom: Avoid context switch in restart handler (Manivannan Sadhasivam) \n- libnvdimm/label: Return -ENXIO for no slot in __blk_label_update (Zhang Qilong) \n- net: korina: fix return value (Vincent Stehle) \n- net: allwinner: Fix some resources leak in the error handling path of the probe and in the remove function (Christophe JAILLET) \n- net: bcmgenet: Fix a resource leak in an error handling path in the probe functin (Christophe JAILLET) \n- lan743x: fix rx_napi_poll/interrupt ping-pong (Sven Van Asbroeck) \n- checkpatch: fix unescaped left brace (Dwaipayan Ray) \n- mm: don't wake kswapd prematurely when watermark boosting is disabled (Johannes Weiner) \n- sparc: fix handling of page table constructor failure (Matthew Wilcox (Oracle)) \n- powerpc/ps3: use dma_mapping_error() (Vincent Stehle) \n- nfc: s3fwrn5: Release the nfc firmware (Bongsu Jeon) \n- RDMA/cma: Don't overwrite sgid_attr after device is released (Leon Romanovsky) \n- sunrpc: fix xs_read_xdr_buf for partial pages receive (Dan Aloni) \n- um: chan_xterm: Fix fd leak (Anton Ivanov) \n- um: tty: Fix handling of close in tty lines (Anton Ivanov) \n- um: Monitor error events in IRQ controller (Anton Ivanov) \n- ubifs: Fix error return code in ubifs_init_authentication() (Wang ShaoBo) \n- watchdog: Fix potential dereferencing of null pointer (Wang Wensheng) \n- watchdog: sprd: check busy bit before new loading rather than after that (Lingling Xu) \n- watchdog: sprd: remove watchdog disable from resume fail path (Lingling Xu) \n- watchdog: sirfsoc: Add missing dependency on HAS_IOMEM (Guenter Roeck) \n- watchdog: armada_37xx: Add missing dependency on HAS_IOMEM (Guenter Roeck) \n- irqchip/alpine-msi: Fix freeing of interrupts on allocation error path (Marc Zyngier) \n- ASoC: wm_adsp: remove 'ctl' from list on error in wm_adsp_create_control() (Dan Carpenter) \n- mac80211: don't set set TDLS STA bandwidth wider than possible (Johannes Berg) \n- crypto: atmel-i2c - select CONFIG_BITREVERSE (Arnd Bergmann) \n- extcon: max77693: Fix modalias string (Marek Szyprowski) \n- mtd: rawnand: gpmi: Fix the random DMA timeout issue (Han Xu) \n- mtd: rawnand: meson: Fix a resource leak in init (Dan Carpenter) \n- mtd: rawnand: gpmi: fix reference count leak in gpmi ops (Zhang Qilong) \n- clk: tegra: Fix duplicated SE clock entry (Dmitry Osipenko) \n- remoteproc: qcom: Fix potential NULL dereference in adsp_init_mmio() (Zhang Changzhong) \n- remoteproc: qcom: fix reference leak in adsp_start (Zhang Qilong) \n- remoteproc: q6v5-mss: fix error handling in q6v5_pds_enable (Zhang Qilong) \n- RDMA/core: Do not indicate device ready when device enablement fails (Jack Morgenstein) \n- can: m_can: m_can_config_endisable(): remove double clearing of clock stop request bit (Sean Nyekjaer) \n- erofs: avoid using generic_block_bmap (Huang Jianan) \n- iwlwifi: mvm: hook up missing RX handlers (Johannes Berg) \n- s390/cio: fix use-after-free in ccw_device_destroy_console (Qinglang Miao) \n- bus: fsl-mc: fix error return code in fsl_mc_object_allocate() (Zhang Changzhong) \n- platform/chrome: cros_ec_spi: Don't overwrite spi::mode (Stephen Boyd) \n- x86/kprobes: Restore BTF if the single-stepping is cancelled (Masami Hiramatsu) \n- nfs_common: need lock during iterate through the list (Cheng Lin) \n- nfsd: Fix message level for normal termination (kazuo ito) \n- speakup: fix uninitialized flush_lock (Yang Yingliang) \n- usb: oxu210hp-hcd: Fix memory leak in oxu_create (Zhang Qilong) \n- usb: ehci-omap: Fix PM disable depth umbalance in ehci_hcd_omap_probe (Zhang Qilong) \n- powerpc/mm: sanity_check_fault() should work for all, not only BOOK3S (Christophe Leroy) \n- ASoC: amd: change clk_get() to devm_clk_get() and add missed checks (Chuhong Yuan) \n- drm/mediatek: avoid dereferencing a null hdmi_phy on an error message (Colin Ian King) \n- powerpc/pseries/hibernation: remove redundant cacheinfo update (Nathan Lynch) \n- powerpc/pseries/hibernation: drop pseries_suspend_begin() from suspend ops (Nathan Lynch) \n- platform/x86: mlx-platform: Fix item counter assignment for MSN2700, MSN24xx systems (Vadim Pasternak) \n- scsi: fnic: Fix error return code in fnic_probe() (Zhang Changzhong) \n- seq_buf: Avoid type mismatch for seq_buf_init (Arnd Bergmann) \n- scsi: pm80xx: Fix error return in pm8001_pci_probe() (Zhang Qilong) \n- scsi: qedi: Fix missing destroy_workqueue() on error in __qedi_probe (Qinglang Miao) \n- arm64: dts: meson: g12a: x96-max: fix PHY deassert timing requirements (Stefan Agner) \n- ARM: dts: meson: fix PHY deassert timing requirements (Stefan Agner) \n- arm64: dts: meson: fix PHY deassert timing requirements (Stefan Agner) \n- Bluetooth: btmtksdio: Add the missed release_firmware() in mtk_setup_firmware() (Jing Xiangfeng) \n- Bluetooth: btusb: Add the missed release_firmware() in btusb_mtk_setup_firmware() (Jing Xiangfeng) \n- cpufreq: scpi: Add missing MODULE_ALIAS (Pali Rohar) \n- cpufreq: loongson1: Add missing MODULE_ALIAS (Pali Rohar) \n- cpufreq: sun50i: Add missing MODULE_DEVICE_TABLE (Pali Rohar) \n- cpufreq: st: Add missing MODULE_DEVICE_TABLE (Pali Rohar) \n- cpufreq: qcom: Add missing MODULE_DEVICE_TABLE (Pali Rohar) \n- cpufreq: mediatek: Add missing MODULE_DEVICE_TABLE (Pali Rohar) \n- cpufreq: highbank: Add missing MODULE_DEVICE_TABLE (Pali Rohar) \n- cpufreq: ap806: Add missing MODULE_DEVICE_TABLE (Pali Rohar) \n- clocksource/drivers/arm_arch_timer: Correct fault programming of CNTKCTL_EL1.EVNTI (Keqian Zhu) \n- clocksource/drivers/arm_arch_timer: Use stable count reader in erratum sne (Keqian Zhu) \n- phy: renesas: rcar-gen3-usb2: disable runtime pm in case of failure (Wang Li) \n- dm ioctl: fix error return code in target_message (Qinglang Miao) \n- ASoC: jz4740-i2s: add missed checks for clk_get() (Chuhong Yuan) \n- net/mlx5: Properly convey driver version to firmware (Leon Romanovsky) \n- MIPS: Don't round up kernel sections size for memblock_add() (Alexander Sverdlin) \n- memstick: r592: Fix error return in r592_probe() (Jing Xiangfeng) \n- arm64: dts: rockchip: Fix UART pull-ups on rk3328 (Chen-Yu Tsai) \n- pinctrl: falcon: add missing put_device() call in pinctrl_falcon_probe() (Yu Kuai) \n- bpf: Fix bpf_put_raw_tracepoint()'s use of __module_address() (Andrii Nakryiko) \n- ARM: dts: at91: sama5d2: map securam as device (Claudiu Beznea) \n- iio: hrtimer-trigger: Mark hrtimer to expire in hard interrupt context (Lars-Peter Clausen) \n- clocksource/drivers/cadence_ttc: Fix memory leak in ttc_setup_clockevent() (Yu Kuai) \n- clocksource/drivers/orion: Add missing clk_disable_unprepare() on error path (Yang Yingliang) \n- powerpc/64: Fix an EMIT_BUG_ENTRY in head_64.S (Jordan Niethe) \n- powerpc/perf: Fix crash with is_sier_available when pmu is not set (Athira Rajeev) \n- media: saa7146: fix array overflow in vidioc_s_audio() (Dan Carpenter) \n- hwmon: (ina3221) Fix PM usage counter unbalance in ina3221_write_enable (Zhang Qilong) \n- vfio-pci: Use io_remap_pfn_range() for PCI IO memory (Jason Gunthorpe) \n- selftests/seccomp: Update kernel config (Mickael Salaun) \n- NFS: switch nfsiod to be an UNBOUND workqueue. (NeilBrown) \n- net: sunrpc: Fix 'snprintf' return value check in 'do_xprt_debugfs' (Fedor Tokarev) \n- NFSv4: Fix the alignment of page data in the getdeviceinfo reply (Trond Myklebust) \n- SUNRPC: xprt_load_transport() needs to support the netid 'rdma6' (Trond Myklebust) \n- NFSv4.2: condition READDIR's mask for security label based on LSM state (Olga Kornievskaia) \n- SUNRPC: rpc_wake_up() should wake up tasks in the correct order (Trond Myklebust) \n- ath10k: Release some resources in an error handling path (Christophe JAILLET) \n- ath10k: Fix an error handling path (Christophe JAILLET) \n- ath10k: Fix the parsing error in service available event (Rakesh Pillai) \n- platform/x86: dell-smbios-base: Fix error return code in dell_smbios_init (Qinglang Miao) \n- ARM: dts: at91: at91sam9rl: fix ADC triggers (Alexandre Belloni) \n- soc: amlogic: canvas: add missing put_device() call in meson_canvas_get() (Yu Kuai) \n- arm64: dts: meson-sm1: fix typo in opp table (Dongjin Kim) \n- arm64: dts: meson: fix spi-max-frequency on Khadas VIM2 (Artem Lapkin) \n- PCI: iproc: Fix out-of-bound array accesses (Bharat Gooty) \n- PCI: Fix overflow in command-line resource alignment requests (Colin Ian King) \n- PCI: Bounds-check command-line resource alignment requests (Bjorn Helgaas) \n- arm64: dts: qcom: c630: Polish i2c-hid devices (Bjorn Andersson) \n- arm64: dts: ls1028a: fix ENETC PTP clock input (Michael Walle) \n- genirq/irqdomain: Don't try to free an interrupt that has no mapping (Marc Zyngier) \n- power: supply: bq24190_charger: fix reference leak (Zhang Qilong) \n- power: supply: axp288_charger: Fix HP Pavilion x2 10 DMI matching (Hans de Goede) \n- arm64: dts: rockchip: Set dr_mode to 'host' for OTG on rk3328-roc-cc (Chen-Yu Tsai) \n- arm64: dts: armada-3720-turris-mox: update ethernet-phy handle name (Marek Behun) \n- ARM: dts: Remove non-existent i2c1 from 98dx3236 (Chris Packham) \n- HSI: omap_ssi: Don't jump to free ID in ssi_add_controller() (Jing Xiangfeng) \n- slimbus: qcom-ngd-ctrl: Avoid sending power requests without QMI (Bjorn Andersson) \n- media: max2175: fix max2175_set_csm_mode() error code (Dan Carpenter) \n- mips: cdmm: fix use-after-free in mips_cdmm_bus_discover (Qinglang Miao) \n- media: imx214: Fix stop streaming (Daniel Gomez) \n- samples: bpf: Fix lwt_len_hist reusing previous BPF map (Daniel T. Lee) \n- platform/x86: mlx-platform: Remove PSU EEPROM from MSN274x platform configuration (Vadim Pasternak) \n- platform/x86: mlx-platform: Remove PSU EEPROM from default platform configuration (Vadim Pasternak) \n- media: siano: fix memory leak of debugfs members in smsdvb_hotplug (Keita Suzuki) \n- arm64: tegra: Fix DT binding for IO High Voltage entry (Vidya Sagar) \n- dmaengine: mv_xor_v2: Fix error return code in mv_xor_v2_probe() (Zhihao Cheng) \n- cw1200: fix missing destroy_workqueue() on error in cw1200_init_common (Qinglang Miao) \n- rsi: fix error return code in rsi_reset_card() (Zhang Changzhong) \n- qtnfmac: fix error return code in qtnf_pcie_probe() (Wang Hai) \n- orinoco: Move context allocation after processing the skb (Sebastian Andrzej Siewior) \n- mmc: pxamci: Fix error return code in pxamci_probe (Zhihao Cheng) \n- ARM: dts: at91: sama5d3_xplained: add pincontrol for USB Host (Cristian Birsan) \n- ARM: dts: at91: sama5d4_xplained: add pincontrol for USB Host (Cristian Birsan) \n- memstick: fix a double-free bug in memstick_check (Qinglang Miao) \n- RDMA/cxgb4: Validate the number of CQEs (Kamal Heib) \n- clk: meson: Kconfig: fix dependency for G12A (Kevin Hilman) \n- Input: omap4-keypad - fix runtime PM error handling (Zhang Qilong) \n- drivers: soc: ti: knav_qmss_queue: Fix error return code in knav_queue_probe (Zhihao Cheng) \n- soc: ti: Fix reference imbalance in knav_dma_probe (Zhang Qilong) \n- soc: ti: knav_qmss: fix reference leak in knav_queue_probe (Zhang Qilong) \n- spi: fix resource leak for drivers without .remove callback (Uwe Kleine-Konig) \n- crypto: omap-aes - Fix PM disable depth imbalance in omap_aes_probe (Zhang Qilong) \n- crypto: crypto4xx - Replace bitwise OR with logical OR in crypto4xx_build_pd (Nathan Chancellor) \n- EDAC/mce_amd: Use struct cpuinfo_x86.cpu_die_id for AMD NodeId (Yazen Ghannam) \n- powerpc/feature: Fix CPU_FTRS_ALWAYS by removing CPU_FTRS_GENERIC_32 (Christophe Leroy) \n- powerpc: Avoid broken GCC __attribute__((optimize)) (Ard Biesheuvel) \n- selftests/bpf: Fix broken riscv build (Bjorn Topel) \n- spi: mxs: fix reference leak in mxs_spi_probe (Zhang Qilong) \n- usb/max3421: fix return error code in max3421_probe() (Yang Yingliang) \n- Input: ads7846 - fix unaligned access on 7845 (Dmitry Torokhov) \n- Input: ads7846 - fix integer overflow on Rt calculation (Oleksij Rempel) \n- Input: ads7846 - fix race that causes missing releases (David Jander) \n- drm/omap: dmm_tiler: fix return error code in omap_dmm_probe() (Yang Yingliang) \n- video: fbdev: atmel_lcdfb: fix return error code in atmel_lcdfb_of_init() (Yang Yingliang) \n- media: solo6x10: fix missing snd_card_free in error handling case (Qinglang Miao) \n- scsi: core: Fix VPD LUN ID designator priorities (Martin Wilck) \n- ASoC: meson: fix COMPILE_TEST error (Jerome Brunet) \n- media: v4l2-fwnode: Return -EINVAL for invalid bus-type (Lad Prabhakar) \n- media: mtk-vcodec: add missing put_device() call in mtk_vcodec_init_enc_pm() (Yu Kuai) \n- media: mtk-vcodec: add missing put_device() call in mtk_vcodec_release_dec_pm() (Yu Kuai) \n- media: mtk-vcodec: add missing put_device() call in mtk_vcodec_init_dec_pm() (Yu Kuai) \n- media: tm6000: Fix sizeof() mismatches (Colin Ian King) \n- staging: gasket: interrupt: fix the missed eventfd_ctx_put() in gasket_interrupt.c (Jing Xiangfeng) \n- staging: greybus: codecs: Fix reference counter leak in error handling (Zhang Qilong) \n- crypto: qat - fix status check in qat_hal_put_rel_rd_xfer() (Jack Xu) \n- MIPS: BCM47XX: fix kconfig dependency bug for BCM47XX_BCMA (Necip Fazil Yildiran) \n- RDMa/mthca: Work around -Wenum-conversion warning (Arnd Bergmann) \n- ASoC: arizona: Fix a wrong free in wm8997_probe (Zhang Qilong) \n- spi: sprd: fix reference leak in sprd_spi_remove (Zhang Qilong) \n- ASoC: wm8998: Fix PM disable depth imbalance on error (Zhang Qilong) \n- selftest/bpf: Add missed ip6ip6 test back (Hangbin Liu) \n- mwifiex: fix mwifiex_shutdown_sw() causing sw reset failure (Tsuchiya Yuto) \n- spi: bcm63xx-hsspi: fix missing clk_disable_unprepare() on error in bcm63xx_hsspi_resume (Qinglang Miao) \n- spi: tegra114: fix reference leak in tegra spi ops (Zhang Qilong) \n- spi: tegra20-sflash: fix reference leak in tegra_sflash_resume (Zhang Qilong) \n- spi: tegra20-slink: fix reference leak in slink ops of tegra20 (Zhang Qilong) \n- spi: mt7621: fix missing clk_disable_unprepare() on error in mt7621_spi_probe (Qinglang Miao) \n- spi: spi-ti-qspi: fix reference leak in ti_qspi_setup (Zhang Qilong) \n- Bluetooth: hci_h5: fix memory leak in h5_close (Anant Thazhemadam) \n- Bluetooth: Fix null pointer dereference in hci_event_packet() (Anmol Karn) \n- arm64: dts: exynos: Correct psci compatible used on Exynos7 (Pawel Chmiel) \n- arm64: dts: exynos: Include common syscon restart/poweroff for Exynos7 (Pawel Chmiel) \n- brcmfmac: Fix memory leak for unpaired brcmf_{alloc/free} (Seung-Woo Kim) \n- spi: stm32: fix reference leak in stm32_spi_resume (Zhang Qilong) \n- selinux: fix inode_doinit_with_dentry() LABEL_INVALID error handling (Paul Moore) \n- ASoC: pcm: DRAIN support reactivation (Cezary Rojewski) \n- spi: spi-mem: fix reference leak in spi_mem_access_start (Zhang Qilong) \n- drm/msm/dsi_pll_10nm: restore VCO rate during restore_state (Dmitry Baryshkov) \n- f2fs: call f2fs_get_meta_page_retry for nat page (Jaegeuk Kim) \n- spi: img-spfi: fix reference leak in img_spfi_resume (Zhang Qilong) \n- powerpc/64: Set up a kernel stack for secondaries before cpu_restore() (Jordan Niethe) \n- drm/amdgpu: fix build_coefficients() argument (Arnd Bergmann) \n- ARM: dts: aspeed: tiogapass: Remove vuart (Vijay Khemka) \n- ASoC: sun4i-i2s: Fix lrck_period computation for I2S justified mode (Clement Peron) \n- crypto: inside-secure - Fix sizeof() mismatch (Colin Ian King) \n- crypto: talitos - Fix return type of current_desc_hdr() (Christophe Leroy) \n- crypto: talitos - Endianess in current_desc_hdr() (Christophe Leroy) \n- drm/amdgpu: fix incorrect enum type (Arnd Bergmann) \n- sched: Reenable interrupts in do_sched_yield() (Thomas Gleixner) \n- sched/deadline: Fix sched_dl_global_validate() (Peng Liu) \n- x86/apic: Fix x2apic enablement without interrupt remapping (David Woodhouse) \n- ARM: p2v: fix handling of LPAE translation in BE mode (Ard Biesheuvel) \n- x86/mm/ident_map: Check for errors from ident_pud_init() (Arvind Sankar) \n- RDMA/rxe: Compute PSN windows correctly (Bob Pearson) \n- ARM: dts: aspeed: s2600wf: Fix VGA memory region location (Joel Stanley) \n- selinux: fix error initialization in inode_doinit_with_dentry() (Tianyue Ren) \n- rtc: pcf2127: fix pcf2127_nvmem_read/write() returns (Dan Carpenter) \n- RDMA/bnxt_re: Set queue pair state when being queried (Kamal Heib) \n- Revert 'i2c: i2c-qcom-geni: Fix DMA transfer race' (Douglas Anderson) \n- soc: qcom: geni: More properly switch to DMA mode (Douglas Anderson) \n- soc: mediatek: Check if power domains can be powered on at boot time (Nicolas Boichat) \n- soc: renesas: rmobile-sysc: Fix some leaks in rmobile_init_pm_domains() (Dan Carpenter) \n- arm64: dts: renesas: cat875: Remove rxc-skew-ps from ethernet-phy node (Biju Das) \n- arm64: dts: renesas: hihope-rzg2-ex: Drop rxc-skew-ps from ethernet-phy node (Biju Das) \n- drm/tve200: Fix handling of platform_get_irq() error (Krzysztof Kozlowski) \n- drm/mcde: Fix handling of platform_get_irq() error (Krzysztof Kozlowski) \n- drm/aspeed: Fix Kconfig warning \u0026 subsequent build errors (Randy Dunlap) \n- drm/gma500: fix double free of gma_connector (Tom Rix) \n- md: fix a warning caused by a race between concurrent md_ioctl()s (Dae R. Jeong) \n- crypto: af_alg - avoid undefined behavior accessing salg_name (Eric Biggers) \n- media: msi2500: assign SPI bus number dynamically (Antti Palosaari) \n- quota: Sanity-check quota file headers on load (Jan Kara) \n- Bluetooth: Fix slab-out-of-bounds read in hci_le_direct_adv_report_evt() (Peilin Ye) \n- serial_core: Check for port state when tty is in error state (Alexey Kardashevskiy) \n- HID: i2c-hid: add Vero K147 to descriptor override (Julian Sax) \n- scsi: megaraid_sas: Check user-provided offsets (Arnd Bergmann) \n- coresight: etb10: Fix possible NULL ptr dereference in etb_enable_perf() (Sai Prakash Ranjan) \n- coresight: tmc-etr: Fix barrier packet insertion for perf buffer (Suzuki K Poulose) \n- coresight: tmc-etr: Check if page is valid before dma_map_page() (Mao Jinlong) \n- coresight: tmc-etf: Fix NULL ptr dereference in tmc_enable_etf_sink_perf() (Sai Prakash Ranjan) \n- ARM: dts: exynos: fix USB 3.0 pins supply being turned off on Odroid XU (Krzysztof Kozlowski) \n- ARM: dts: exynos: fix USB 3.0 VBUS control and over-current pins on Exynos5410 (Krzysztof Kozlowski) \n- ARM: dts: exynos: fix roles of USB 3.0 ports on Odroid XU (Krzysztof Kozlowski) \n- usb: chipidea: ci_hdrc_imx: Pass DISABLE_DEVICE_STREAMING flag to imx6ul (Fabio Estevam) \n- USB: gadget: f_rndis: fix bitrate for SuperSpeed and above (Will McVicker) \n- usb: gadget: f_fs: Re-use SS descriptors for SuperSpeedPlus (Jack Pham) \n- USB: gadget: f_midi: setup SuperSpeed Plus descriptors (Will McVicker) \n- USB: gadget: f_acm: add support for SuperSpeed Plus (taehyun.cho) \n- USB: serial: option: add interface-number sanity check to flag handling (Johan Hovold) \n- usb: mtu3: fix memory corruption in mtu3_debugfs_regset() (Dan Carpenter) \n- soc/tegra: fuse: Fix index bug in get_process_id (Nicolin Chen) \n- kbuild: avoid split lines in .mod files (Masahiro Yamada) \n- perf/x86/intel: Check PEBS status correctly (Stephane Eranian) \n- drm/amd/display: Init clock value by current vbios CLKs (Brandon Syu) \n- iwlwifi: pcie: add one missing entry for AX210 (Luca Coelho) \n- dm table: Remove BUG_ON(in_interrupt()) (Thomas Gleixner) \n- scsi: mpt3sas: Increase IOCInit request timeout to 30s (Sreekanth Reddy) \n- vxlan: Copy needed_tailroom from lowerdev (Sven Eckelmann) \n- vxlan: Add needed_headroom for lower device (Sven Eckelmann) \n- arm64: syscall: exit userspace before unmasking exceptions (Mark Rutland) \n- habanalabs: put devices before driver removal (Ofir Bitton) \n- drm/tegra: sor: Disable clocks on error in tegra_sor_init() (Qinglang Miao) \n- kernel/cpu: add arch override for clear_tasks_mm_cpumask() mm handling (Nicholas Piggin) \n- drm/tegra: replace idr_init() by idr_init_base() (Deepak R Varma) \n- net: mvpp2: add mvpp2_phylink_to_port() helper (Russell King) \n- selftests: fix poll error in udpgro.sh (Paolo Abeni) \n- ixgbe: avoid premature Rx buffer reuse (Bjorn Topel) \n- i40e: avoid premature Rx buffer reuse (Bjorn Topel) \n- i40e: optimise prefetch page refcount (Li RongQing) \n- i40e: Refactor rx_bi accesses (Bjorn Topel) \n- RDMA/cm: Fix an attempt to use non-valid pointer when cleaning timewait (Leon Romanovsky) \n- selftests/bpf/test_offload.py: Reset ethtool features after failed setting (Toke Hoiland-Jorgensen) \n- netfilter: nft_ct: Remove confirmation check for NFT_CT_ID (Brett Mastbergen) \n- gpio: eic-sprd: break loop when getting NULL device resource (Chunyan Zhang) \n- Revert 'gpio: eic-sprd: Use devm_platform_ioremap_resource()' (Baolin Wang) \n- afs: Fix memory leak when mounting with multiple source parameters (David Howells) \n- netfilter: nft_dynset: fix timeouts later than 23 days (Pablo Neira Ayuso) \n- netfilter: nft_compat: make sure xtables destructors have run (Florian Westphal) \n- netfilter: x_tables: Switch synchronization to RCU (Subash Abhinov Kasiviswanathan) \n- pinctrl: aspeed: Fix GPIO requests on pass-through banks (Andrew Jeffery) \n- blk-mq: In blk_mq_dispatch_rq_list() 'no budget' is a reason to kick (Douglas Anderson) \n- block: factor out requeue handling from dispatch code (Johannes Thumshirn) \n- block: Simplify REQ_OP_ZONE_RESET_ALL handling (Damien Le Moal) \n- clk: renesas: r9a06g032: Drop __packed for portability (Geert Uytterhoeven) \n- can: softing: softing_netdev_open(): fix error handling (Zhang Qilong) \n- xsk: Replace datagram_poll by sock_poll_wait (Xuan Zhuo) \n- xsk: Fix xsk_poll()'s return type (Luc Van Oostenryck) \n- scsi: bnx2i: Requires MMU (Randy Dunlap) \n- gpio: mvebu: fix potential user-after-free on probe (Baruch Siach) \n- gpio: zynq: fix reference leak in zynq_gpio functions (Qinglang Miao) \n- PM: runtime: Add pm_runtime_resume_and_get to deal with usage counter (Zhang Qilong) \n- ARM: dts: imx6qdl-kontron-samx6i: fix I2C_PM scl pin (Bernd Bauer) \n- ARM: dts: imx6qdl-wandboard-revd1: Remove PAD_GPIO_6 from enetgrp (Fabio Estevam) \n- ARM: dts: sun7i: pcduino3-nano: enable RGMII RX/TX delay on PHY (Adam Sampson) \n- ARM: dts: sun8i: v3s: fix GIC node memory range (Icenowy Zheng) \n- pinctrl: baytrail: Avoid clearing debounce value when turning it off (Andy Shevchenko) \n- pinctrl: merrifield: Set default bias in case no particular value given (Andy Shevchenko) \n- ARM: dts: sun8i: v40: bananapi-m2-berry: Fix ethernet node (Pablo Greco) \n- ARM: dts: sun8i: r40: bananapi-m2-berry: Fix dcdc1 regulator (Pablo Greco) \n- RAS/CEC: Correct ce_add_elem()'s returned values (William Roche) [Orabug: 32774757] \n- bpf, x86: Validate computation of branch displacements for x86-64 (Piotr Krysiuk) [Orabug: 32759959] {CVE-2021-29154}\n- KVM: SVM: avoid infinite loop on NPF from bad address (John Donnelly) [Orabug: 32759746] {CVE-2020-36310}\n- uek-rpm: Add Amazon Elastic Network Adapter module to nano rpm. (Somasundaram Krishnasamy) [Orabug: 32795492]", + "Platform": [ + "Oracle Linux 7", + "Oracle Linux 8" + ], + "References": [ + { + "Source": "elsa", + "URI": "https://linux.oracle.com/errata/ELSA-2021-9306.html", + "ID": "ELSA-2021-9306" + }, + { + "Source": "CVE", + "URI": "https://linux.oracle.com/cve/CVE-2021-23133.html", + "ID": "CVE-2021-23133" + }, + { + "Source": "CVE", + "URI": "https://linux.oracle.com/cve/CVE-2020-36310.html", + "ID": "CVE-2020-36310" + } + ], + "Criteria": { + "Operator": "OR", + "Criterias": [ + { + "Operator": "AND", + "Criterias": [ + { + "Operator": "OR", + "Criterias": [ + { + "Operator": "AND", + "Criterias": [ + { + "Operator": "OR", + "Criterias": [ + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek is earlier than 0:5.4.17-2102.202.5.el7uek" + }, + { + "Comment": "kernel-uek is signed with the Oracle Linux 7 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-debug is earlier than 0:5.4.17-2102.202.5.el7uek" + }, + { + "Comment": "kernel-uek-debug is signed with the Oracle Linux 7 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-debug-devel is earlier than 0:5.4.17-2102.202.5.el7uek" + }, + { + "Comment": "kernel-uek-debug-devel is signed with the Oracle Linux 7 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-devel is earlier than 0:5.4.17-2102.202.5.el7uek" + }, + { + "Comment": "kernel-uek-devel is signed with the Oracle Linux 7 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-doc is earlier than 0:5.4.17-2102.202.5.el7uek" + }, + { + "Comment": "kernel-uek-doc is signed with the Oracle Linux 7 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-tools is earlier than 0:5.4.17-2102.202.5.el7uek" + }, + { + "Comment": "kernel-uek-tools is signed with the Oracle Linux 7 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-tools-libs is earlier than 0:5.4.17-2102.202.5.el7uek" + }, + { + "Comment": "kernel-uek-tools-libs is signed with the Oracle Linux 7 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "perf is earlier than 0:5.4.17-2102.202.5.el7uek" + }, + { + "Comment": "perf is signed with the Oracle Linux 7 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "python-perf is earlier than 0:5.4.17-2102.202.5.el7uek" + }, + { + "Comment": "python-perf is signed with the Oracle Linux 7 key" + } + ] + } + ], + "Criterions": null + } + ], + "Criterions": [ + { + "Comment": "Oracle Linux arch is aarch64" + } + ] + }, + { + "Operator": "AND", + "Criterias": [ + { + "Operator": "OR", + "Criterias": [ + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek is earlier than 0:5.4.17-2102.202.5.el7uek" + }, + { + "Comment": "kernel-uek is signed with the Oracle Linux 7 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-debug is earlier than 0:5.4.17-2102.202.5.el7uek" + }, + { + "Comment": "kernel-uek-debug is signed with the Oracle Linux 7 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-debug-devel is earlier than 0:5.4.17-2102.202.5.el7uek" + }, + { + "Comment": "kernel-uek-debug-devel is signed with the Oracle Linux 7 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-devel is earlier than 0:5.4.17-2102.202.5.el7uek" + }, + { + "Comment": "kernel-uek-devel is signed with the Oracle Linux 7 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-doc is earlier than 0:5.4.17-2102.202.5.el7uek" + }, + { + "Comment": "kernel-uek-doc is signed with the Oracle Linux 7 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-tools is earlier than 0:5.4.17-2102.202.5.el7uek" + }, + { + "Comment": "kernel-uek-tools is signed with the Oracle Linux 7 key" + } + ] + } + ], + "Criterions": null + } + ], + "Criterions": [ + { + "Comment": "Oracle Linux arch is x86_64" + } + ] + } + ], + "Criterions": null + } + ], + "Criterions": [ + { + "Comment": "Oracle Linux 7 is installed" + } + ] + }, + { + "Operator": "AND", + "Criterias": [ + { + "Operator": "OR", + "Criterias": [ + { + "Operator": "AND", + "Criterias": [ + { + "Operator": "OR", + "Criterias": [ + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek is earlier than 0:5.4.17-2102.202.5.el8uek" + }, + { + "Comment": "kernel-uek is signed with the Oracle Linux 8 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-debug is earlier than 0:5.4.17-2102.202.5.el8uek" + }, + { + "Comment": "kernel-uek-debug is signed with the Oracle Linux 8 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-debug-devel is earlier than 0:5.4.17-2102.202.5.el8uek" + }, + { + "Comment": "kernel-uek-debug-devel is signed with the Oracle Linux 8 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-devel is earlier than 0:5.4.17-2102.202.5.el8uek" + }, + { + "Comment": "kernel-uek-devel is signed with the Oracle Linux 8 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-doc is earlier than 0:5.4.17-2102.202.5.el8uek" + }, + { + "Comment": "kernel-uek-doc is signed with the Oracle Linux 8 key" + } + ] + } + ], + "Criterions": null + } + ], + "Criterions": [ + { + "Comment": "Oracle Linux arch is aarch64" + } + ] + }, + { + "Operator": "AND", + "Criterias": [ + { + "Operator": "OR", + "Criterias": [ + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek is earlier than 0:5.4.17-2102.202.5.el8uek" + }, + { + "Comment": "kernel-uek is signed with the Oracle Linux 8 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-debug is earlier than 0:5.4.17-2102.202.5.el8uek" + }, + { + "Comment": "kernel-uek-debug is signed with the Oracle Linux 8 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-debug-devel is earlier than 0:5.4.17-2102.202.5.el8uek" + }, + { + "Comment": "kernel-uek-debug-devel is signed with the Oracle Linux 8 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-devel is earlier than 0:5.4.17-2102.202.5.el8uek" + }, + { + "Comment": "kernel-uek-devel is signed with the Oracle Linux 8 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-doc is earlier than 0:5.4.17-2102.202.5.el8uek" + }, + { + "Comment": "kernel-uek-doc is signed with the Oracle Linux 8 key" + } + ] + } + ], + "Criterions": null + } + ], + "Criterions": [ + { + "Comment": "Oracle Linux arch is x86_64" + } + ] + } + ], + "Criterions": null + } + ], + "Criterions": [ + { + "Comment": "Oracle Linux 8 is installed" + } + ] + } + ], + "Criterions": null + }, + "Severity": "IMPORTANT", + "Cves": [ + { + "Impact": "", + "Href": "https://linux.oracle.com/cve/CVE-2021-23133.html", + "ID": "CVE-2021-23133" + }, + { + "Impact": "", + "Href": "https://linux.oracle.com/cve/CVE-2020-36310.html", + "ID": "CVE-2020-36310" + } + ] + } \ No newline at end of file diff --git a/pkg/vulnsrc/oracle-oval/testdata/multi-elsas/vuln-list/oval/oracle/2021/ELSA-2021-9362.json b/pkg/vulnsrc/oracle-oval/testdata/multi-elsas/vuln-list/oval/oracle/2021/ELSA-2021-9362.json new file mode 100644 index 00000000..f7170d7a --- /dev/null +++ b/pkg/vulnsrc/oracle-oval/testdata/multi-elsas/vuln-list/oval/oracle/2021/ELSA-2021-9362.json @@ -0,0 +1,440 @@ +{ + "Title": "ELSA-2021-9362: Unbreakable Enterprise kernel security update (IMPORTANT)", + "Description": "[5.4.17-2102.203.5]\n- rds/ib: move rds_ib_clear_irq_miss() to .h ...", + "Platform": [ + "Oracle Linux 7", + "Oracle Linux 8" + ], + "References": [ + { + "Source": "elsa", + "URI": "https://linux.oracle.com/errata/ELSA-2021-9362.html", + "ID": "ELSA-2021-9362" + }, + { + "Source": "CVE", + "URI": "https://linux.oracle.com/cve/CVE-2021-23133.html", + "ID": "CVE-2021-23133" + }, + { + "Source": "CVE", + "URI": "https://linux.oracle.com/cve/CVE-2021-33034.html", + "ID": "CVE-2021-33034" + } + ], + "Criteria": { + "Operator": "OR", + "Criterias": [ + { + "Operator": "AND", + "Criterias": [ + { + "Operator": "OR", + "Criterias": [ + { + "Operator": "AND", + "Criterias": [ + { + "Operator": "OR", + "Criterias": [ + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek is earlier than 0:5.4.17-2102.203.5.el7uek" + }, + { + "Comment": "kernel-uek is signed with the Oracle Linux 7 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-debug is earlier than 0:5.4.17-2102.203.5.el7uek" + }, + { + "Comment": "kernel-uek-debug is signed with the Oracle Linux 7 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-debug-devel is earlier than 0:5.4.17-2102.203.5.el7uek" + }, + { + "Comment": "kernel-uek-debug-devel is signed with the Oracle Linux 7 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-devel is earlier than 0:5.4.17-2102.203.5.el7uek" + }, + { + "Comment": "kernel-uek-devel is signed with the Oracle Linux 7 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-doc is earlier than 0:5.4.17-2102.203.5.el7uek" + }, + { + "Comment": "kernel-uek-doc is signed with the Oracle Linux 7 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-tools is earlier than 0:5.4.17-2102.203.5.el7uek" + }, + { + "Comment": "kernel-uek-tools is signed with the Oracle Linux 7 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-tools-libs is earlier than 0:5.4.17-2102.203.5.el7uek" + }, + { + "Comment": "kernel-uek-tools-libs is signed with the Oracle Linux 7 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "perf is earlier than 0:5.4.17-2102.203.5.el7uek" + }, + { + "Comment": "perf is signed with the Oracle Linux 7 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "python-perf is earlier than 0:5.4.17-2102.203.5.el7uek" + }, + { + "Comment": "python-perf is signed with the Oracle Linux 7 key" + } + ] + } + ], + "Criterions": null + } + ], + "Criterions": [ + { + "Comment": "Oracle Linux arch is aarch64" + } + ] + }, + { + "Operator": "AND", + "Criterias": [ + { + "Operator": "OR", + "Criterias": [ + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek is earlier than 0:5.4.17-2102.203.5.el7uek" + }, + { + "Comment": "kernel-uek is signed with the Oracle Linux 7 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-debug is earlier than 0:5.4.17-2102.203.5.el7uek" + }, + { + "Comment": "kernel-uek-debug is signed with the Oracle Linux 7 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-debug-devel is earlier than 0:5.4.17-2102.203.5.el7uek" + }, + { + "Comment": "kernel-uek-debug-devel is signed with the Oracle Linux 7 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-devel is earlier than 0:5.4.17-2102.203.5.el7uek" + }, + { + "Comment": "kernel-uek-devel is signed with the Oracle Linux 7 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-doc is earlier than 0:5.4.17-2102.203.5.el7uek" + }, + { + "Comment": "kernel-uek-doc is signed with the Oracle Linux 7 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-tools is earlier than 0:5.4.17-2102.203.5.el7uek" + }, + { + "Comment": "kernel-uek-tools is signed with the Oracle Linux 7 key" + } + ] + } + ], + "Criterions": null + } + ], + "Criterions": [ + { + "Comment": "Oracle Linux arch is x86_64" + } + ] + } + ], + "Criterions": null + } + ], + "Criterions": [ + { + "Comment": "Oracle Linux 7 is installed" + } + ] + }, + { + "Operator": "AND", + "Criterias": [ + { + "Operator": "OR", + "Criterias": [ + { + "Operator": "AND", + "Criterias": [ + { + "Operator": "OR", + "Criterias": [ + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek is earlier than 0:5.4.17-2102.203.5.el8uek" + }, + { + "Comment": "kernel-uek is signed with the Oracle Linux 8 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-debug is earlier than 0:5.4.17-2102.203.5.el8uek" + }, + { + "Comment": "kernel-uek-debug is signed with the Oracle Linux 8 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-debug-devel is earlier than 0:5.4.17-2102.203.5.el8uek" + }, + { + "Comment": "kernel-uek-debug-devel is signed with the Oracle Linux 8 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-devel is earlier than 0:5.4.17-2102.203.5.el8uek" + }, + { + "Comment": "kernel-uek-devel is signed with the Oracle Linux 8 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-doc is earlier than 0:5.4.17-2102.203.5.el8uek" + }, + { + "Comment": "kernel-uek-doc is signed with the Oracle Linux 8 key" + } + ] + } + ], + "Criterions": null + } + ], + "Criterions": [ + { + "Comment": "Oracle Linux arch is aarch64" + } + ] + }, + { + "Operator": "AND", + "Criterias": [ + { + "Operator": "OR", + "Criterias": [ + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek is earlier than 0:5.4.17-2102.203.5.el8uek" + }, + { + "Comment": "kernel-uek is signed with the Oracle Linux 8 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-debug is earlier than 0:5.4.17-2102.203.5.el8uek" + }, + { + "Comment": "kernel-uek-debug is signed with the Oracle Linux 8 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-debug-devel is earlier than 0:5.4.17-2102.203.5.el8uek" + }, + { + "Comment": "kernel-uek-debug-devel is signed with the Oracle Linux 8 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-devel is earlier than 0:5.4.17-2102.203.5.el8uek" + }, + { + "Comment": "kernel-uek-devel is signed with the Oracle Linux 8 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "kernel-uek-doc is earlier than 0:5.4.17-2102.203.5.el8uek" + }, + { + "Comment": "kernel-uek-doc is signed with the Oracle Linux 8 key" + } + ] + } + ], + "Criterions": null + } + ], + "Criterions": [ + { + "Comment": "Oracle Linux arch is x86_64" + } + ] + } + ], + "Criterions": null + } + ], + "Criterions": [ + { + "Comment": "Oracle Linux 8 is installed" + } + ] + } + ], + "Criterions": null + }, + "Severity": "IMPORTANT", + "Cves": [ + { + "Impact": "", + "Href": "https://linux.oracle.com/cve/CVE-2021-23133.html", + "ID": "CVE-2021-23133" + }, + { + "Impact": "", + "Href": "https://linux.oracle.com/cve/CVE-2021-33034.html", + "ID": "CVE-2021-33034" + } + ] + } \ No newline at end of file diff --git a/pkg/vulnsrc/oracle-oval/testdata/multi-flavor/vuln-list/oval/oracle/2021/ELSA-2021-4451.json b/pkg/vulnsrc/oracle-oval/testdata/multi-flavor/vuln-list/oval/oracle/2021/ELSA-2021-4451.json new file mode 100644 index 00000000..4c92c71a --- /dev/null +++ b/pkg/vulnsrc/oracle-oval/testdata/multi-flavor/vuln-list/oval/oracle/2021/ELSA-2021-4451.json @@ -0,0 +1,263 @@ +{ + "Title": "ELSA-2021-4451: gnutls and nettle security, bug fix, and enhancement update (MODERATE)", + "Description": "gnutls\n[3.6.16-4]\n- p11tool: Document ID reuse behavior when importing certs (#1776250)\n\n[3.6.16-3]\n- Treat SHA-1 signed CA in the trusted set differently (#1965445)\n\n[3.6.16-2]\n- Filter certificate_types in TLS 1.2 CR based on signature algorithms (#1942216)\n\n[3.6.16-1]\n- Update to upstream 3.6.16 release (#1956783)\n- Fix potential use-after-free in key_share handling (#1927597)\n- Fix potential use-after-free in pre_shared_key handling (#1927593)\n- Stop gnutls-serv relying on AI_ADDRCONFIG to decide listening address (#1908334)\n- Fix cert expiration issue in tests (#1908110)\n\n[3.6.14-10]\n- Port fixes for potential miscalculation in ecdsa_verify (#1942931)\n\n[3.6.14-9]\n- Revert the previous change\n\nnettle\n[3.4.1-7]\n- Backport CVE-2021-3580 from upstream 3.7.3 release (#1967990)\n\n[3.4.1-6]\n- Enable CTR mode optimization when the block size is 16\n\n[3.4.1-5]\n- Backport powerpc64 optimization patches from upstream (#1855228)\n Patch from Christopher M. Riedl.", + "Platform": [ + "Oracle Linux 8" + ], + "References": [ + { + "Source": "elsa", + "URI": "https://linux.oracle.com/errata/ELSA-2021-4451.html", + "ID": "ELSA-2021-4451" + }, + { + "Source": "CVE", + "URI": "https://linux.oracle.com/cve/CVE-2021-20232.html", + "ID": "CVE-2021-20232" + }, + { + "Source": "CVE", + "URI": "https://linux.oracle.com/cve/CVE-2021-3580.html", + "ID": "CVE-2021-3580" + }, + { + "Source": "CVE", + "URI": "https://linux.oracle.com/cve/CVE-2021-20231.html", + "ID": "CVE-2021-20231" + } + ], + "Criteria": { + "Operator": "AND", + "Criterias": [ + { + "Operator": "OR", + "Criterias": [ + { + "Operator": "AND", + "Criterias": [ + { + "Operator": "OR", + "Criterias": [ + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "gnutls-c++ is earlier than 0:3.6.16-4.el8" + }, + { + "Comment": "gnutls-c++ is signed with the Oracle Linux 8 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "gnutls-dane is earlier than 0:3.6.16-4.el8" + }, + { + "Comment": "gnutls-dane is signed with the Oracle Linux 8 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "gnutls-devel is earlier than 0:3.6.16-4.el8" + }, + { + "Comment": "gnutls-devel is signed with the Oracle Linux 8 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "gnutls-utils is earlier than 0:3.6.16-4.el8" + }, + { + "Comment": "gnutls-utils is signed with the Oracle Linux 8 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "nettle-devel is earlier than 0:3.4.1-7.el8" + }, + { + "Comment": "nettle-devel is signed with the Oracle Linux 8 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "gnutls is earlier than 0:3.6.16-4.el8" + }, + { + "Comment": "gnutls is signed with the Oracle Linux 8 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "nettle is earlier than 0:3.4.1-7.el8" + }, + { + "Comment": "nettle is signed with the Oracle Linux 8 key" + } + ] + } + ], + "Criterions": null + } + ], + "Criterions": [ + { + "Comment": "Oracle Linux arch is aarch64" + } + ] + }, + { + "Operator": "AND", + "Criterias": [ + { + "Operator": "OR", + "Criterias": [ + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "gnutls is earlier than 0:3.6.16-4.el8" + }, + { + "Comment": "gnutls is signed with the Oracle Linux 8 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "nettle is earlier than 0:3.4.1-7.el8" + }, + { + "Comment": "nettle is signed with the Oracle Linux 8 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "gnutls-c++ is earlier than 0:3.6.16-4.el8" + }, + { + "Comment": "gnutls-c++ is signed with the Oracle Linux 8 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "gnutls-dane is earlier than 0:3.6.16-4.el8" + }, + { + "Comment": "gnutls-dane is signed with the Oracle Linux 8 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "gnutls-devel is earlier than 0:3.6.16-4.el8" + }, + { + "Comment": "gnutls-devel is signed with the Oracle Linux 8 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "gnutls-utils is earlier than 0:3.6.16-4.el8" + }, + { + "Comment": "gnutls-utils is signed with the Oracle Linux 8 key" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "nettle-devel is earlier than 0:3.4.1-7.el8" + }, + { + "Comment": "nettle-devel is signed with the Oracle Linux 8 key" + } + ] + } + ], + "Criterions": null + } + ], + "Criterions": [ + { + "Comment": "Oracle Linux arch is x86_64" + } + ] + } + ], + "Criterions": null + } + ], + "Criterions": [ + { + "Comment": "Oracle Linux 8 is installed" + } + ] + }, + "Severity": "MODERATE", + "Cves": [ + { + "Impact": "", + "Href": "https://linux.oracle.com/cve/CVE-2021-20232.html", + "ID": "CVE-2021-20232" + }, + { + "Impact": "", + "Href": "https://linux.oracle.com/cve/CVE-2021-3580.html", + "ID": "CVE-2021-3580" + }, + { + "Impact": "", + "Href": "https://linux.oracle.com/cve/CVE-2021-20231.html", + "ID": "CVE-2021-20231" + } + ] + } \ No newline at end of file diff --git a/pkg/vulnsrc/oracle-oval/testdata/multi-flavor/vuln-list/oval/oracle/2022/ELSA-2022-9221.json b/pkg/vulnsrc/oracle-oval/testdata/multi-flavor/vuln-list/oval/oracle/2022/ELSA-2022-9221.json new file mode 100644 index 00000000..c948ef2a --- /dev/null +++ b/pkg/vulnsrc/oracle-oval/testdata/multi-flavor/vuln-list/oval/oracle/2022/ELSA-2022-9221.json @@ -0,0 +1,245 @@ +{ + "Title": "ELSA-2022-9221: gnutls security update (MODERATE)", + "Description": "[3.6.16-4.0.1_fips]\n- Allow RSA keygen with modulus sizes bigger than 3072 bits and validate the seed length\n as defined in FIPS 186-4 section B.3.2 [Orabug: 33200526]\n- Allow bigger known RSA modulus sizes when calling\n rsa_generate_fips186_4_keypair directly [Orabug: 33200526]\n- Change Epoch from 1 to 10\n\n[3.6.16-4]\n- p11tool: Document ID reuse behavior when importing certs (#1776250)\n\n[3.6.16-3]\n- Treat SHA-1 signed CA in the trusted set differently (#1965445)\n\n[3.6.16-2]\n- Filter certificate_types in TLS 1.2 CR based on signature algorithms (#1942216)\n\n[3.6.16-1]\n- Update to upstream 3.6.16 release (#1956783)\n- Fix potential use-after-free in key_share handling (#1927597)\n- Fix potential use-after-free in pre_shared_key handling (#1927593)\n- Stop gnutls-serv relying on AI_ADDRCONFIG to decide listening address (#1908334)\n- Fix cert expiration issue in tests (#1908110)\n\n[3.6.14-10]\n- Port fixes for potential miscalculation in ecdsa_verify (#1942931)\n\n[3.6.14-9]\n- Revert the previous change", + "Platform": [ + "Oracle Linux 8" + ], + "References": [ + { + "Source": "elsa", + "URI": "https://linux.oracle.com/errata/ELSA-2022-9221.html", + "ID": "ELSA-2022-9221" + }, + { + "Source": "CVE", + "URI": "https://linux.oracle.com/cve/CVE-2021-20232.html", + "ID": "CVE-2021-20232" + }, + { + "Source": "CVE", + "URI": "https://linux.oracle.com/cve/CVE-2021-3580.html", + "ID": "CVE-2021-3580" + }, + { + "Source": "CVE", + "URI": "https://linux.oracle.com/cve/CVE-2021-20231.html", + "ID": "CVE-2021-20231" + } + ], + "Criteria": { + "Operator": "AND", + "Criterias": [ + { + "Operator": "OR", + "Criterias": [ + { + "Operator": "AND", + "Criterias": [ + { + "Operator": "OR", + "Criterias": [ + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "gnutls is earlier than 10:3.6.16-4.0.1.el8_fips" + }, + { + "Comment": "gnutls is signed with the Oracle Linux 8 key" + }, + { + "Comment": "gnutls is fips patched" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "gnutls-c++ is earlier than 10:3.6.16-4.0.1.el8_fips" + }, + { + "Comment": "gnutls-c++ is signed with the Oracle Linux 8 key" + }, + { + "Comment": "gnutls-c++ is fips patched" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "gnutls-dane is earlier than 10:3.6.16-4.0.1.el8_fips" + }, + { + "Comment": "gnutls-dane is signed with the Oracle Linux 8 key" + }, + { + "Comment": "gnutls-dane is fips patched" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "gnutls-devel is earlier than 10:3.6.16-4.0.1.el8_fips" + }, + { + "Comment": "gnutls-devel is signed with the Oracle Linux 8 key" + }, + { + "Comment": "gnutls-devel is fips patched" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "gnutls-utils is earlier than 10:3.6.16-4.0.1.el8_fips" + }, + { + "Comment": "gnutls-utils is signed with the Oracle Linux 8 key" + }, + { + "Comment": "gnutls-utils is fips patched" + } + ] + } + ], + "Criterions": null + } + ], + "Criterions": [ + { + "Comment": "Oracle Linux arch is aarch64" + } + ] + }, + { + "Operator": "AND", + "Criterias": [ + { + "Operator": "OR", + "Criterias": [ + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "gnutls is earlier than 10:3.6.16-4.0.1.el8_fips" + }, + { + "Comment": "gnutls is signed with the Oracle Linux 8 key" + }, + { + "Comment": "gnutls is fips patched" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "gnutls-c++ is earlier than 10:3.6.16-4.0.1.el8_fips" + }, + { + "Comment": "gnutls-c++ is signed with the Oracle Linux 8 key" + }, + { + "Comment": "gnutls-c++ is fips patched" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "gnutls-dane is earlier than 10:3.6.16-4.0.1.el8_fips" + }, + { + "Comment": "gnutls-dane is signed with the Oracle Linux 8 key" + }, + { + "Comment": "gnutls-dane is fips patched" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "gnutls-devel is earlier than 10:3.6.16-4.0.1.el8_fips" + }, + { + "Comment": "gnutls-devel is signed with the Oracle Linux 8 key" + }, + { + "Comment": "gnutls-devel is fips patched" + } + ] + }, + { + "Operator": "AND", + "Criterias": null, + "Criterions": [ + { + "Comment": "gnutls-utils is earlier than 10:3.6.16-4.0.1.el8_fips" + }, + { + "Comment": "gnutls-utils is signed with the Oracle Linux 8 key" + }, + { + "Comment": "gnutls-utils is fips patched" + } + ] + } + ], + "Criterions": null + } + ], + "Criterions": [ + { + "Comment": "Oracle Linux arch is x86_64" + } + ] + } + ], + "Criterions": null + } + ], + "Criterions": [ + { + "Comment": "Oracle Linux 8 is installed" + } + ] + }, + "Severity": "MODERATE", + "Cves": [ + { + "Impact": "", + "Href": "https://linux.oracle.com/cve/CVE-2021-20232.html", + "ID": "CVE-2021-20232" + }, + { + "Impact": "", + "Href": "https://linux.oracle.com/cve/CVE-2021-3580.html", + "ID": "CVE-2021-3580" + }, + { + "Impact": "", + "Href": "https://linux.oracle.com/cve/CVE-2021-20231.html", + "ID": "CVE-2021-20231" + } + ] + } \ No newline at end of file diff --git a/pkg/vulnsrc/oracle-oval/types.go b/pkg/vulnsrc/oracle-oval/types.go index c3da7ec9..5e3fb1b8 100644 --- a/pkg/vulnsrc/oracle-oval/types.go +++ b/pkg/vulnsrc/oracle-oval/types.go @@ -36,19 +36,19 @@ type Criterion struct { } type Package struct { - Name string - FixedVersion string + Name string + OSVer string } type AffectedPackage struct { - Package Package - OSVer string + Package Package + FixedVersion string } type Date struct { Date string `json:"date"` } -func (p *AffectedPackage) PlatformName() string { +func (p *Package) PlatformName() string { return fmt.Sprintf(platformFormat, p.OSVer) }