diff options
author | 2023-09-13 00:51:05 +0000 | |
---|---|---|
committer | 2023-09-20 13:15:29 +0800 | |
commit | 3102bbcdcd3c945ef0bcea498d3a0c6384536d6c (patch) | |
tree | 32fdec4282721d83be399637b012b8ac38f62ff7 /drivers/crypto | |
parent | crypto: cavium/nitrox - refactor deprecated strncpy (diff) | |
download | linux-3102bbcdcd3c945ef0bcea498d3a0c6384536d6c.tar.gz linux-3102bbcdcd3c945ef0bcea498d3a0c6384536d6c.tar.bz2 linux-3102bbcdcd3c945ef0bcea498d3a0c6384536d6c.zip |
crypto: qat - refactor deprecated strncpy
`strncpy` is deprecated for use on NUL-terminated destination strings [1].
We should prefer more robust and less ambiguous string interfaces.
`buf` is expected to be NUL-terminated for its eventual use in
`kstrtoul()` and NUL-padding is not required.
Due to the above, a suitable replacement is `strscpy` [2] due to the
fact that it guarantees NUL-termination on the destination buffer.
Link: https://www.kernel.org/doc/html/latest/process/deprecated.html#strncpy-on-nul-terminated-strings [1]
Link: https://manpages.debian.org/testing/linux-manual-4.8/strscpy.9.en.html [2]
Link: https://github.com/KSPP/linux/issues/90
Cc: linux-hardening@vger.kernel.org
Signed-off-by: Justin Stitt <justinstitt@google.com>
Acked-by: Giovanni Cabiddu <giovanni.cabiddu@intel.com>
Reviewed-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'drivers/crypto')
-rw-r--r-- | drivers/crypto/intel/qat/qat_common/qat_uclo.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/crypto/intel/qat/qat_common/qat_uclo.c b/drivers/crypto/intel/qat/qat_common/qat_uclo.c index 4bd150d1441a..e27ea7e28c51 100644 --- a/drivers/crypto/intel/qat/qat_common/qat_uclo.c +++ b/drivers/crypto/intel/qat/qat_common/qat_uclo.c @@ -200,7 +200,7 @@ static int qat_uclo_parse_num(char *str, unsigned int *num) unsigned long ae = 0; int i; - strncpy(buf, str, 15); + strscpy(buf, str, sizeof(buf)); for (i = 0; i < 16; i++) { if (!isdigit(buf[i])) { buf[i] = '\0'; |