Re: [PATCH v3 2/3] KEYS: Avoid false positive ENOMEM error on key read

From: Jarkko Sakkinen
Date: Sun Mar 15 2020 - 17:32:56 EST


On Fri, Mar 13, 2020 at 11:21:01AM -0400, Waiman Long wrote:
> - * Read methods will just return the required length
> - * without any copying if the provided length isn't big
> - * enough.
> + * We don't want an erronous -ENOMEM error due to an
> + * arbitrary large user-supplied buflen. So if buflen
> + * exceeds a threshold (1024 bytes in this case), we call
> + * the read method twice. The first time to get the buffer
> + * length and the second time to read out the key data.
> + *
> + * N.B. All the read methods will return the required
> + * buffer length with a NULL input buffer or when
> + * the input buffer length isn't large enough.
> */
> + if (buflen <= 0x400) {

1. The overwhelmingly long comment. Will be destined to rotten.
2. Magic number.
3. The cap must be updated both in comment and code, and not only
that, but the numbers use a different base (dec and hex).

/Jarkko