diff -dur grub-0.97/netboot/main.c src.grub.1130286324.30284.3996273791/grub-0.97/netboot/main.c --- grub-0.97/netboot/main.c 2004-05-21 00:19:33.000000000 +0200 +++ src.grub.1130286324.30284.3996273791/grub-0.97/netboot/main.c 2005-10-26 02:37:58.000000000 +0200 @@ -54,9 +54,9 @@ static int vendorext_isvalid; static unsigned long netmask; -static struct bootpd_t bootp_data; +struct bootpd_t bootp_data; static unsigned long xid; -static unsigned char *end_of_rfc1533 = NULL; +unsigned char *end_of_rfc1533 = NULL; #ifndef NO_DHCP_SUPPORT #endif /* NO_DHCP_SUPPORT */ --- grub-0.97/netboot/natsemi.c 2003-07-09 13:45:38.000000000 +0200 +++ src.grub.1130288662.25040.1734126933/grub-0.97/netboot/natsemi.c 2005-10-26 03:18:03.000000000 +0200 @@ -608,7 +608,7 @@ const char *p) /* Packet */ { u32 status, to, nstype; - u32 tx_status; + volatile u32 tx_status; /* Stop the transmitter */ outl(TxOff, ioaddr + ChipCmd); @@ -647,7 +647,7 @@ to = currticks() + TX_TIMEOUT; - while ((((volatile u32) tx_status=txd.cmdsts) & OWN) && (currticks() < to)) + while (((tx_status=txd.cmdsts) & OWN) && (currticks() < to)) /* wait */ ; if (currticks() >= to) { --- grub-0.97/netboot/sis900.c~ 2003-07-09 13:45:38.000000000 +0200 +++ grub-0.97/netboot/sis900.c 2005-10-26 03:30:39.000000000 +0200 @@ -901,7 +901,7 @@ const char *p) /* Packet */ { u32 status, to, nstype; - u32 tx_status; + volatile u32 tx_status; /* Stop the transmitter */ outl(TxDIS, ioaddr + cr); @@ -940,7 +940,7 @@ to = currticks() + TX_TIMEOUT; - while ((((volatile u32) tx_status=txd.cmdsts) & OWN) && (currticks() < to)) + while (((tx_status=txd.cmdsts) & OWN) && (currticks() < to)) /* wait */ ; if (currticks() >= to) {