pci-assign: Fix potential read beyond buffer on -EBUSY
authorMarkus Armbruster <armbru@redhat.com>
Wed, 26 Feb 2014 17:30:03 +0000 (10:30 -0700)
committerAlex Williamson <alex.williamson@redhat.com>
Wed, 26 Feb 2014 17:30:03 +0000 (10:30 -0700)
readlink() doesn't write a terminating null byte.
assign_failed_examine() passes the unterminated string to strrchr().
Oops.  Terminate it.

Spotted by Coverity.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
hw/i386/kvm/pci-assign.c

index 968680104bae7ec9ec81d2162b1ce5cb31a6446e..a825871d8a7c687fdf2feb2b1ae97fe17d89ce3b 100644 (file)
@@ -743,6 +743,7 @@ static void assign_failed_examine(AssignedDevice *dev)
         goto fail;
     }
 
+    driver[r] = 0;
     ns = strrchr(driver, '/');
     if (!ns) {
         goto fail;