From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jaehoon Chung Date: Thu, 12 Nov 2020 08:34:27 +0900 Subject: [PATCH] env: mmc: Correct partition comparison in mmc_offset_try_partition In-Reply-To: References: <20201110142837.2987-1-jigi.kim@gmail.com> <21adc771-9660-da52-65c8-c2029de9a29e@samsung.com> <20201111100756.GA32726@trex> Message-ID: <028f53ca-2251-0bf0-37ed-49e1cf213cbd@samsung.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi, On 11/11/20 7:25 PM, ????? wrote: > On Wed, Nov 11, 2020 at 7:07 PM Jorge Ramirez-Ortiz, Gmail > wrote: >> >> On 11/11/20, Jaehoon Chung wrote: >>> On 11/10/20 11:28 PM, Hoyeonjiki Kim wrote: >>>> The function mmc_offset_try_partition searches MMC partition to save the >>>> environment data by name. However, it only compares the first word-size >>>> bytes (size of 'const char *'), which may make the function to find >>>> unintended partition. >>>> >>>> Correct the function not to partially compare the partition name with >>>> config "u-boot,,mmc-env-partition". >>>> >>>> Signed-off-by: Hoyeonjiki Kim >>>> --- >>>> env/mmc.c | 2 +- >>>> 1 file changed, 1 insertion(+), 1 deletion(-) >>>> >>>> diff --git a/env/mmc.c b/env/mmc.c >>>> index 4e67180b23..505f7aa2b8 100644 >>>> --- a/env/mmc.c >>>> +++ b/env/mmc.c >>>> @@ -42,7 +42,7 @@ static inline int mmc_offset_try_partition(const char *str, int copy, s64 *val) >>>> if (ret < 0) >>>> return ret; >>>> >>>> - if (!strncmp((const char *)info.name, str, sizeof(str))) >>>> + if (!strcmp((const char *)info.name, str)) >>> >>> Using "strlen(str)" is better than changing to strcmp. >>> >>> strncmp(..., ..., strlen(str)) >> >> absolutely. >> maybe also modify the commit like to indicate a fix to the current bug? > > Thanks for the feedback for both. > > However, when we do so, isn't there still the possibility for the > function searching incorrect partition if, > 1) "str" is shorter than "info.name", and > 2) the first "strlen(str)" letters of "info.name" is same with those of "str"? Make sense. You're right. :) There are two approach. One is that choose one of those length what is longer. Other is your approach. I don't have any objection to fix whatever. Just resend your patch with Jorge's comment, plz. Best Regards, Jaehoon Chung > > This commit is for fixing the current bug, but also I wanna make sure > that partition name matches fully. > > Let me know your opinion. > > Best Regards, > Hoeyonjiki Kim > >> >>> >>> >>> Best Regards, >>> Jaehoon Chung >>> >>>> break; >>>> } >>>> >>>> >>> >