public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Pete Batard" <pete@akeo.ie>
To: Leif Lindholm <leif.lindholm@linaro.org>
Cc: devel@edk2.groups.io, ard.biesheuvel@linaro.org, philmd@redhat.com
Subject: Re: [edk2-platforms][PATCH 1/1] Platform/RPi: Prevent buffer over-read when the command line is empty
Date: Thu, 7 Nov 2019 17:05:20 +0000	[thread overview]
Message-ID: <27d409b1-1761-8fe6-5c51-c4f53df3ce60@akeo.ie> (raw)
In-Reply-To: <20191107162130.GQ16820@bivouac.eciton.net>

Hi Leif,

On 2019.11.07 16:21, Leif Lindholm wrote:
> Patch looks good, but the term "command line" is a bit confusing.
> 
> I assume we're talking about whatever way parameters are passed from
> pre-edk2 firmware to edk2, right?

Yes. This is basically what the Raspberry Pi VideoCore bootcode digests 
and passes as boot arguments to the ARM boot loader (i.e. our TF-A + EFI 
firmware executable). It contains options that the user may have set in 
their 'config.txt' as well as other data.

> Is there a more precise term for this?

Would "boot arguments" or "external boot arguments" work for you? Or if 
you prefer "(external) boot parameters" should be applicable too.

Regards,

/Pete

> 
> /
>      Leif
> 
> On Mon, Nov 04, 2019 at 04:06:17PM +0000, Pete Batard wrote:
>> From: Andrei Warkentin <andrey.warkentin@gmail.com>
>>
>> It is possible for the command line to be empty
>> (Cmd->TagHead.TagValueSize = 0), in which case the code should not
>> attempt to read the value at CommandLine[-1].
>>
>> Signed-off-by: Pete Batard <pete@akeo.ie>
>> ---
>>   Platform/RaspberryPi/Drivers/RpiFirmwareDxe/RpiFirmwareDxe.c | 3 ++-
>>   1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/Platform/RaspberryPi/Drivers/RpiFirmwareDxe/RpiFirmwareDxe.c b/Platform/RaspberryPi/Drivers/RpiFirmwareDxe/RpiFirmwareDxe.c
>> index 5a9d4c3f1787..9b4aa068857c 100644
>> --- a/Platform/RaspberryPi/Drivers/RpiFirmwareDxe/RpiFirmwareDxe.c
>> +++ b/Platform/RaspberryPi/Drivers/RpiFirmwareDxe/RpiFirmwareDxe.c
>> @@ -927,7 +927,8 @@ RpiFirmwareGetCommmandLine (
>>   
>>     CopyMem (CommandLine, Cmd->CommandLine, Cmd->TagHead.TagValueSize);
>>   
>> -  if (CommandLine[Cmd->TagHead.TagValueSize - 1] != '\0') {
>> +  if (Cmd->TagHead.TagValueSize == 0 ||
>> +      CommandLine[Cmd->TagHead.TagValueSize - 1] != '\0') {
>>       //
>>       // Add a NUL terminator if required.
>>       //
>> -- 
>> 2.21.0.windows.1
>>


  reply	other threads:[~2019-11-07 17:05 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-11-04 16:06 [edk2-platforms][PATCH 1/1] Platform/RPi: Prevent buffer over-read when the command line is empty Pete Batard
2019-11-04 16:27 ` Philippe Mathieu-Daudé
2019-11-07 16:21 ` Leif Lindholm
2019-11-07 17:05   ` Pete Batard [this message]
2019-11-07 17:27     ` Leif Lindholm
2019-11-07 17:35       ` Pete Batard
2019-11-07 18:09         ` Leif Lindholm

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=27d409b1-1761-8fe6-5c51-c4f53df3ce60@akeo.ie \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox