[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[tyndur-devel] [PATCH] cdi: Pufferüberlauf in pci.c gefixt



! cdi: Beim Einlesen eines PCI-Geräts sind ein paar Bytes zu viel
  gelesen worden, in denen dann zufälliges Zeug steht. Manchmal gibt
  das viel rot, weil irgendein Mist gemappt wird.

Signed-off-by: Kevin Wolf <kevin@xxxxxxxxxx>
---
 src/modules/cdi/lib/pci.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/src/modules/cdi/lib/pci.c b/src/modules/cdi/lib/pci.c
index 145942c..9c2e47f 100644
--- a/src/modules/cdi/lib/pci.c
+++ b/src/modules/cdi/lib/pci.c
@@ -109,7 +109,8 @@ void cdi_pci_get_all_devices(cdi_list_t list)
         }
 
         if (devs->type == CDI_PCI) {
-            cdi_list_push(list, read_pci_device(devs->bus_data, size));
+            cdi_list_push(list, read_pci_device(devs->bus_data,
+                devs->bus_data_size));
         }
         ret -= size;
         data += size;
-- 
1.6.0.2