diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2008-04-28 12:44:11 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-04-28 12:44:11 -0400 |
commit | 77a50df2b14c8d3ee3c58c21c4a0e0157570df09 (patch) | |
tree | 0e324a712e5e768c8353b0b5ba6ddc31095479f0 /net/ipv6 | |
parent | 96fffeb4b413a4f8f65bb627d59b7dfc97ea0b39 (diff) | |
parent | 358c12953b88c5a06a57c33eb27c753b2e7934d1 (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:
iwlwifi: Allow building iwl3945 without iwl4965.
wireless: Fix compile error with wifi & leds
tcp: Fix slab corruption with ipv6 and tcp6fuzz
ipv4/ipv6 compat: Fix SSM applications on 64bit kernels.
[IPSEC]: Use digest_null directly for auth
sunrpc: fix missing kernel-doc
can: Fix copy_from_user() results interpretation
Revert "ipv6: Fix typo in net/ipv6/Kconfig"
tipc: endianness annotations
ipv6: result of csum_fold() is already 16bit, no need to cast
[XFRM] AUDIT: Fix flowlabel text format ambibuity.
Diffstat (limited to 'net/ipv6')
-rw-r--r-- | net/ipv6/Kconfig | 2 | ||||
-rw-r--r-- | net/ipv6/ip6mr.c | 2 | ||||
-rw-r--r-- | net/ipv6/ipv6_sockglue.c | 5 |
3 files changed, 7 insertions, 2 deletions
diff --git a/net/ipv6/Kconfig b/net/ipv6/Kconfig index b2c9becc02e8..42814a2ec9d7 100644 --- a/net/ipv6/Kconfig +++ b/net/ipv6/Kconfig | |||
@@ -167,7 +167,7 @@ config IPV6_SIT | |||
167 | Tunneling means encapsulating data of one protocol type within | 167 | Tunneling means encapsulating data of one protocol type within |
168 | another protocol and sending it over a channel that understands the | 168 | another protocol and sending it over a channel that understands the |
169 | encapsulating protocol. This driver implements encapsulation of IPv6 | 169 | encapsulating protocol. This driver implements encapsulation of IPv6 |
170 | into IPv4 packets. This is useful if you want to connect to IPv6 | 170 | into IPv4 packets. This is useful if you want to connect two IPv6 |
171 | networks over an IPv4-only path. | 171 | networks over an IPv4-only path. |
172 | 172 | ||
173 | Saying M here will produce a module called sit.ko. If unsure, say Y. | 173 | Saying M here will produce a module called sit.ko. If unsure, say Y. |
diff --git a/net/ipv6/ip6mr.c b/net/ipv6/ip6mr.c index c8c6e33d1163..2de3c464fe75 100644 --- a/net/ipv6/ip6mr.c +++ b/net/ipv6/ip6mr.c | |||
@@ -358,7 +358,7 @@ static int pim6_rcv(struct sk_buff *skb) | |||
358 | if (pim->type != ((PIM_VERSION << 4) | PIM_REGISTER) || | 358 | if (pim->type != ((PIM_VERSION << 4) | PIM_REGISTER) || |
359 | (pim->flags & PIM_NULL_REGISTER) || | 359 | (pim->flags & PIM_NULL_REGISTER) || |
360 | (ip_compute_csum((void *)pim, sizeof(*pim)) != 0 && | 360 | (ip_compute_csum((void *)pim, sizeof(*pim)) != 0 && |
361 | (u16)csum_fold(skb_checksum(skb, 0, skb->len, 0)))) | 361 | csum_fold(skb_checksum(skb, 0, skb->len, 0)))) |
362 | goto drop; | 362 | goto drop; |
363 | 363 | ||
364 | /* check if the inner packet is destined to mcast group */ | 364 | /* check if the inner packet is destined to mcast group */ |
diff --git a/net/ipv6/ipv6_sockglue.c b/net/ipv6/ipv6_sockglue.c index 06de9d0e1f6b..db6fdc1498aa 100644 --- a/net/ipv6/ipv6_sockglue.c +++ b/net/ipv6/ipv6_sockglue.c | |||
@@ -52,6 +52,7 @@ | |||
52 | #include <net/udp.h> | 52 | #include <net/udp.h> |
53 | #include <net/udplite.h> | 53 | #include <net/udplite.h> |
54 | #include <net/xfrm.h> | 54 | #include <net/xfrm.h> |
55 | #include <net/compat.h> | ||
55 | 56 | ||
56 | #include <asm/uaccess.h> | 57 | #include <asm/uaccess.h> |
57 | 58 | ||
@@ -779,6 +780,10 @@ int compat_ipv6_setsockopt(struct sock *sk, int level, int optname, | |||
779 | if (level != SOL_IPV6) | 780 | if (level != SOL_IPV6) |
780 | return -ENOPROTOOPT; | 781 | return -ENOPROTOOPT; |
781 | 782 | ||
783 | if (optname >= MCAST_JOIN_GROUP && optname <= MCAST_MSFILTER) | ||
784 | return compat_mc_setsockopt(sk, level, optname, optval, optlen, | ||
785 | ipv6_setsockopt); | ||
786 | |||
782 | err = do_ipv6_setsockopt(sk, level, optname, optval, optlen); | 787 | err = do_ipv6_setsockopt(sk, level, optname, optval, optlen); |
783 | #ifdef CONFIG_NETFILTER | 788 | #ifdef CONFIG_NETFILTER |
784 | /* we need to exclude all possible ENOPROTOOPTs except default case */ | 789 | /* we need to exclude all possible ENOPROTOOPTs except default case */ |