From: "Leif Lindholm" <leif.lindholm@linaro.org>
To: Pete Batard <pete@akeo.ie>
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 18:09:37 +0000 [thread overview]
Message-ID: <20191107180937.GX16820@bivouac.eciton.net> (raw)
In-Reply-To: <fa56945c-f460-2d4a-2941-4b0a42393d0c@akeo.ie>
On Thu, Nov 07, 2019 at 05:35:27PM +0000, Pete Batard wrote:
> On 2019.11.07 17:27, Leif Lindholm wrote:
> > On Thu, Nov 07, 2019 at 05:05:20PM +0000, Pete Batard wrote:
> > > 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.
> >
> > Sure.
> >
> > > > 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.
> >
> > Either would be fine - I was just hoping there might be a recognized
> > standard name for them :)
>
> Well, as far as I know, the recognized standard name is "commandline" as per
> https://www.raspberrypi.org/documentation/configuration/config-txt/boot.md
>
> For instance there exists an option called disable_commandline_tags which
> pertains to what we are talking about.
Right. I meant something non-context-dependent. Nevermind :)
> > So, I could update the subject line to
> > Platform/RPi: Prevent external boot arguments over-read
> > in order to keep it short, and change "command line" in the commit
> > message body to "external boot arguments" - does that work for you?
>
> If you can do that, that's great. Thanks!
Done. And with that:
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
Pushed as 92f06ccddfcf.
Thanks!
/
Leif
> /Pete
>
> >
> > Regards,
> >
> > Leif
> >
> > > 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
> > > > >
> > >
>
prev parent reply other threads:[~2019-11-07 18:09 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
2019-11-07 17:27 ` Leif Lindholm
2019-11-07 17:35 ` Pete Batard
2019-11-07 18:09 ` Leif Lindholm [this message]
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=20191107180937.GX16820@bivouac.eciton.net \
--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