Re: [PATCH 05/16] dynamic_debug: replace strcpy with strlcpy, in ddebug_setup_query()
From: Bart Van Assche
Date: Tue Dec 20 2011 - 03:08:47 EST
On Mon, Dec 19, 2011 at 10:12 PM, Jason Baron <jbaron@xxxxxxxxxx> wrote:
>
> From: Jim Cromie <jim.cromie@xxxxxxxxx>
>
> Replace strcpy with strlcpy, and add define for the size constant.
>
> [jbaron@xxxxxxxxxx: Use DDEBUG_STRING_SIZE for overflow check]
> Signed-off-by: Jim Cromie <jim.cromie@xxxxxxxxx>
> Signed-off-by: Jason Baron <jbaron@xxxxxxxxxx>
> ---
> lib/dynamic_debug.c | 8 +++++---
> 1 files changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/lib/dynamic_debug.c b/lib/dynamic_debug.c
> index 8c88b89..6fc8622 100644
> --- a/lib/dynamic_debug.c
> +++ b/lib/dynamic_debug.c
> @@ -525,14 +525,16 @@ EXPORT_SYMBOL(__dynamic_netdev_dbg);
>
> #endif
>
> -static __initdata char ddebug_setup_string[1024];
> +#define DDEBUG_STRING_SIZE 1024
> +static __initdata char ddebug_setup_string[DDEBUG_STRING_SIZE];
> +
> static __init int ddebug_setup_query(char *str)
> {
> - if (strlen(str) >= 1024) {
> + if (strlen(str) >= DDEBUG_STRING_SIZE) {
> pr_warn("ddebug boot param string too large\n");
> return 0;
> }
> - strcpy(ddebug_setup_string, str);
> + strlcpy(ddebug_setup_string, str, DDEBUG_STRING_SIZE);
> return 1;
> }
Sorry, but it's not clear to me why it make sense to introduce the
DDEBUG_STRING_SIZE macro instead of using ARRAY_SIZE().
Bart.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/