--- /dev/null
+From stable-bounces@linux.kernel.org Thu Jun 22 01:43:03 2006
+Date: Thu, 22 Jun 2006 01:42:13 -0700 (PDT)
+From: David Miller <davem@davemloft.net>
+To: stable@kernel.org
+Cc:
+Subject: IPV6 ADDRCONF: Fix default source address selection without CONFIG_IPV6_PRIVACY
+
+From: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
+
+We need to update hiscore.rule even if we don't enable CONFIG_IPV6_PRIVACY,
+because we have more less significant rule; longest match.
+
+Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+Signed-off-by: Chris Wright <chrisw@sous-sol.org>
+---
+
+---
+ net/ipv6/addrconf.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+--- linux-2.6.16.22.orig/net/ipv6/addrconf.c
++++ linux-2.6.16.22/net/ipv6/addrconf.c
+@@ -1065,6 +1065,9 @@ int ipv6_dev_get_saddr(struct net_device
+ if (hiscore.attrs & IPV6_SADDR_SCORE_PRIVACY)
+ continue;
+ }
++#else
++ if (hiscore.rule < 7)
++ hiscore.rule++;
+ #endif
+ /* Rule 8: Use longest matching prefix */
+ if (hiscore.rule < 8) {
--- /dev/null
+From stable-bounces@linux.kernel.org Thu Jun 22 01:39:43 2006
+Date: Thu, 22 Jun 2006 01:39:05 -0700 (PDT)
+From: David Miller <davem@davemloft.net>
+To: stable@kernel.org
+Cc:
+Subject: IPV6: Fix source address selection.
+
+From: \e$,1 aukasz Stelmach <stlman@poczta.fm>
+
+Two additional labels (RFC 3484, sec. 10.3) for IPv6 addreses
+are defined to make a distinction between global unicast
+addresses and Unique Local Addresses (fc00::/7, RFC 4193) and
+Teredo (2001::/32, RFC 4380). It is necessary to avoid attempts
+of connection that would either fail (eg. fec0:: to 2001:feed::)
+or be sub-optimal (2001:0:: to 2001:feed::).
+
+Signed-off-by: \e$,1 aukasz Stelmach <stlman@poczta.fm>
+Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+Signed-off-by: Chris Wright <chrisw@sous-sol.org>
+---
+
+---
+ net/ipv6/addrconf.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+--- linux-2.6.16.22.orig/net/ipv6/addrconf.c
++++ linux-2.6.16.22/net/ipv6/addrconf.c
+@@ -852,6 +852,8 @@ static int inline ipv6_saddr_label(const
+ * 2002::/16 2
+ * ::/96 3
+ * ::ffff:0:0/96 4
++ * fc00::/7 5
++ * 2001::/32 6
+ */
+ if (type & IPV6_ADDR_LOOPBACK)
+ return 0;
+@@ -859,8 +861,12 @@ static int inline ipv6_saddr_label(const
+ return 3;
+ else if (type & IPV6_ADDR_MAPPED)
+ return 4;
++ else if (addr->s6_addr32[0] == htonl(0x20010000))
++ return 6;
+ else if (addr->s6_addr16[0] == htons(0x2002))
+ return 2;
++ else if ((addr->s6_addr[0] & 0xfe) == 0xfc)
++ return 5;
+ return 1;
+ }
+
--- /dev/null
+From 2fb0b930b535b5e7ae8a5c8880d8ba941e508421 Mon Sep 17 00:00:00 2001
+From: Chris Wright <chrisw@sous-sol.org>
+Subject: revert PARPORT_SERIAL should depend on SERIAL_8250_PCI patch
+
+Should have not been applied to 2.6.16
+
+Signed-off-by: Chris Wright <chrisw@sous-sol.org>
+---
+
+ drivers/parport/Kconfig | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- linux-2.6.16.22.orig/drivers/parport/Kconfig
++++ linux-2.6.16.22/drivers/parport/Kconfig
+@@ -48,7 +48,7 @@ config PARPORT_PC
+
+ config PARPORT_SERIAL
+ tristate "Multi-IO cards (parallel and serial)"
+- depends on SERIAL_8250_PCI && PARPORT_PC && PCI
++ depends on SERIAL_8250 && PARPORT_PC && PCI
+ help
+ This adds support for multi-IO PCI cards that have parallel and
+ serial ports. You should say Y or M here. If you say M, the module
--- /dev/null
+ipv6-fix-source-address-selection.patch
+ipv6-addrconf-fix-default-source-address-selection-without-config_ipv6_privacy.patch
+serial-parport_serial-should-depend-on-serial_8250_pci.patch