Kees Cook
b68a7ec1e9
crypto: hash - Remove VLA usage
...
In the quest to remove all stack VLA usage from the kernel[1], this
removes the VLAs in SHASH_DESC_ON_STACK (via crypto_shash_descsize())
by using the maximum allowable size (which is now more clearly captured
in a macro), along with a few other cases. Similar limits are turned into
macros as well.
A review of existing sizes shows that SHA512_DIGEST_SIZE (64) is the
largest digest size and that sizeof(struct sha3_state) (360) is the
largest descriptor size. The corresponding maximums are reduced.
[1] https://lkml.kernel.org/r/CA+55aFzCG-zNmZwX4A2FQpadafLfEzK6CC=qPXydAacU1RqZWA@mail.gmail.com
Signed-off-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2018-09-04 11:35:03 +08:00
..
2018-08-16 09:57:20 -07:00
2018-06-18 20:17:38 +05:30
2016-10-25 11:08:33 +08:00
2018-08-03 18:06:04 +08:00
2017-04-21 20:30:50 +08:00
2018-01-12 23:03:39 +11:00
2018-07-09 00:30:26 +08:00
2018-07-09 00:30:26 +08:00
2018-07-09 00:30:26 +08:00
2018-05-19 00:13:58 +08:00
2017-02-11 17:50:43 +08:00
2017-06-19 14:11:53 +08:00
2018-07-30 09:10:25 -07:00
2018-09-04 11:35:03 +08:00
2017-01-13 00:24:39 +08:00
2018-04-21 00:58:32 +08:00
2017-10-07 12:10:34 +08:00
2018-06-28 10:40:47 -07:00
2018-09-04 11:35:03 +08:00
2018-05-26 09:16:44 +02:00
2018-06-28 10:40:47 -07:00
2015-04-22 09:30:18 +08:00
2014-11-24 22:43:57 +08:00
2018-07-18 07:27:22 -04:00
2014-11-24 22:43:57 +08:00
2018-04-21 00:58:30 +08:00
2018-04-21 00:58:30 +08:00
2018-08-03 18:06:04 +08:00
2011-09-22 21:25:25 +10:00
2015-01-13 22:29:11 +11:00
2017-11-29 17:33:25 +11:00
2017-11-29 17:33:25 +11:00
2017-11-29 17:33:25 +11:00
2013-08-14 20:42:03 +10:00
2017-03-09 18:34:39 +08:00
2018-09-04 11:35:03 +08:00
2018-04-21 00:58:34 +08:00
2017-11-29 17:33:33 +11:00
2017-12-22 19:02:33 +11:00
2018-04-21 00:58:34 +08:00
2017-02-11 17:52:28 +08:00
2016-10-21 11:03:42 +08:00
2018-05-27 00:12:09 +08:00
2018-05-27 00:12:08 +08:00
2013-09-12 15:31:34 +10:00
2016-09-13 20:27:26 +08:00
2018-01-12 23:03:35 +11:00
2018-02-15 23:26:50 +08:00
2018-07-09 00:30:24 +08:00
2018-02-15 23:26:47 +08:00
2014-03-21 21:54:28 +08:00
2018-04-21 00:58:34 +08:00
2018-04-21 00:58:34 +08:00
2017-04-24 18:11:08 +08:00
2015-01-13 22:29:11 +11:00
2018-08-03 18:06:06 +08:00
2018-07-20 13:51:21 +08:00
2018-08-03 18:05:48 +08:00
2014-11-26 20:06:30 +08:00
2018-07-20 13:51:22 +08:00
2018-07-09 00:26:19 +08:00
2018-04-21 00:58:29 +08:00
2017-10-12 22:55:00 +08:00
2018-04-21 00:58:29 +08:00
2017-12-22 19:52:45 +11:00
2014-11-24 22:43:57 +08:00
2015-04-23 14:18:09 +08:00
2017-12-22 19:29:08 +11:00
2017-12-22 19:52:40 +11:00
2018-07-09 00:30:24 +08:00
2015-12-20 15:27:12 +02:00
2017-11-29 13:39:15 +11:00
2018-03-31 01:32:58 +08:00
2016-11-17 23:34:52 +08:00
2015-06-25 23:18:33 +08:00
2018-09-04 11:35:03 +08:00
2017-11-29 17:33:26 +11:00
2014-11-24 22:43:57 +08:00
2017-01-13 00:24:39 +08:00
2018-08-03 18:06:03 +08:00
2017-04-10 19:17:27 +08:00
2017-04-10 19:17:27 +08:00
2017-05-08 17:15:13 -07:00
2018-09-04 11:35:03 +08:00
2018-02-15 23:26:45 +08:00
2018-07-09 00:30:24 +08:00
2018-07-09 00:30:24 +08:00
2013-12-09 20:09:12 +08:00
2014-11-24 22:43:57 +08:00
2018-08-03 17:55:12 +08:00
2018-07-09 00:30:26 +08:00
2018-04-21 00:58:34 +08:00
2017-12-22 19:02:47 +11:00
2018-07-09 00:30:24 +08:00
2018-05-16 07:23:35 +02:00
2017-11-02 11:10:55 +01:00
2018-07-09 00:30:24 +08:00
2018-07-09 00:30:24 +08:00
2018-07-27 19:28:36 +08:00
2018-07-27 19:28:36 +08:00
2017-07-28 17:56:00 +08:00
2018-04-07 19:04:02 +09:00
2018-02-15 23:26:47 +08:00
2018-04-21 00:58:37 +08:00
2016-07-05 23:05:26 +08:00
2015-10-14 22:23:16 +08:00
2018-05-31 00:13:57 +08:00
2018-08-03 18:06:03 +08:00
2018-01-06 09:18:00 -07:00
2014-11-24 22:43:57 +08:00
2017-12-22 19:52:45 +11:00
2017-08-09 20:17:54 +08:00
2018-07-09 00:30:24 +08:00
2018-08-03 17:55:12 +08:00
2018-07-09 00:30:24 +08:00
2018-07-09 00:30:24 +08:00
2018-09-04 11:35:03 +08:00
2018-03-03 00:03:17 +08:00
2018-08-03 18:06:04 +08:00
2018-07-09 00:30:24 +08:00
2018-05-05 14:52:51 +08:00
2018-08-03 18:06:02 +08:00
2015-07-17 21:20:20 +08:00
2015-01-13 22:29:11 +11:00
2018-09-04 11:35:03 +08:00
2018-09-04 11:35:03 +08:00
2018-07-09 00:30:24 +08:00
2017-11-29 17:33:25 +11:00
2017-11-29 17:33:25 +11:00
2018-07-01 21:00:44 +08:00
2018-07-09 00:30:24 +08:00
2018-09-04 11:35:03 +08:00
2017-11-15 18:21:04 -08:00
2018-08-03 18:06:03 +08:00
2018-04-21 00:58:30 +08:00