]> git.pld-linux.org Git - packages/kernel.git/commitdiff
- patch fixing IPv6 address autoconfiguration
authorJacek Konieczny <jajcus@pld-linux.org>
Sat, 10 Jun 2000 08:12:13 +0000 (08:12 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
Changed files:
    linux-ipv6-addrconf.patch -> 1.1

linux-ipv6-addrconf.patch [new file with mode: 0644]

diff --git a/linux-ipv6-addrconf.patch b/linux-ipv6-addrconf.patch
new file mode 100644 (file)
index 0000000..4296db7
--- /dev/null
@@ -0,0 +1,46 @@
+
+ This patch fixes problem with disapearing all-nodes (ff02::1) multicast
+ address after setting interface down and up. When all-nodes address is not
+ present IPv6 address autoconfiguration doesn't work.
+
+       Jacek Konieczny <jajcus@pld.org.pl>
+
+diff -durN linux-2.2.16.orig/net/ipv6/addrconf.c linux/net/ipv6/addrconf.c
+--- linux-2.2.16.orig/net/ipv6/addrconf.c      Tue Jan  4 19:12:27 2000
++++ linux/net/ipv6/addrconf.c  Fri Jun  9 20:37:48 2000
+@@ -255,8 +255,6 @@
+               idev = ipv6_add_dev(dev);
+               if (idev == NULL)
+                       return NULL;
+-              if (dev->flags&IFF_UP)
+-                      ipv6_mc_up(idev);
+       }
+       return idev;
+ }
+@@ -1045,6 +1043,8 @@
+               return;
+       }
++      ipv6_mc_up(idev);
++              
+       addrconf_lock();
+       ifp = ipv6_add_addr(idev, &addr, IFA_HOST);
+@@ -1084,6 +1084,8 @@
+       if (idev == NULL)
+               return;
++      ipv6_mc_up(idev);
++      
+ #ifdef CONFIG_IPV6_EUI64
+       memset(&addr, 0, sizeof(struct in6_addr));
+@@ -1120,6 +1122,8 @@
+               printk(KERN_DEBUG "init sit: add_dev failed\n");
+               return;
+       }
++
++      ipv6_mc_up(idev);
+       sit_add_v4_addrs(idev);
This page took 0.089558 seconds and 4 git commands to generate.