Messages in this thread | | | Subject | Re: [PATCH v2] Bluetooth: Remove VLA usage in aes_cmac | From | "Gustavo A. R. Silva" <> | Date | Thu, 5 Apr 2018 04:51:36 -0500 |
| |
On 04/05/2018 03:46 AM, Marcel Holtmann wrote:
>> By the way, what is you opinion on replacing crypto_shash_descsize(ctx) with PAGE_SIZE / 8 in SHASH_DESC_ON_STACK? >> >> Does it work for you? > > isn’t that just waste? >
Agree.
> The macro itself is this. > > #define SHASH_DESC_ON_STACK(shash, ctx) \ > char __##shash##_desc[sizeof(struct shash_desc) + \ > crypto_shash_descsize(ctx)] CRYPTO_MINALIGN_ATTR; \ > struct shash_desc *shash = (struct shash_desc *)__##shash##_desc > > For AES-CMAC, we could always do this with a manual macro that gives us the right size. However that is error prone if any internals change. I think what has to happened that crypto_shash_decsize becomes something the compiler can evaluate at compile time. >
Yeah. That would imply an analysis of the algorithm each of the callers use. In the case of AES-CMAC, what is the maximum digest size?
I tried to find a fixed-length value for AES-CMAC but I didn't get any output with git grep -n _DIGEST_SIZE | grep AES
Thanks -- Gustavo
| |