lib/mpi: mpi_read_from_buffer(): sanitize short buffer printk
The first two bytes of the input buffer encode its expected length and mpi_read_from_buffer() prints a console message if the given buffer is too short. However, there are some oddities with how this message is printed: - It is printed at the default loglevel. This is different from the one used in the case that the first two bytes' value is unsupportedly large, i.e. KERN_INFO. - The format specifier '%d' is used for unsigned ints. - It prints the values of nread and *ret_nread. This is redundant since the former is always the latter + 1. Clean this up as follows: - Use pr_info() rather than printk() with no loglevel. - Use the format specifiers '%u' in place if '%d'. - Do not print the redundant 'nread' but the more helpful 'nbytes' value. Signed-off-by: Nicolai Stange <nicstange@gmail.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
parent
7af791e0f0
commit
cdf24b42c6
@ -97,8 +97,8 @@ MPI mpi_read_from_buffer(const void *xbuffer, unsigned *ret_nread)
|
||||
|
||||
nbytes = DIV_ROUND_UP(nbits, 8);
|
||||
if (nbytes + 2 > *ret_nread) {
|
||||
printk("MPI: mpi larger than buffer nread=%d ret_nread=%d\n",
|
||||
*ret_nread + 1, *ret_nread);
|
||||
pr_info("MPI: mpi larger than buffer nbytes=%u ret_nread=%u\n",
|
||||
nbytes, *ret_nread);
|
||||
return ERR_PTR(-EINVAL);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user