[-next] ALSA: gus: Replace unsafe strcpy() with strscpy()

Message ID 20210514070507.16600-1-yuehaibing@huawei.com
State New
Headers show
Series
  • [-next] ALSA: gus: Replace unsafe strcpy() with strscpy()
Related show

Commit Message

YueHaibing May 14, 2021, 7:05 a.m.
Fix smatch warning:
sound/isa/gus/gus_main.c:396 snd_gus_check_version() error:
 strcpy() 'card->longname' too large for 'card->shortname' (80 vs 32)

Even if this is not a real bug since the longest length of card->longname
now is 31, replace strcpy() with strscpy() in order to avoid possible
future mistake.

Signed-off-by: YueHaibing <yuehaibing@huawei.com>
---
 sound/isa/gus/gus_main.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Takashi Iwai May 14, 2021, 7:47 a.m. | #1
On Fri, 14 May 2021 09:05:07 +0200,
YueHaibing wrote:
> 
> Fix smatch warning:
> sound/isa/gus/gus_main.c:396 snd_gus_check_version() error:
>  strcpy() 'card->longname' too large for 'card->shortname' (80 vs 32)
> 
> Even if this is not a real bug since the longest length of card->longname
> now is 31, replace strcpy() with strscpy() in order to avoid possible
> future mistake.
> 
> Signed-off-by: YueHaibing <yuehaibing@huawei.com>

Applied, thanks.


Takashi

Patch

diff --git a/sound/isa/gus/gus_main.c b/sound/isa/gus/gus_main.c
index b7518122a10d..7524ce5785de 100644
--- a/sound/isa/gus/gus_main.c
+++ b/sound/isa/gus/gus_main.c
@@ -384,7 +384,7 @@  static int snd_gus_check_version(struct snd_gus_card * gus)
 			}
 		}
 	}
-	strcpy(card->shortname, card->longname);
+	strscpy(card->shortname, card->longname, sizeof(card->shortname));
 	gus->uart_enable = 1;	/* standard GUSes doesn't have midi uart trouble */
 	snd_gus_init_control(gus);
 	return 0;