tmp_suning_uos_patched/net
Gerrit Renker 73f18fdbca dccp: Bug-Fix - AWL was never updated
The AWL lower Ack validity window advances in proportion to GSS, the greatest
sequence number sent. Updating AWL other than at connection setup (in the
DCCP-Request sent by dccp_v{4,6}_connect()) was missing in the DCCP code.

This bug lead to syslog messages such as

 "kernel: dccp_check_seqno: DCCP: Step 6 failed for DATAACK packet, [...] 
  P.ackno exists or LAWL(82947089) <= P.ackno(82948208)
                                   <= S.AWH(82948728), sending SYNC..."

The difference between AWL/AWH here is 1639 packets, while the expected value
(the Sequence Window) would have been 100 (the default).  A closer look showed
that LAWL = AWL = 82947089 equalled the ISS on the Response.

The patch now updates AWL with each increase of GSS.


Further changes:
----------------
The patch also enforces more stringent checks on the ISS sequence number:

 * AWL is initialised to ISS at connection setup and remains at this value;
 * AWH is then always set to GSS (via dccp_update_gss());
 * so on the first Request: AWL =      AWH = ISS,
   and on the n-th Request: AWL = ISS, AWH = ISS + n.

As a consequence, only Response packets that refer to Requests sent by this
host will pass, all others are discarded. This is the intention and in effect 
implements the initial adjustments for AWL as specified in RFC 4340, 7.5.1.

Signed-off-by: Gerrit Renker <gerrit@erg.abdn.ac.uk>   
Acked-by: Ian McDonald <ian.mcdonald@jandi.co.nz>
2008-07-26 11:59:10 +01:00
..
9p
802
8021q netdev: Handle ->addr_list_lock just like ->_xmit_lock for lockdep. 2008-07-22 14:16:42 -07:00
appletalk net: convert BUG_TRAP to generic WARN_ON 2008-07-25 21:43:18 -07:00
atm
ax25
bluetooth bluetooth: remove improper bluetooth class symlinks. 2008-07-21 21:54:51 -07:00
bridge
can
core net: convert BUG_TRAP to generic WARN_ON 2008-07-25 21:43:18 -07:00
dccp dccp: Bug-Fix - AWL was never updated 2008-07-26 11:59:10 +01:00
decnet
econet
ethernet
ieee80211
ipv4 syncookies: Make sure ECN is disabled 2008-07-26 02:21:54 -07:00
ipv6 syncookies: Make sure ECN is disabled 2008-07-26 02:21:54 -07:00
ipx
irda Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 2008-07-20 17:43:29 -07:00
iucv iucv: Fix bad merging. 2008-07-20 10:18:44 -07:00
key net: convert BUG_TRAP to generic WARN_ON 2008-07-25 21:43:18 -07:00
lapb
llc
mac80211 net_sched: Add qdisc_enqueue wrapper 2008-07-20 00:08:04 -07:00
netfilter netfilter: nf_conntrack_sctp: fix sparse warnings 2008-07-21 10:11:02 -07:00
netlabel
netlink net: convert BUG_TRAP to generic WARN_ON 2008-07-25 21:43:18 -07:00
netrom netdev: Handle ->addr_list_lock just like ->_xmit_lock for lockdep. 2008-07-22 14:16:42 -07:00
packet net: convert BUG_TRAP to generic WARN_ON 2008-07-25 21:43:18 -07:00
rfkill
rose netdev: Handle ->addr_list_lock just like ->_xmit_lock for lockdep. 2008-07-22 14:16:42 -07:00
rxrpc net: convert BUG_TRAP to generic WARN_ON 2008-07-25 21:43:18 -07:00
sched Revert "pkt_sched: sch_sfq: dump a real number of flows" 2008-07-26 02:28:09 -07:00
sctp net: convert BUG_TRAP to generic WARN_ON 2008-07-25 21:43:18 -07:00
sunrpc Merge branch 'for-2.6.27' of git://linux-nfs.org/~bfields/linux 2008-07-20 21:21:46 -07:00
tipc
unix net: convert BUG_TRAP to generic WARN_ON 2008-07-25 21:43:18 -07:00
wanrouter
wireless
x25
xfrm net: convert BUG_TRAP to generic WARN_ON 2008-07-25 21:43:18 -07:00
compat.c net: Use standard structures for generic socket address structures. 2008-07-19 22:35:47 -07:00
Kconfig
Makefile
nonet.c
socket.c net: Use standard structures for generic socket address structures. 2008-07-19 22:35:47 -07:00
sysctl_net.c
TUNABLE