linux/net
Ilpo Järvinen 5ea3a74806 [TCP]: Prevent sending past receiver window with TSO (at last skb)
With TSO it was possible to send past the receiver window when the skb
to be sent was the last in the write queue while the receiver window
is the limiting factor. One can notice that there's a loophole in the
tcp_mss_split_point that lacked a receiver window check for the
tcp_write_queue_tail() if also cwnd was smaller than the full skb.

Noticed by Thomas Gleixner <tglx@linutronix.de> in form of "Treason
uncloaked! Peer ... shrinks window .... Repaired."  messages (the peer
didn't actually shrink its window as the message suggests, we had just
sent something past it without a permission to do so).

Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@helsinki.fi>
Tested-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-03-11 17:55:27 -07:00
..
9p net/9p/trans_virtio.c: kmalloc() enough memory 2008-02-19 16:25:30 -08:00
802
8021q [8021Q]: Use proc_create() to setup ->proc_fops first 2008-02-28 14:14:58 -08:00
appletalk [APPLETALK]: Use proc_create() to setup ->proc_fops first 2008-02-28 12:53:32 -08:00
atm [ATM]: Use proc_create() to setup ->proc_fops first 2008-02-28 13:55:45 -08:00
ax25 [AX25] ax25_out: check skb for NULL in ax25_kick() 2008-02-17 22:31:19 -08:00
bluetooth bluetooth: make bnep_sock_cleanup() return void 2008-03-05 18:47:40 -08:00
bridge [NETFILTER]: fix ebtable targets return 2008-02-23 20:22:27 -08:00
can
core [NETPOLL]: Revert two bogus cleanups that broke netconsole. 2008-03-04 12:28:49 -08:00
dccp
decnet [DECNET] ROUTE: remove unecessary alignment 2008-02-07 23:29:57 -08:00
econet
ethernet
ieee80211
ipv4 [TCP]: Prevent sending past receiver window with TSO (at last skb) 2008-03-11 17:55:27 -07:00
ipv6 [ESP]: Add select on AUTHENC 2008-03-04 14:29:21 -08:00
ipx [IPX]: Use proc_create() to setup ->proc_fops first 2008-02-28 14:06:14 -08:00
irda [IRDA]: Use proc_create() to setup ->proc_fops first 2008-02-29 10:34:45 -08:00
iucv iucv: fix build error on !SMP 2008-03-03 12:12:33 -08:00
key [AF_KEY]: Fix oops by converting to proc_net_*(). 2008-02-26 22:23:31 -08:00
lapb
llc [LLC]: Use proc_create() to setup ->proc_fops first 2008-02-28 14:08:54 -08:00
mac80211 rc80211-pid: fix rate adjustment 2008-03-04 18:36:35 -05:00
netfilter [NETFILTER]: nf_queue: don't return error when unregistering a non-existant handler 2008-03-10 16:45:05 -07:00
netlabel [NETLABEL]: Move some initialization code into __init section. 2008-02-17 22:33:57 -08:00
netlink [GENETLINK]: Relax dances with genl_lock. 2008-02-12 22:16:33 -08:00
netrom
packet
rfkill PM: Introduce PM_EVENT_HIBERNATE callback state 2008-02-23 10:40:04 -08:00
rose
rxrpc RxRPC: fix rxrpc_recvmsg()'s returning of msg_name 2008-03-05 18:53:55 -08:00
sched [PKT_SCHED] ematch: Fix build warning. 2008-02-10 03:48:15 -08:00
sctp [SCTP]: Bring MAX_BURST socket option into ietf API extension compliance 2008-03-05 13:44:46 -08:00
sunrpc [SUNRPC]: Use proc_create() to setup ->proc_fops first 2008-02-28 14:00:59 -08:00
tipc tipc: fix integer as NULL pointer sparse warnings in tipc 2008-02-24 18:38:31 -08:00
unix Introduce path_put() 2008-02-14 21:13:33 -08:00
wanrouter [WANROUTER]: Use proc_create() to setup ->proc_fops first 2008-02-28 14:15:56 -08:00
wireless
x25 [X25]: Use proc_create() to setup ->proc_fops first 2008-02-28 14:16:33 -08:00
xfrm [XFRM]: Fix ordering issue in xfrm_dst_hash_transfer(). 2008-02-17 23:29:30 -08:00
compat.c
Kconfig namespaces: mark NET_NS with "depends on NAMESPACES" 2008-02-08 09:22:23 -08:00
Makefile
nonet.c
socket.c [NET]: Make sure sockets implement splice_read 2008-02-15 02:35:45 -08:00
sysctl_net.c
TUNABLE