patch-2.2.11 linux/net/ipv4/devinet.c
Next file: linux/net/ipv4/icmp.c
Previous file: linux/net/ipv4/arp.c
Back to the patch index
Back to the overall index
- Lines: 43
- Date:
Mon Aug 9 12:05:10 1999
- Orig file:
v2.2.10/linux/net/ipv4/devinet.c
- Orig date:
Mon May 10 09:55:25 1999
diff -u --recursive --new-file v2.2.10/linux/net/ipv4/devinet.c linux/net/ipv4/devinet.c
@@ -1,7 +1,7 @@
/*
* NET3 IP device support routines.
*
- * Version: $Id: devinet.c,v 1.28 1999/05/08 20:00:16 davem Exp $
+ * Version: $Id: devinet.c,v 1.28.2.2 1999/08/07 10:56:18 davem Exp $
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
@@ -100,6 +100,9 @@
{
struct in_device *in_dev;
+ if (dev->mtu < 68)
+ return NULL;
+
in_dev = kmalloc(sizeof(*in_dev), GFP_KERNEL);
if (!in_dev)
return NULL;
@@ -649,9 +652,10 @@
for_primary_ifa(in_dev) {
if (ifa->ifa_scope > scope)
continue;
- addr = ifa->ifa_local;
if (!dst || inet_ifa_match(dst, ifa))
- return addr;
+ return ifa->ifa_local;
+ if (!addr)
+ addr = ifa->ifa_local;
} endfor_ifa(in_dev);
if (addr || scope >= RT_SCOPE_LINK)
@@ -721,6 +725,10 @@
case NETDEV_DOWN:
ip_mc_down(in_dev);
break;
+ case NETDEV_CHANGEMTU:
+ if (dev->mtu >= 68)
+ break;
+ /* MTU falled under minimal IP mtu. Disable IP. */
case NETDEV_UNREGISTER:
inetdev_destroy(in_dev);
break;
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)