]> git.baikalelectronics.ru Git - kernel.git/commit
ALSA: cs423x: fix format string overflow warning
authorArnd Bergmann <arnd@arndb.de>
Tue, 18 Jul 2017 11:48:05 +0000 (13:48 +0200)
committerTakashi Iwai <tiwai@suse.de>
Tue, 18 Jul 2017 15:51:55 +0000 (17:51 +0200)
commitd95db308e81b01e3f27a83ad612c8f0e8a8fa6db
tree86154aaecf552c8888aea1f17d9c12c586a680ba
parent818b184169f1808f687789231cb71378620178d7
ALSA: cs423x: fix format string overflow warning

The snd_pcm name may overflow the card->longname total size:

sound/isa/cs423x/cs4231.c: In function 'snd_cs4231_probe':
sound/isa/cs423x/cs4231.c:115:26: error: ' at 0x' directive writing 6 bytes into a region of size between 1 and 80 [-Werror=format-overflow=] 0x%lx, irq %d, dma %d",
  sprintf(card->longname, "%s at 0x%lx, irq %d, dma %d",
                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~

This changes the driver to use snprintf() so we truncate the string
instead of overflowing into the next field if that happens.

I decided to split out the second format string for the extra
DMA channel to keep the code simpler.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/isa/cs423x/cs4231.c
sound/isa/cs423x/cs4236.c