diff options
author | Takashi Iwai <tiwai@suse.de> | 2020-03-11 10:12:58 +0300 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2020-03-12 16:39:04 +0300 |
commit | 034851049082d084a6e616900293e14590b4e0e1 (patch) | |
tree | 97806eb2cc5a06ef704ee679752cac5cf346ad25 /drivers/block/aoe | |
parent | 0fbcf57982346763ec636f176d5afaa367b5f71b (diff) | |
download | linux-034851049082d084a6e616900293e14590b4e0e1.tar.xz |
block: aoe: Use scnprintf() for avoiding potential buffer overflow
Since snprintf() returns the would-be-output size instead of the
actual output size, the succeeding calls may go beyond the given
buffer limit. Fix it by replacing with scnprintf().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'drivers/block/aoe')
-rw-r--r-- | drivers/block/aoe/aoeblk.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/block/aoe/aoeblk.c b/drivers/block/aoe/aoeblk.c index 7b32fb673375..a27804d71e12 100644 --- a/drivers/block/aoe/aoeblk.c +++ b/drivers/block/aoe/aoeblk.c @@ -87,9 +87,9 @@ static ssize_t aoedisk_show_netif(struct device *dev, if (*nd == NULL) return snprintf(page, PAGE_SIZE, "none\n"); for (p = page; nd < ne; nd++) - p += snprintf(p, PAGE_SIZE - (p-page), "%s%s", + p += scnprintf(p, PAGE_SIZE - (p-page), "%s%s", p == page ? "" : ",", (*nd)->name); - p += snprintf(p, PAGE_SIZE - (p-page), "\n"); + p += scnprintf(p, PAGE_SIZE - (p-page), "\n"); return p-page; } /* firmware version */ |