android_kernel_samsung_msm8976/include/net
Herbert Xu e0409e42a1 xfrm: Reinject transport-mode packets through tasklet
commit acf568ee859f098279eadf551612f103afdacb4e upstream.

This is an old bugbear of mine:

https://www.mail-archive.com/netdev@vger.kernel.org/msg03894.html

By crafting special packets, it is possible to cause recursion
in our kernel when processing transport-mode packets at levels
that are only limited by packet size.

The easiest one is with DNAT, but an even worse one is where
UDP encapsulation is used in which case you just have to insert
an UDP encapsulation header in between each level of recursion.

This patch avoids this problem by reinjecting tranport-mode packets
through a tasklet.

Fixes: b05e106698 ("[IPV4/6]: Netfilter IPsec input hooks")
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com>
[bwh: Backported to 3.2:
 - netfilter finish callbacks only receive an sk_buff pointer
 - Adjust context]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
2019-07-27 21:46:20 +02:00
..
9p
bluetooth Bluetooth: Return the correct address type for L2CAP sockets 2015-04-20 13:26:42 +05:30
caif
irda
iucv
netfilter netfilter: Changes to handle segmentation in SIP ALG 2015-01-27 15:47:39 -08:00
netns Merge remote-tracking branch 'f2fs/linux-3.10.y' into HEAD 2017-04-18 17:02:28 +02:00
nfc
phonet
sctp sctp: potential read out of bounds in sctp_ulpevent_type_enabled() 2019-07-27 21:44:28 +02:00
tc_act
act_api.h
activity_stats.h
addrconf.h ipv6: clean up anycast when an interface is destroyed 2015-03-19 15:00:11 -07:00
af_ieee802154.h
af_rxrpc.h
af_unix.h This is the 3.10.99 stable release 2017-04-18 17:17:46 +02:00
ah.h
arp.h
atmclip.h
ax25.h
ax88796.h
cfg80211-wext.h
cfg80211.h cfg80211: Define macro to indicate support for cfg80211 abort scan api 2016-10-07 18:11:15 +05:30
checksum.h
cipso_ipv4.h netlabel: out of bound access in cipso_v4_validate() 2019-07-27 21:43:04 +02:00
cls_cgroup.h
cnss.h net: cnss: refactor PM QoS request wrapper API 2016-08-10 18:36:16 +05:30
cnss_prealloc.h Import latest Samsung release 2017-04-18 03:43:52 +02:00
codel.h
compat.h
datalink.h
dcbevent.h
dcbnl.h
dn.h
dn_dev.h
dn_fib.h
dn_neigh.h
dn_nsp.h
dn_route.h
dsa.h
dsfield.h
dst.h
dst_ops.h
esp.h
ethoc.h
fib_rules.h
firewire.h
flow.h ipv4, fib: pass LOOPBACK_IFINDEX instead of 0 to flowi4_iif 2015-09-16 18:20:08 +05:30
flow_keys.h
garp.h
gen_stats.h
genetlink.h
gre.h
gro_cells.h
icmp.h
ieee80211_radiotap.h
ieee802154.h
ieee802154_netdev.h
if_inet6.h ipv6: move DAD and addrconf_verify processing to workqueue 2019-07-27 21:42:27 +02:00
inet6_connection_sock.h
inet6_hashtables.h
inet_common.h net: avoid NULL deref in inet_ctl_sock_destroy() 2015-12-09 13:40:06 -05:00
inet_connection_sock.h
inet_ecn.h
inet_frag.h
inet_hashtables.h
inet_sock.h
inet_timewait_sock.h
inetpeer.h
ip.h Merge remote-tracking branch 'f2fs/linux-3.10.y' into HEAD 2017-04-18 17:02:28 +02:00
ip6_checksum.h
ip6_fib.h ipv6: fix sparse warning on rt6i_node 2019-07-27 21:45:09 +02:00
ip6_route.h ipv6: Add rt6_get_cookie() function 2019-07-27 21:45:03 +02:00
ip6_tunnel.h ip6_tunnel: Clear IP6CB in ip6tunnel_xmit() 2019-07-27 21:42:30 +02:00
ip_fib.h ipv4: use separate genid for next hop exceptions 2019-07-27 21:45:24 +02:00
ip_tunnels.h
ip_vs.h
ipcomp.h
ipconfig.h
ipv6.h net: ping: do not abuse udp_poll() 2019-07-27 21:44:33 +02:00
ipx.h
iw_handler.h wext: handle NULL extra data in iwe_stream_add_point better 2019-07-27 21:44:25 +02:00
lapb.h
lib80211.h
llc.h
llc_c_ac.h
llc_c_ev.h
llc_c_st.h
llc_conn.h
llc_if.h
llc_pdu.h
llc_s_ac.h
llc_s_ev.h
llc_s_st.h
llc_sap.h
mac80211.h
mac802154.h
mip6.h
mld.h
mrp.h
ndisc.h ipv6: don't call fib6_run_gc() until routing is ready 2019-07-27 21:42:27 +02:00
neighbour.h
net_namespace.h ipv4: use separate genid for next hop exceptions 2019-07-27 21:45:24 +02:00
net_ratelimit.h
netdma.h
netevent.h
netlabel.h
netlink.h
netprio_cgroup.h
netrom.h
nexthop.h
nl802154.h
p8022.h
ping.h
pkt_cls.h
pkt_sched.h
protocol.h
psnap.h
raw.h
rawv6.h
red.h
regulatory.h
request_sock.h
rose.h
route.h
rtnetlink.h
sch_generic.h
scm.h Import latest Samsung release 2017-04-18 03:43:52 +02:00
secure_seq.h
slhc_vj.h
snmp.h
sock.h net: avoid sk_forward_alloc overflows 2019-07-27 21:42:37 +02:00
stp.h
tcp.h tcp: fix tcp_mtu_probe() vs highest_sack 2019-07-27 21:45:20 +02:00
tcp_memcontrol.h
tcp_states.h
timewait_sock.h
transp_v6.h
udp.h
udplite.h
wext.h
wimax.h
wpan-phy.h
x25.h
x25device.h
xfrm.h xfrm: Reinject transport-mode packets through tasklet 2019-07-27 21:46:20 +02:00