Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1609179 > unrolled thread

[PATCH] power: supply: lp8788: prevent out of bounds array access

Started byGiedrius Statkevičius <giedrius.statkevicius@gmail.com>
First post2017-03-25 17:10 +0100
Last post2017-04-08 13:00 +0200
Articles 3 — 2 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH] power: supply: lp8788: prevent out of bounds array access Giedrius Statkevičius          <giedrius.statkevicius@gmail.com> - 2017-03-25 17:10 +0100
    Re: [PATCH] power: supply: lp8788: prevent out of bounds array access "Kim, Milo" <milo.kim@ti.com> - 2017-03-28 01:30 +0200
      Re: [PATCH] power: supply: lp8788: prevent out of bounds array access Giedrius Statkevičius          <giedrius.statkevicius@gmail.com> - 2017-04-08 13:00 +0200

#1609179 — [PATCH] power: supply: lp8788: prevent out of bounds array access

FromGiedrius Statkevičius <giedrius.statkevicius@gmail.com>
Date2017-03-25 17:10 +0100
Subject[PATCH] power: supply: lp8788: prevent out of bounds array access
Message-ID<toWqm-3ex-17@gated-at.bofh.it>
val might become 7 in which case stime[7] (array of length 7) would be
accessed during the scnprintf call later and that will cause issues.
Obviously, string concatenation is not intended here so just a comma needs
to be added to fix the issue.

Signed-off-by: Giedrius Statkevičius <giedrius.statkevicius@gmail.com>
---
 drivers/power/supply/lp8788-charger.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/power/supply/lp8788-charger.c b/drivers/power/supply/lp8788-charger.c
index 509e2b341bd6..677f7c40b25a 100644
--- a/drivers/power/supply/lp8788-charger.c
+++ b/drivers/power/supply/lp8788-charger.c
@@ -651,7 +651,7 @@ static ssize_t lp8788_show_eoc_time(struct device *dev,
 {
 	struct lp8788_charger *pchg = dev_get_drvdata(dev);
 	char *stime[] = { "400ms", "5min", "10min", "15min",
-			"20min", "25min", "30min" "No timeout" };
+			"20min", "25min", "30min", "No timeout" };
 	u8 val;
 
 	lp8788_read_byte(pchg->lp, LP8788_CHG_EOC, &val);
-- 
2.12.0

[toc] | [next] | [standalone]


#1610160

From"Kim, Milo" <milo.kim@ti.com>
Date2017-03-28 01:30 +0200
Message-ID<tpMfg-7ds-3@gated-at.bofh.it>
In reply to#1609179
On 3/26/2017 1:00 AM, Giedrius Statkevičius wrote:
> val might become 7 in which case stime[7] (array of length 7) would be
> accessed during the scnprintf call later and that will cause issues.
> Obviously, string concatenation is not intended here so just a comma needs
> to be added to fix the issue.
>
> Signed-off-by: Giedrius Statkevičius <giedrius.statkevicius@gmail.com>

Acked-by: Milo Kim <milo.kim@ti.com>

> ---
>  drivers/power/supply/lp8788-charger.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/power/supply/lp8788-charger.c b/drivers/power/supply/lp8788-charger.c
> index 509e2b341bd6..677f7c40b25a 100644
> --- a/drivers/power/supply/lp8788-charger.c
> +++ b/drivers/power/supply/lp8788-charger.c
> @@ -651,7 +651,7 @@ static ssize_t lp8788_show_eoc_time(struct device *dev,
>  {
>  	struct lp8788_charger *pchg = dev_get_drvdata(dev);
>  	char *stime[] = { "400ms", "5min", "10min", "15min",
> -			"20min", "25min", "30min" "No timeout" };
> +			"20min", "25min", "30min", "No timeout" };
>  	u8 val;
>
>  	lp8788_read_byte(pchg->lp, LP8788_CHG_EOC, &val);
>

[toc] | [prev] | [next] | [standalone]


#1619265

FromGiedrius Statkevičius <giedrius.statkevicius@gmail.com>
Date2017-04-08 13:00 +0200
Message-ID<ttWg2-4d3-7@gated-at.bofh.it>
In reply to#1610160
Ping.

On Tue, Mar 28, 2017 at 2:23 AM, Kim, Milo <milo.kim@ti.com> wrote:
> On 3/26/2017 1:00 AM, Giedrius Statkevičius wrote:
>>
>> val might become 7 in which case stime[7] (array of length 7) would be
>> accessed during the scnprintf call later and that will cause issues.
>> Obviously, string concatenation is not intended here so just a comma needs
>> to be added to fix the issue.
>>
>> Signed-off-by: Giedrius Statkevičius <giedrius.statkevicius@gmail.com>
>
>
> Acked-by: Milo Kim <milo.kim@ti.com>
>
>
>> ---
>>  drivers/power/supply/lp8788-charger.c | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/power/supply/lp8788-charger.c
>> b/drivers/power/supply/lp8788-charger.c
>> index 509e2b341bd6..677f7c40b25a 100644
>> --- a/drivers/power/supply/lp8788-charger.c
>> +++ b/drivers/power/supply/lp8788-charger.c
>> @@ -651,7 +651,7 @@ static ssize_t lp8788_show_eoc_time(struct device
>> *dev,
>>  {
>>         struct lp8788_charger *pchg = dev_get_drvdata(dev);
>>         char *stime[] = { "400ms", "5min", "10min", "15min",
>> -                       "20min", "25min", "30min" "No timeout" };
>> +                       "20min", "25min", "30min", "No timeout" };
>>         u8 val;
>>
>>         lp8788_read_byte(pchg->lp, LP8788_CHG_EOC, &val);
>>
>

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web