Wei Yongjun
1ac530b355
tcp: missing check ACK flag of received segment in FIN-WAIT-2 state
...
RFC0793 defined that in FIN-WAIT-2 state if the ACK bit is off drop
the segment and return[Page 72]. But this check is missing in function
tcp_timewait_state_process(). This cause the segment with FIN flag but
no ACK has two diffent action:
Case 1:
Node A Node B
<------------- FIN,ACK
(enter FIN-WAIT-1)
ACK ------------->
(enter FIN-WAIT-2)
FIN -------------> discard
(move sk to tw list)
Case 2:
Node A Node B
<------------- FIN,ACK
(enter FIN-WAIT-1)
ACK ------------->
(enter FIN-WAIT-2)
(move sk to tw list)
FIN ------------->
<------------- ACK
This patch fixed the problem.
Signed-off-by: Wei Yongjun <yjwei@cn.fujitsu.com >
Signed-off-by: David S. Miller <davem@davemloft.net >
2009-06-25 20:03:15 -07:00
..
2009-06-12 01:53:09 +02:00
2009-06-03 21:43:26 -07:00
2008-11-25 17:59:27 -08:00
2009-06-03 02:51:04 -07:00
2009-03-28 15:01:36 +11:00
2008-07-16 20:20:11 -07:00
2009-05-18 22:15:58 -07:00
2008-11-25 17:59:27 -08:00
2009-05-18 15:16:38 -07:00
2009-05-18 15:16:37 -07:00
2009-05-18 15:16:37 -07:00
2009-05-20 17:26:23 -07:00
2009-05-18 15:16:37 -07:00
2009-06-18 00:28:51 -07:00
2009-06-03 02:51:04 -07:00
2009-06-03 02:51:04 -07:00
2009-02-01 12:31:33 -08:00
2009-06-18 00:29:12 -07:00
2009-02-26 23:13:35 -08:00
2009-02-01 12:31:33 -08:00
2008-11-19 15:44:53 -08:00
2009-06-16 13:09:51 -07:00
2008-11-03 00:23:42 -08:00
2009-06-03 02:51:04 -07:00
2009-06-09 00:19:37 -07:00
2009-06-03 02:51:04 -07:00
2009-06-03 02:51:04 -07:00
2009-06-03 02:51:04 -07:00
2009-06-11 02:55:43 -07:00
2009-06-03 02:51:02 -07:00
2008-11-25 17:30:50 -08:00
2009-05-19 15:36:17 -07:00
2009-06-03 02:51:04 -07:00
2009-06-14 03:16:13 -07:00
2009-06-13 23:36:32 -07:00
2008-10-07 08:38:24 +11:00
2009-06-03 02:51:04 -07:00
2009-04-27 02:45:02 -07:00
2008-06-11 21:00:38 -07:00
2009-06-18 00:29:12 -07:00
2009-06-23 16:36:26 -07:00
2009-04-20 02:25:26 -07:00
2008-11-03 18:21:05 -08:00
2009-03-02 03:00:15 -08:00
2009-03-02 03:00:15 -08:00
2009-03-02 03:00:15 -08:00
2008-11-19 15:43:27 -08:00
2008-01-28 14:55:41 -08:00
2009-03-02 03:00:14 -08:00
2008-10-07 15:58:17 -07:00
2008-01-28 14:55:41 -08:00
2009-05-29 15:02:29 -07:00
2009-06-03 02:51:04 -07:00
2008-01-28 14:55:41 -08:00
2009-06-25 20:03:15 -07:00
2009-06-03 02:51:04 -07:00
2009-03-13 16:05:14 -07:00
2009-03-02 03:00:15 -08:00
2009-03-02 03:00:13 -08:00
2009-05-25 22:44:59 -07:00
2007-07-31 02:27:57 -07:00
2009-03-02 03:00:15 -08:00
2007-07-31 02:27:57 -07:00
2009-03-02 03:00:15 -08:00
2009-05-28 21:35:47 -07:00
2008-06-05 04:02:33 +09:00
2008-10-29 01:41:45 -07:00
2009-06-18 00:29:12 -07:00
2008-10-29 02:11:14 -07:00
2009-06-03 02:51:04 -07:00
2008-08-06 02:39:30 -07:00
2007-10-10 16:55:54 -07:00
2009-06-03 02:51:04 -07:00
2009-06-03 02:51:04 -07:00
2009-02-01 00:45:17 -08:00
2008-11-25 01:05:54 -08:00
2008-01-31 19:27:24 -08:00