Fixed MTU problem
authorAndy Bavier <acb@cs.princeton.edu>
Mon, 10 Mar 2008 21:28:47 +0000 (21:28 +0000)
committerAndy Bavier <acb@cs.princeton.edu>
Mon, 10 Mar 2008 21:28:47 +0000 (21:28 +0000)
linux-2.6-593-egre.patch

index 78c8b3e..9d02811 100644 (file)
@@ -2122,7 +2122,7 @@ diff -Nurp linux-2.6.22-592/net/ipv4/ip_gre.c linux-2.6.22-593/net/ipv4/ip_gre.c
  static int ipgre_tunnel_init(struct net_device *dev)
  {
        struct net_device *tdev = NULL;
-@@ -1172,8 +1486,10 @@ static int ipgre_tunnel_init(struct net_
+@@ -1172,8 +1486,12 @@ static int ipgre_tunnel_init(struct net_
        tunnel->dev = dev;
        strcpy(tunnel->parms.name, dev->name);
  
@@ -2131,6 +2131,8 @@ diff -Nurp linux-2.6.22-592/net/ipv4/ip_gre.c linux-2.6.22-593/net/ipv4/ip_gre.c
 +      if (tunnel->parms.proto_type != ETH_P_ETH) {
 +              memcpy(dev->dev_addr, &tunnel->parms.iph.saddr, 4);
 +              memcpy(dev->broadcast, &tunnel->parms.iph.daddr, 4);
++      } else {
++              addend += ETH_HLEN;
 +      }
  
        /* Guess output device to choose reasonable mtu and hard_header_len */