aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/drivers/power
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2020-03-11 10:08:18 +0100
committerSebastian Reichel <sebastian.reichel@collabora.com>2020-03-11 23:20:32 +0100
commit9027f6111ca40dcc703e1cf6129a73703ae299b7 (patch)
treeb1aa752736209cfe0325cd4c409681a04b6a6ce0 /drivers/power
parentpower: supply: bq27xxx_battery: Silence deferred-probe error (diff)
downloadwireguard-linux-9027f6111ca40dcc703e1cf6129a73703ae299b7.tar.xz
wireguard-linux-9027f6111ca40dcc703e1cf6129a73703ae299b7.zip
power: twl4030: 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: Sebastian Reichel <sebastian.reichel@collabora.com>
Diffstat (limited to 'drivers/power')
-rw-r--r--drivers/power/supply/twl4030_charger.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/power/supply/twl4030_charger.c b/drivers/power/supply/twl4030_charger.c
index 648ab80288c9..1bc49b2e12e8 100644
--- a/drivers/power/supply/twl4030_charger.c
+++ b/drivers/power/supply/twl4030_charger.c
@@ -726,10 +726,10 @@ twl4030_bci_mode_show(struct device *dev,
for (i = 0; i < ARRAY_SIZE(modes); i++)
if (mode == i)
- len += snprintf(buf+len, PAGE_SIZE-len,
+ len += scnprintf(buf+len, PAGE_SIZE-len,
"[%s] ", modes[i]);
else
- len += snprintf(buf+len, PAGE_SIZE-len,
+ len += scnprintf(buf+len, PAGE_SIZE-len,
"%s ", modes[i]);
buf[len-1] = '\n';
return len;