Re: [PATCH 14/18] kdb_support: change strncpy+truncation to strlcpy

From: Daniel Thompson
Date: Fri Jul 13 2018 - 06:33:28 EST


On Fri, Jul 13, 2018 at 03:25:58AM +0200, Dominique Martinet wrote:
> Generated by scripts/coccinelle/misc/strncpy_truncation.cocci
>
> Signed-off-by: Dominique Martinet <asmadeus@xxxxxxxxxxxxx>

It would have been good for you to mention in the changelog how
you reviewed your change to verify that the extra zero padding
from strncpy() isn't required.

However... I have taken a look and can't see any problem so:

Reviewed-by: Daniel Thompson <daniel.thompson@xxxxxxxxxx>


> ---
>
> Please see https://marc.info/?l=linux-kernel&m=153144450722324&w=2 (the
> first patch of the serie) for the motivation behind this patch
>
> kernel/debug/kdb/kdb_support.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/kernel/debug/kdb/kdb_support.c b/kernel/debug/kdb/kdb_support.c
> index 990b3cc526c8..1f6a4b6bde0b 100644
> --- a/kernel/debug/kdb/kdb_support.c
> +++ b/kernel/debug/kdb/kdb_support.c
> @@ -119,8 +119,7 @@ int kdbnearsym(unsigned long addr, kdb_symtab_t *symtab)
> * What was Rusty smoking when he wrote that code?
> */
> if (symtab->sym_name != knt1) {
> - strncpy(knt1, symtab->sym_name, knt1_size);
> - knt1[knt1_size-1] = '\0';
> + strlcpy(knt1, symtab->sym_name, knt1_size);
> }
> for (i = 0; i < ARRAY_SIZE(kdb_name_table); ++i) {
> if (kdb_name_table[i] &&
> --
> 2.17.1
>