diff options
| author | Michael Forney <mforney@mforney.org> | 2020-08-16 17:26:26 -0700 |
|---|---|---|
| committer | Michael Forney <mforney@mforney.org> | 2020-08-16 17:26:32 -0700 |
| commit | 3d514acfe7cf80ea5dfc189055bb2e7fdf6a2d43 (patch) | |
| tree | c89055a6d20355c7b293f3c68369a8f3ded6ec71 /pkg/pciutils/patch/0002-Fix-pointer-type-of-sscanf-arguments.patch | |
| parent | 7d88126e0ab869493e784d5b95569646883874a7 (diff) | |
Add pciutils 3.7.0
Diffstat (limited to 'pkg/pciutils/patch/0002-Fix-pointer-type-of-sscanf-arguments.patch')
| -rw-r--r-- | pkg/pciutils/patch/0002-Fix-pointer-type-of-sscanf-arguments.patch | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/pkg/pciutils/patch/0002-Fix-pointer-type-of-sscanf-arguments.patch b/pkg/pciutils/patch/0002-Fix-pointer-type-of-sscanf-arguments.patch new file mode 100644 index 00000000..827ad7cc --- /dev/null +++ b/pkg/pciutils/patch/0002-Fix-pointer-type-of-sscanf-arguments.patch @@ -0,0 +1,64 @@ +From b7a6ea17d3ba3a271b475da6f8a419e55ffb7310 Mon Sep 17 00:00:00 2001 +From: Michael Forney <mforney@mforney.org> +Date: Sun, 16 Aug 2020 16:23:10 -0700 +Subject: [PATCH] Fix pointer type of sscanf arguments + +--- + lib/dump.c | 6 +++--- + lib/sysfs.c | 2 +- + ls-kernel.c | 2 +- + 3 files changed, 5 insertions(+), 5 deletions(-) + +diff --git a/lib/dump.c b/lib/dump.c +index 59cf7ed..778d2ec 100644 +--- a/lib/dump.c ++++ b/lib/dump.c +@@ -60,7 +60,7 @@ dump_init(struct pci_access *a) + FILE *f; + char buf[256]; + struct pci_dev *dev = NULL; +- int len, mn, bn, dn, fn, i, j; ++ unsigned int len, mn, bn, dn, fn, i, j; + + if (!name) + a->error("dump: File name not given."); +@@ -79,8 +79,8 @@ dump_init(struct pci_access *a) + *z-- = 0; + len = z - buf + 1; + mn = 0; +- if (dump_validate(buf, "##:##.# ") && sscanf(buf, "%x:%x.%d", &bn, &dn, &fn) == 3 || +- dump_validate(buf, "####:##:##.# ") && sscanf(buf, "%x:%x:%x.%d", &mn, &bn, &dn, &fn) == 4) ++ if (dump_validate(buf, "##:##.# ") && sscanf(buf, "%x:%x.%u", &bn, &dn, &fn) == 3 || ++ dump_validate(buf, "####:##:##.# ") && sscanf(buf, "%x:%x:%x.%u", &mn, &bn, &dn, &fn) == 4) + { + dev = pci_get_dev(a, mn, bn, dn, fn); + dump_alloc_data(dev, 256); +diff --git a/lib/sysfs.c b/lib/sysfs.c +index fb64241..df39b36 100644 +--- a/lib/sysfs.c ++++ b/lib/sysfs.c +@@ -212,7 +212,7 @@ static void sysfs_scan(struct pci_access *a) + continue; + + d = pci_alloc_dev(a); +- if (sscanf(entry->d_name, "%x:%x:%x.%d", &dom, &bus, &dev, &func) < 4) ++ if (sscanf(entry->d_name, "%x:%x:%x.%u", &dom, &bus, &dev, &func) < 4) + a->error("sysfs_scan: Couldn't parse entry name %s", entry->d_name); + + /* Ensure kernel provided domain that fits in a signed integer */ +diff --git a/ls-kernel.c b/ls-kernel.c +index ecacd0e..4199402 100644 +--- a/ls-kernel.c ++++ b/ls-kernel.c +@@ -156,7 +156,7 @@ show_kernel_init(void) + *c++ = 0; + + e = xmalloc(sizeof(*e) + strlen(line)); +- if (sscanf(c, "%i%i%i%i%i%i", ++ if (sscanf(c, "%u%u%u%u%u%u", + &e->vendor, &e->device, + &e->subvendor, &e->subdevice, + &e->class, &e->class_mask) != 6) +-- +2.28.0 + |
