patch-2.3.41 linux/net/ipv4/ipconfig.c
Next file: linux/net/ipv4/proc.c
Previous file: linux/net/ipv4/ip_sockglue.c
Back to the patch index
Back to the overall index
- Lines: 16
- Date:
Wed Jan 26 13:29:39 2000
- Orig file:
v2.3.40/linux/net/ipv4/ipconfig.c
- Orig date:
Tue Jan 11 22:31:46 2000
diff -u --recursive --new-file v2.3.40/linux/net/ipv4/ipconfig.c linux/net/ipv4/ipconfig.c
@@ -534,7 +534,14 @@
/* Construct BOOTP header */
b->op = BOOTP_REQUEST;
- b->htype = dev->type;
+ if (dev->type < 256) /* check for false types */
+ b->htype = dev->type;
+ else if (dev->type == ARPHRD_IEEE802_TR) /* fix for token ring */
+ b->htype = ARPHRD_IEEE802;
+ else {
+ printk("Unknown ARP type 0x%04x for device %s\n", dev->type, dev->name);
+ b->htype = dev->type; /* can cause undefined behavior */
+ }
b->hlen = dev->addr_len;
memcpy(b->hw_addr, dev->dev_addr, dev->addr_len);
b->secs = htons(jiffies / HZ);
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)