kernel-fxtec-pro1x/net/ipv6
Herbert Xu 1ac06e0306 ipsec: Use the correct ip_local_out function
Because the IPsec output function xfrm_output_resume does its
own dst_output call it should always call __ip_local_output
instead of ip_local_output as the latter may invoke dst_output
directly.  Otherwise the return values from nf_hook and dst_output
may clash as they both use the value 1 but for different purposes.

When that clash occurs this can cause a packet to be used after
it has been freed which usually leads to a crash.  Because the
offending value is only returned from dst_output with qdiscs
such as HTB, this bug is normally not visible.

Thanks to Marco Berizzi for his perseverance in tracking this
down.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-05-20 14:32:14 -07:00
..
netfilter netfilter: {nfnetlink,ip,ip6}_queue: fix skb_over_panic when enlarging packets 2008-04-29 03:16:34 -07:00
addrconf.c ipv6 addrconf: Allow infinite prefix lifetime. 2008-05-19 16:56:11 -07:00
addrconf_core.c
addrlabel.c [NET] NETNS: Omit sock->sk_net without CONFIG_NET_NS. 2008-03-26 04:39:55 +09:00
af_inet6.c [IPV6] MROUTE: Support multicast forwarding. 2008-04-05 22:33:38 +09:00
ah6.c [IPSEC]: Fix bogus usage of u64 on input sequence number 2008-02-12 22:50:35 -08:00
anycast.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2008-04-14 02:30:23 -07:00
datagram.c
esp6.c [ESP]: Ensure IV is in linear part of the skb to avoid BUG() due to OOB access 2008-03-27 16:08:03 -07:00
exthdrs.c
exthdrs_core.c
fib6_rules.c [IPV6] FIB_RULE: Sparse: fib6_rules_cleanup() is of void. 2008-04-11 19:47:53 +09:00
icmp.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2008-04-14 02:30:23 -07:00
inet6_connection_sock.c [SOCK]: Add some notes about per-bind-bucket sock lookup. 2008-04-14 02:42:27 -07:00
inet6_hashtables.c [SOCK][NETNS]: Add a struct net argument to sock_prot_inuse_add and _get. 2008-03-31 19:41:46 -07:00
ip6_fib.c [NETNS]: The ip6_fib_timer can work with garbage on net namespace stop. 2008-04-21 14:23:03 -07:00
ip6_flowlabel.c [NETNS][IPV6] flowlabels - make proc per namespace 2008-03-26 16:53:30 -07:00
ip6_input.c [IPV6]: Kill several warnings without CONFIG_IPV6_MROUTE. 2008-04-11 19:47:49 +09:00
ip6_output.c net: Allow netdevices to specify needed head/tailroom 2008-05-12 20:48:31 -07:00
ip6_tunnel.c [IP6TUNNEL]: Allow to create IP6 tunnels in net namespaces. 2008-04-16 01:24:13 -07:00
ip6mr.c ipv6: result of csum_fold() is already 16bit, no need to cast 2008-04-27 14:26:49 -07:00
ipcomp6.c net: Remove unnecessary inclusions of asm/semaphore.h 2008-04-18 22:15:50 -04:00
ipv6_sockglue.c ipv6: Compilation fix for compat MCAST_MSFILTER sockopts. 2008-04-30 14:49:54 -07:00
Kconfig Revert "ipv6: Fix typo in net/ipv6/Kconfig" 2008-04-27 14:26:50 -07:00
Makefile [IPV6] MROUTE: Support multicast forwarding. 2008-04-05 22:33:38 +09:00
mcast.c net: Allow netdevices to specify needed head/tailroom 2008-05-12 20:48:31 -07:00
mip6.c [IPV6] MIP6: Use our standard definitions for paddings. 2008-04-12 13:43:22 +09:00
ndisc.c ndisc: Add missing strategies for per-device retrans timer/reachable time settings. 2008-05-19 16:25:42 -07:00
netfilter.c [NETFILTER]: Add partial checksum validation helper 2008-04-14 11:15:49 +02:00
proc.c ipv6: assign PDE->data before gluing PDE into /proc tree 2008-05-02 02:46:55 -07:00
protocol.c
raw.c net: Allow netdevices to specify needed head/tailroom 2008-05-12 20:48:31 -07:00
reassembly.c netns: Fix reassembly timer to use the right namespace 2008-05-02 17:02:03 -07:00
route.c ipsec: Use the correct ip_local_out function 2008-05-20 14:32:14 -07:00
sit.c sit: Add missing kfree_skb() on pskb_may_pull() failure. 2008-05-08 23:40:26 -07:00
syncookies.c [Syncookies]: Add support for TCP options via timestamps. 2008-04-10 03:12:40 -07:00
sysctl_net_ipv6.c [IPV6] SYSCTL: complete initialization for sysctl table in subsystem code. 2008-03-04 15:18:23 +09:00
tcp_ipv6.c [INET]: Drop the inet_inherit_port() call. 2008-04-17 23:17:34 -07:00
tunnel6.c
udp.c [IPv6]: Change IPv6 unspecified destination address to ::1 for raw and un-connected sockets 2008-04-12 13:43:27 +09:00
udp_impl.h [UDP]: Make full use of proto.h.udp_hash innovation. 2008-03-22 16:51:21 -07:00
udplite.c [UDP]: Remove owner from udp_seq_afinfo. 2008-03-28 18:25:53 -07:00
xfrm6_input.c [XFRM] IPV6: Optimize xfrm6_input_addr(). 2008-03-25 10:23:56 +09:00
xfrm6_mode_beet.c [IPSEC]: Fix BEET output 2008-03-26 16:51:09 -07:00
xfrm6_mode_ro.c
xfrm6_mode_transport.c
xfrm6_mode_tunnel.c [IPSEC]: Fix inter address family IPsec tunnel handling. 2008-03-24 14:51:51 -07:00
xfrm6_output.c [IPSEC]: Fix inter address family IPsec tunnel handling. 2008-03-24 14:51:51 -07:00
xfrm6_policy.c [NET] NETNS: Omit net_device->nd_net without CONFIG_NET_NS. 2008-03-26 04:39:53 +09:00
xfrm6_state.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 2008-03-27 18:48:56 -07:00
xfrm6_tunnel.c [XFRM] IPV6: Optimize __xfrm_tunnel_alloc_spi(). 2008-03-25 10:23:57 +09:00