OSDN Git Service

ASoC: wcd_cpe_core: Fix buffer overflow in wcd_cpe_init
authorNathan Chancellor <natechancellor@gmail.com>
Sun, 29 Sep 2019 01:42:01 +0000 (18:42 -0700)
committerNathan Chancellor <natechancellor@gmail.com>
Sun, 29 Sep 2019 02:12:35 +0000 (19:12 -0700)
Clang warns:

../sound/soc/codecs/wcd_cpe_core.c:1990:2: warning: 'snprintf' size
argument is too large; destination buffer has size 11, but size argument
is 13 [-Wfortify-source]
        snprintf(proc_name, (sizeof("cpe") + sizeof("_state") +
        ^
1 warning generated.

Fixes: 03f5d7efe220 ("ASoC: wcd: Add Audio codec drivers for MSM targets")
Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
sound/soc/codecs/wcd_cpe_core.c

index 337c25f..9566084 100644 (file)
@@ -1987,8 +1987,8 @@ struct wcd_cpe_core *wcd_cpe_init(const char *img_fname,
        }
 
        card = codec->component.card->snd_card;
-       snprintf(proc_name, (sizeof("cpe") + sizeof("_state") +
-                sizeof(id) - 2), "%s%d%s", cpe_name, id, state_name);
+       snprintf(proc_name, sizeof(proc_name), "%s%d%s", cpe_name, id,
+                state_name);
        entry = snd_info_create_card_entry(card, proc_name,
                                           card->proc_root);
        if (entry) {