linux/net
Florian Westphal 7ea851d19b tcp: merge 'init_req' and 'route_req' functions
The Multipath-TCP standard (RFC 8684) says that an MPTCP host should send
a TCP reset if the token in a MP_JOIN request is unknown.

At this time we don't do this, the 3whs completes and the 'new subflow'
is reset afterwards.  There are two ways to allow MPTCP to send the
reset.

1. override 'send_synack' callback and emit the rst from there.
   The drawback is that the request socket gets inserted into the
   listeners queue just to get removed again right away.

2. Send the reset from the 'route_req' function instead.
   This avoids the 'add&remove request socket', but route_req lacks the
   skb that is required to send the TCP reset.

Instead of just adding the skb to that function for MPTCP sake alone,
Paolo suggested to merge init_req and route_req functions.

This saves one indirection from syn processing path and provides the skb
to the merged function at the same time.

'send reset on unknown mptcp join token' is added in next patch.

Suggested-by: Paolo Abeni <pabeni@redhat.com>
Cc: Eric Dumazet <edumazet@google.com>
Signed-off-by: Florian Westphal <fw@strlen.de>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2020-12-03 12:56:03 -08:00
..
6lowpan
9p
802
8021q
appletalk
atm atm: nicstar: Replace in_interrupt() usage 2020-11-18 16:43:55 -08:00
ax25
batman-adv batman-adv: set .owner to THIS_MODULE 2020-11-15 11:43:56 +01:00
bluetooth
bpf
bpfilter
bridge bridge: switchdev: Notify about VLAN protocol changes 2020-12-01 15:21:13 -08:00
caif
can Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2020-11-27 18:25:27 -08:00
ceph
core net: delete __dev_getfirstbyhwtype 2020-12-01 15:40:01 -08:00
dcb
dccp Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2020-11-27 18:25:27 -08:00
decnet treewide: rename nla_strlcpy to nla_strscpy. 2020-11-16 08:08:54 -08:00
dns_resolver
dsa net: dsa: tag_hellcreek: Cleanup includes 2020-11-23 16:57:21 -08:00
ethernet net: datagram: fix some kernel-doc markups 2020-11-17 14:15:03 -08:00
ethtool
hsr
ieee802154 treewide: rename nla_strlcpy to nla_strscpy. 2020-11-16 08:08:54 -08:00
ife
ipv4 tcp: merge 'init_req' and 'route_req' functions 2020-12-03 12:56:03 -08:00
ipv6 tcp: merge 'init_req' and 'route_req' functions 2020-12-03 12:56:03 -08:00
iucv net/af_iucv: set correct sk_protocol for child sockets 2020-11-21 14:43:45 -08:00
kcm
key
l2tp
l3mdev
lapb net/lapb: fix t1 timer handling for LAPB_STATE_0 2020-11-27 17:22:51 -08:00
llc
mac80211 Merge https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2020-11-19 19:08:46 -08:00
mac802154
mpls
mptcp tcp: merge 'init_req' and 'route_req' functions 2020-12-03 12:56:03 -08:00
ncsi
netfilter net: openvswitch: Be liberal in tcp conntrack. 2020-11-20 09:53:48 -08:00
netlabel Merge https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2020-11-19 19:08:46 -08:00
netlink
netrom
nfc treewide: rename nla_strlcpy to nla_strscpy. 2020-11-16 08:08:54 -08:00
nsh
openvswitch Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2020-11-27 18:25:27 -08:00
packet Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2020-11-27 18:25:27 -08:00
phonet
psample
qrtr
rds
rfkill
rose rose: Fix Null pointer dereference in rose_send_frame() 2020-11-20 10:04:58 -08:00
rxrpc rxrpc: Ask the security class how much space to allow in a packet 2020-11-23 19:53:11 +00:00
sched net: sched: remove redundant 'rtnl_held' argument 2020-12-01 11:24:56 -08:00
sctp sctp: Fix some typo 2020-11-23 17:44:11 -08:00
smc net/smc: Add support for obtaining SMCR device list 2020-12-01 17:56:13 -08:00
strparser
sunrpc net: datagram: fix some kernel-doc markups 2020-11-17 14:15:03 -08:00
switchdev
tipc net/tipc: fix all function Return: notation 2020-12-01 15:38:17 -08:00
tls net/tls: make sure tls offload sets salt_size 2020-12-01 17:51:30 -08:00
unix
vmw_vsock Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2020-11-27 18:25:27 -08:00
wireless Some updates: 2020-11-13 12:03:22 -08:00
x25 net/x25: remove x25_kill_by_device() 2020-11-27 17:22:51 -08:00
xdp
xfrm net: xfrm: use core API for updating/providing stats 2020-11-14 17:01:08 -08:00
compat.c
devres.c
Kconfig
Makefile
socket.c net: don't include ethtool.h from netdevice.h 2020-11-23 17:27:04 -08:00
sysctl_net.c