File netdiag-20060324_array_bounds.patch of Package netdiag

Index: diag/ne2k-pci-diag.c
===================================================================
--- diag/ne2k-pci-diag.c.orig	2005-02-28 03:54:57.000000000 +0100
+++ diag/ne2k-pci-diag.c	2007-02-16 17:05:45.147342024 +0100
@@ -553,7 +553,10 @@ int ne2k_diag(int vend_id, int dev_id, l
 			const char *intr_names[] = {
 				"Rx packet", "Tx done", "Rx error", "Tx error", "Rx overflow",
 				"Counter full", "Transfer done", "Resetting" };
-			for (i = 0; i < 13; i++)
+			/* limitting the loop to 8 elements. we dont have
+			   further entries in the descriptions array.
+			   intr_names. original value: i<13 */
+			for (i = 0; i < 8; i++)
 				if (intr_status & (1<<i))
 					printf("   %s indication.\n", intr_names[i]);
 		}
Index: isa-diag/atp-diag.c
===================================================================
--- isa-diag/atp-diag.c.orig	2005-03-22 01:55:41.000000000 +0100
+++ isa-diag/atp-diag.c	2007-02-16 17:02:29.888003245 +0100
@@ -221,7 +221,7 @@ int main(int argc, char **argv)
     get_node_ID(dev);
 	for (i = 0; i < 6; i++)
 		printf("%02x:", dev->dev_addr[i]);
-	printf("%02x.\n", dev->dev_addr[i]);
+	printf(".\n");
 
 #if 0
 	printf("  Setting filter table to accept-all-multicast.\n");
openSUSE Build Service is sponsored by