All of lore.kernel.org
 help / color / mirror / Atom feed
From: Julien Masson <jmasson@baylibre.com>
To: Mattijs Korpershoek <mkorpershoek@baylibre.com>,
	Tom Rini <trini@konsulko.com>,
	Nicolas Belin <nbelin@baylibre.com>
Cc: Guillaume La Roque <glaroque@baylibre.com>,
	Aaron Kling <webgeek1234@gmail.com>,
	Julien Masson <jmasson@baylibre.com>, <u-boot@lists.denx.de>,
	Mattijs Korpershoek <mkorpershoek@baylibre.com>
Subject: Re: [PATCH] boot: android: Check kcmdline's for NULL in android_image_get_kernel()
Date: Thu, 23 Jan 2025 14:29:12 +0100	[thread overview]
Message-ID: <877c6ld5g7.fsf@baylibre.com> (raw)
In-Reply-To: <20250113-kcmdline-extra-fix-v1-1-03cc9c039159@baylibre.com>


On Thu 23 Jan 2025 at 14:28, Mattijs Korpershoek <mkorpershoek@baylibre.com> wrote:

> From: Aaron Kling <webgeek1234@gmail.com>
> 
> kcmdline and kcmdline_extra strings can be NULL. In that case, we still
> read the content from 0x00000 and pass that to the kernel, which is
> completely wrong.
> 
> Fix android_image_get_kernel() to check for NULL before checking if
> they are empty strings.
> 
> Fixes: 53a0ddb6d3be ("boot: android: fix extra command line support")
> Signed-off-by: Aaron Kling <webgeek1234@gmail.com>
> Signed-off-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
> ---
> Thanks to Aaron for reporting this on the aosp-devs discord and for
> fixing this.
> ---
>  boot/image-android.c | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/boot/image-android.c b/boot/image-android.c
> index 60a422dfb74a6c683b3cf9d2b19b3ad1dbd0d151..fa4e14ca4698e1dea105388dd2ea590024cafa58 100644
> --- a/boot/image-android.c
> +++ b/boot/image-android.c
> @@ -337,12 +337,12 @@ int android_image_get_kernel(const void *hdr,
>  	if (bootargs)
>  		len += strlen(bootargs);
>  
> -	if (*img_data.kcmdline) {
> +	if (img_data.kcmdline && *img_data.kcmdline) {
>  		printf("Kernel command line: %s\n", img_data.kcmdline);
>  		len += strlen(img_data.kcmdline) + (len ? 1 : 0); /* +1 for extra space */
>  	}
>  
> -	if (*img_data.kcmdline_extra) {
> +	if (img_data.kcmdline_extra && *img_data.kcmdline_extra) {
>  		printf("Kernel extra command line: %s\n", img_data.kcmdline_extra);
>  		len += strlen(img_data.kcmdline_extra) + (len ? 1 : 0); /* +1 for extra space */
>  	}
> @@ -357,13 +357,13 @@ int android_image_get_kernel(const void *hdr,
>  	if (bootargs)
>  		strcpy(newbootargs, bootargs);
>  
> -	if (*img_data.kcmdline) {
> +	if (img_data.kcmdline && *img_data.kcmdline) {
>  		if (*newbootargs) /* If there is something in newbootargs, a space is needed */
>  			strcat(newbootargs, " ");
>  		strcat(newbootargs, img_data.kcmdline);
>  	}
>  
> -	if (*img_data.kcmdline_extra) {
> +	if (img_data.kcmdline_extra && *img_data.kcmdline_extra) {
>  		if (*newbootargs) /* If there is something in newbootargs, a space is needed */
>  			strcat(newbootargs, " ");
>  		strcat(newbootargs, img_data.kcmdline_extra);
> 
> ---
> base-commit: bc157bb6667ed97e33be8ce8436c28baa275b295
> change-id: 20250113-kcmdline-extra-fix-509331e4d7f3
> 
> Best regards,
> -- 
> Mattijs Korpershoek <mkorpershoek@baylibre.com>
> 

Reviewed-by: Julien Masson <jmasson@baylibre.com>

  parent reply	other threads:[~2025-01-23 13:29 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-01-13  9:11 [PATCH] boot: android: Check kcmdline's for NULL in android_image_get_kernel() Mattijs Korpershoek
2025-01-13 13:22 ` Nicolas Belin
2025-01-23 13:29 ` Julien Masson [this message]
2025-01-23 13:52   ` Sam Day
2025-01-23 14:20 ` Mattijs Korpershoek

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-all 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=877c6ld5g7.fsf@baylibre.com \
    --to=jmasson@baylibre.com \
    --cc=glaroque@baylibre.com \
    --cc=mkorpershoek@baylibre.com \
    --cc=nbelin@baylibre.com \
    --cc=trini@konsulko.com \
    --cc=u-boot@lists.denx.de \
    --cc=webgeek1234@gmail.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.