diff options
| author | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-04-30 11:14:42 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-04-30 11:14:42 -0400 |
| commit | 152a6a9da1bd3ed5dcbbf6ff17c7ebde0eb9a754 (patch) | |
| tree | cad354802870b7d4bc0402a6a6da44bd1f610bc6 /net/ipv6 | |
| parent | cd9bb7e7367c03400d6e918fd3502820fc3b9084 (diff) | |
| parent | 80787ebc2bbd8e675d8b9ff8cfa40f15134feebe (diff) | |
Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6: (21 commits)
[IPV4] SNMP: Support OutMcastPkts and OutBcastPkts
[IPV4] SNMP: Support InMcastPkts and InBcastPkts
[IPV4] SNMP: Support InTruncatedPkts
[IPV4] SNMP: Support InNoRoutes
[SNMP]: Add definitions for {In,Out}BcastPkts
[TCP] FRTO: RFC4138 allows Nagle override when new data must be sent
[TCP] FRTO: Delay skb available check until it's mandatory
[XFRM]: Restrict upper layer information by bundle.
[TCP]: Catch skb with S+L bugs earlier
[PATCH] INET : IPV4 UDP lookups converted to a 2 pass algo
[L2TP]: Add the ability to autoload a pppox protocol module.
[SKB]: Introduce skb_queue_walk_safe()
[AF_IUCV/IUCV]: smp_call_function deadlock
[IPV6]: Fix slab corruption running ip6sic
[TCP]: Update references in two old comments
[XFRM]: Export SPD info
[IPV6]: Track device renames in snmp6.
[SCTP]: Fix sctp_getsockopt_local_addrs_old() to use local storage.
[NET]: Remove NETIF_F_INTERNAL_STATS, default to internal stats.
[NETPOLL]: Remove CONFIG_NETPOLL_RX
...
Diffstat (limited to 'net/ipv6')
| -rw-r--r-- | net/ipv6/addrconf.c | 6 | ||||
| -rw-r--r-- | net/ipv6/proc.c | 1 | ||||
| -rw-r--r-- | net/ipv6/xfrm6_tunnel.c | 2 |
3 files changed, 6 insertions, 3 deletions
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c index e04e49373505..3452433cbc96 100644 --- a/net/ipv6/addrconf.c +++ b/net/ipv6/addrconf.c | |||
| @@ -2359,8 +2359,9 @@ static int addrconf_notify(struct notifier_block *this, unsigned long event, | |||
| 2359 | break; | 2359 | break; |
| 2360 | 2360 | ||
| 2361 | case NETDEV_CHANGENAME: | 2361 | case NETDEV_CHANGENAME: |
| 2362 | #ifdef CONFIG_SYSCTL | ||
| 2363 | if (idev) { | 2362 | if (idev) { |
| 2363 | snmp6_unregister_dev(idev); | ||
| 2364 | #ifdef CONFIG_SYSCTL | ||
| 2364 | addrconf_sysctl_unregister(&idev->cnf); | 2365 | addrconf_sysctl_unregister(&idev->cnf); |
| 2365 | neigh_sysctl_unregister(idev->nd_parms); | 2366 | neigh_sysctl_unregister(idev->nd_parms); |
| 2366 | neigh_sysctl_register(dev, idev->nd_parms, | 2367 | neigh_sysctl_register(dev, idev->nd_parms, |
| @@ -2368,8 +2369,9 @@ static int addrconf_notify(struct notifier_block *this, unsigned long event, | |||
| 2368 | &ndisc_ifinfo_sysctl_change, | 2369 | &ndisc_ifinfo_sysctl_change, |
| 2369 | NULL); | 2370 | NULL); |
| 2370 | addrconf_sysctl_register(idev, &idev->cnf); | 2371 | addrconf_sysctl_register(idev, &idev->cnf); |
| 2371 | } | ||
| 2372 | #endif | 2372 | #endif |
| 2373 | snmp6_register_dev(idev); | ||
| 2374 | } | ||
| 2373 | break; | 2375 | break; |
| 2374 | } | 2376 | } |
| 2375 | 2377 | ||
diff --git a/net/ipv6/proc.c b/net/ipv6/proc.c index acb306a5dd56..920dc9cf6a84 100644 --- a/net/ipv6/proc.c +++ b/net/ipv6/proc.c | |||
| @@ -223,6 +223,7 @@ int snmp6_unregister_dev(struct inet6_dev *idev) | |||
| 223 | return -EINVAL; | 223 | return -EINVAL; |
| 224 | remove_proc_entry(idev->stats.proc_dir_entry->name, | 224 | remove_proc_entry(idev->stats.proc_dir_entry->name, |
| 225 | proc_net_devsnmp6); | 225 | proc_net_devsnmp6); |
| 226 | idev->stats.proc_dir_entry = NULL; | ||
| 226 | return 0; | 227 | return 0; |
| 227 | } | 228 | } |
| 228 | 229 | ||
diff --git a/net/ipv6/xfrm6_tunnel.c b/net/ipv6/xfrm6_tunnel.c index 538499a89975..5502cc948dfb 100644 --- a/net/ipv6/xfrm6_tunnel.c +++ b/net/ipv6/xfrm6_tunnel.c | |||
| @@ -261,7 +261,7 @@ static int xfrm6_tunnel_rcv(struct sk_buff *skb) | |||
| 261 | __be32 spi; | 261 | __be32 spi; |
| 262 | 262 | ||
| 263 | spi = xfrm6_tunnel_spi_lookup((xfrm_address_t *)&iph->saddr); | 263 | spi = xfrm6_tunnel_spi_lookup((xfrm_address_t *)&iph->saddr); |
| 264 | return xfrm6_rcv_spi(skb, spi); | 264 | return xfrm6_rcv_spi(skb, spi) > 0 ? : 0; |
| 265 | } | 265 | } |
| 266 | 266 | ||
| 267 | static int xfrm6_tunnel_err(struct sk_buff *skb, struct inet6_skb_parm *opt, | 267 | static int xfrm6_tunnel_err(struct sk_buff *skb, struct inet6_skb_parm *opt, |
