Eric Dumazet
06425c308b
tcp: fix 0 divide in __tcp_select_window()
...
syszkaller fuzzer was able to trigger a divide by zero, when
TCP window scaling is not enabled.
SO_RCVBUF can be used not only to increase sk_rcvbuf, also
to decrease it below current receive buffers utilization.
If mss is negative or 0, just return a zero TCP window.
Signed-off-by: Eric Dumazet <edumazet@google.com>
Reported-by: Dmitry Vyukov <dvyukov@google.com>
Acked-by: Neal Cardwell <ncardwell@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-02-01 12:55:42 -05:00
..
2017-01-18 20:59:22 +01:00
2016-12-24 11:46:01 -08:00
2015-08-25 13:38:50 -07:00
2016-04-27 22:48:24 -04:00
2016-07-07 10:15:34 +10:00
2015-07-29 22:44:04 -07:00
2016-12-24 11:46:01 -08:00
2016-11-30 11:09:39 +01:00
2017-01-18 17:07:14 -05:00
2015-07-24 22:46:11 -07:00
2016-09-28 04:48:00 -04:00
2017-01-12 15:11:43 -05:00
2016-12-24 11:46:01 -08:00
2016-10-30 12:42:58 -04:00
2016-06-30 05:03:36 -04:00
2016-10-20 14:32:22 -04:00
2016-12-24 11:46:01 -08:00
2017-01-02 13:01:03 -05:00
2016-12-17 11:13:19 -05:00
2016-11-09 13:02:27 -05:00
2016-06-05 22:56:42 -04:00
2016-10-17 10:17:05 -04:00
2016-07-07 10:35:06 +02:00
2015-08-28 13:32:36 -07:00
2016-11-03 16:10:26 -04:00
2016-04-27 22:48:23 -04:00
2016-12-24 11:46:01 -08:00
2016-09-16 04:24:07 -04:00
2016-12-24 11:46:01 -08:00
2017-01-09 18:01:03 +01:00
2016-12-29 14:07:41 -05:00
2017-01-24 16:21:36 -05:00
2016-11-18 10:59:15 -05:00
2016-11-18 10:59:15 -05:00
2015-04-03 12:11:15 -04:00
2016-12-24 11:46:01 -08:00
2016-12-24 11:46:01 -08:00
2016-12-24 11:46:01 -08:00
2016-12-03 12:29:53 -05:00
2016-10-23 19:35:24 -04:00
2016-11-24 12:44:36 +01:00
2016-12-16 10:24:44 -08:00
2016-09-30 01:50:45 -04:00
2014-09-19 17:15:31 -04:00
2016-11-03 15:25:26 -04:00
2016-12-24 11:46:01 -08:00
2017-01-12 15:18:20 -05:00
2016-12-02 12:49:59 -05:00
2017-01-09 16:34:38 -05:00
2016-10-29 17:12:43 -04:00
2016-05-11 14:43:19 -04:00
2016-09-21 00:22:59 -04:00
2016-11-22 13:27:16 -05:00
2016-05-11 14:43:19 -04:00
2016-12-06 11:34:24 -05:00
2016-08-23 23:11:36 -07:00
2017-01-19 11:35:26 -05:00
2016-11-21 13:20:17 -05:00
2016-05-11 14:43:19 -04:00
2016-11-21 13:20:17 -05:00
2016-11-21 13:20:17 -05:00
2017-01-25 13:23:36 -05:00
2016-12-27 12:28:07 -05:00
2016-11-21 13:20:17 -05:00
2017-01-09 16:34:39 -05:00
2016-12-02 12:49:59 -05:00
2016-06-10 23:07:49 -07:00
2016-09-19 20:59:34 -04:00
2017-02-01 12:55:42 -05:00
2016-03-01 17:18:44 -05:00
2016-09-21 00:23:00 -04:00
2016-05-02 17:02:25 -04:00
2016-11-21 13:20:17 -05:00
2016-12-05 13:32:24 -05:00
2016-11-21 13:20:17 -05:00
2016-05-11 14:43:19 -04:00
2016-11-21 13:20:17 -05:00
2016-11-21 13:20:17 -05:00
2016-11-21 13:20:17 -05:00
2016-12-24 11:46:01 -08:00
2016-07-11 13:27:06 -07:00
2016-09-08 16:13:09 -07:00
2016-11-24 15:32:14 -05:00
2016-10-20 14:32:22 -04:00
2016-06-17 20:23:32 -07:00
2016-12-24 11:46:01 -08:00
2016-11-24 15:32:14 -05:00
2015-09-17 17:18:37 -07:00
2013-12-26 13:43:21 -05:00
2015-03-25 14:07:04 -04:00
2015-10-24 06:54:12 -07:00
2016-09-12 15:52:44 -07:00
2014-06-30 07:49:47 +02:00
2013-12-18 16:58:20 -05:00
2013-05-31 17:19:05 -07:00