From: Pali Rohár Date: Sun, 26 Dec 2021 22:47:03 +0000 (+0100) Subject: libpci: Fix intel_sanity_check() function X-Git-Tag: v3.8.0~76 X-Git-Url: http://mj.ucw.cz/gitweb/?a=commitdiff_plain;h=1eb437a40746c1791e7248193a17f92ddbabdd21;p=pciutils.git libpci: Fix intel_sanity_check() function Function intel_sanity_check() calls conf1_read() which access d->domain field. But intel_sanity_check() does not initialize this field and so conf1_read() access some random data on stack. Tests showed that intel_sanity_check() always fails as in d->domain is stored some non-zero number. Fix this issue by zeroing struct pci_dev d in intel_sanity_check() as sanity check is verifying PCI devices at domain 0. --- diff --git a/lib/i386-ports.c b/lib/i386-ports.c index 8b7ceb7..20bce94 100644 --- a/lib/i386-ports.c +++ b/lib/i386-ports.c @@ -75,6 +75,7 @@ intel_sanity_check(struct pci_access *a, struct pci_methods *m) { struct pci_dev d; + memset(&d, 0, sizeof(d)); a->debug("...sanity check"); d.bus = 0; d.func = 0;