All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [PATCH] common: cli_simple: use strncpy instead of strcpy
@ 2016-01-09 13:31 Peng Fan
  2016-01-09 14:03 ` Tom Rini
  0 siblings, 1 reply; 3+ messages in thread
From: Peng Fan @ 2016-01-09 13:31 UTC (permalink / raw)
  To: u-boot

Report Coverity log:
Destination buffer too small (STRING_OVERFLOW)
string_overflow: You might overrun the 1024 byte destination string
lastcommand by writing 1025 bytes from console_buffer

Signed-off-by: Peng Fan <van.freenix@gmail.com>
Cc: Heiko Schocher <hs@denx.de>
Cc: Simon Glass <sjg@chromium.org>
Cc: Tom Rini <trini@konsulko.com>
---
 common/cli_simple.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/common/cli_simple.c b/common/cli_simple.c
index 9c3d073..c51f963 100644
--- a/common/cli_simple.c
+++ b/common/cli_simple.c
@@ -276,7 +276,8 @@ void cli_simple_loop(void)
 
 		flag = 0;	/* assume no special flags for now */
 		if (len > 0)
-			strcpy(lastcommand, console_buffer);
+			strncpy(lastcommand, console_buffer,
+				CONFIG_SYS_CBSIZE + 1);
 		else if (len == 0)
 			flag |= CMD_FLAG_REPEAT;
 #ifdef CONFIG_BOOT_RETRY_TIME
-- 
2.6.2

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [U-Boot] [PATCH] common: cli_simple: use strncpy instead of strcpy
  2016-01-09 13:31 [U-Boot] [PATCH] common: cli_simple: use strncpy instead of strcpy Peng Fan
@ 2016-01-09 14:03 ` Tom Rini
  2016-01-10  4:59   ` Peng Fan
  0 siblings, 1 reply; 3+ messages in thread
From: Tom Rini @ 2016-01-09 14:03 UTC (permalink / raw)
  To: u-boot

On Sat, Jan 09, 2016 at 09:31:48PM +0800, Peng Fan wrote:

> Report Coverity log:
> Destination buffer too small (STRING_OVERFLOW)
> string_overflow: You might overrun the 1024 byte destination string
> lastcommand by writing 1025 bytes from console_buffer
> 
> Signed-off-by: Peng Fan <van.freenix@gmail.com>
> Cc: Heiko Schocher <hs@denx.de>
> Cc: Simon Glass <sjg@chromium.org>
> Cc: Tom Rini <trini@konsulko.com>
> ---
>  common/cli_simple.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/common/cli_simple.c b/common/cli_simple.c
> index 9c3d073..c51f963 100644
> --- a/common/cli_simple.c
> +++ b/common/cli_simple.c
> @@ -276,7 +276,8 @@ void cli_simple_loop(void)
>  
>  		flag = 0;	/* assume no special flags for now */
>  		if (len > 0)
> -			strcpy(lastcommand, console_buffer);
> +			strncpy(lastcommand, console_buffer,
> +				CONFIG_SYS_CBSIZE + 1);
>  		else if (len == 0)
>  			flag |= CMD_FLAG_REPEAT;
>  #ifdef CONFIG_BOOT_RETRY_TIME

So, long term I would like to see use move to using strlcpy for the
normal case (it might not make sense when working with various defined
protocols, etc).  Thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20160109/2830526c/attachment.sig>

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [U-Boot] [PATCH] common: cli_simple: use strncpy instead of strcpy
  2016-01-09 14:03 ` Tom Rini
@ 2016-01-10  4:59   ` Peng Fan
  0 siblings, 0 replies; 3+ messages in thread
From: Peng Fan @ 2016-01-10  4:59 UTC (permalink / raw)
  To: u-boot

On Sat, Jan 09, 2016 at 09:03:59AM -0500, Tom Rini wrote:
>On Sat, Jan 09, 2016 at 09:31:48PM +0800, Peng Fan wrote:
>
>> Report Coverity log:
>> Destination buffer too small (STRING_OVERFLOW)
>> string_overflow: You might overrun the 1024 byte destination string
>> lastcommand by writing 1025 bytes from console_buffer
>> 
>> Signed-off-by: Peng Fan <van.freenix@gmail.com>
>> Cc: Heiko Schocher <hs@denx.de>
>> Cc: Simon Glass <sjg@chromium.org>
>> Cc: Tom Rini <trini@konsulko.com>
>> ---
>>  common/cli_simple.c | 3 ++-
>>  1 file changed, 2 insertions(+), 1 deletion(-)
>> 
>> diff --git a/common/cli_simple.c b/common/cli_simple.c
>> index 9c3d073..c51f963 100644
>> --- a/common/cli_simple.c
>> +++ b/common/cli_simple.c
>> @@ -276,7 +276,8 @@ void cli_simple_loop(void)
>>  
>>  		flag = 0;	/* assume no special flags for now */
>>  		if (len > 0)
>> -			strcpy(lastcommand, console_buffer);
>> +			strncpy(lastcommand, console_buffer,
>> +				CONFIG_SYS_CBSIZE + 1);
>>  		else if (len == 0)
>>  			flag |= CMD_FLAG_REPEAT;
>>  #ifdef CONFIG_BOOT_RETRY_TIME
>
>So, long term I would like to see use move to using strlcpy for the
>normal case (it might not make sense when working with various defined
>protocols, etc).  Thanks!

Thanks. Just read this, https://www.sudo.ws/todd/papers/strlcpy.html.
strlcpy is a better choice.

Thanks,
Peng.

>
>-- 
>Tom

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2016-01-10  4:59 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-01-09 13:31 [U-Boot] [PATCH] common: cli_simple: use strncpy instead of strcpy Peng Fan
2016-01-09 14:03 ` Tom Rini
2016-01-10  4:59   ` Peng Fan

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.