lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID:
 <DM6PR12MB451638CD4E7B3DC33F16E58AD8F3A@DM6PR12MB4516.namprd12.prod.outlook.com>
Date: Wed, 22 Oct 2025 12:55:45 +0000
From: Danielle Ratson <danieller@...dia.com>
To: Johannes Eigner <johannes.eigner@...berle.de>, "netdev@...r.kernel.org"
	<netdev@...r.kernel.org>
CC: Michal Kubecek <mkubecek@...e.cz>, Stephan Wurm <stephan.wurm@...berle.de>
Subject: RE: [PATCH ethtool 1/2] sfpid: Fix JSON output of SFP diagnostics

> -----Original Message-----
> From: Johannes Eigner <johannes.eigner@...berle.de>
> Sent: Tuesday, 21 October 2025 17:00
> To: netdev@...r.kernel.org
> Cc: Michal Kubecek <mkubecek@...e.cz>; Danielle Ratson
> <danieller@...dia.com>; Stephan Wurm <stephan.wurm@...berle.de>;
> Johannes Eigner <johannes.eigner@...berle.de>
> Subject: [PATCH ethtool 1/2] sfpid: Fix JSON output of SFP diagnostics
> 
> Close and delete JSON object only after output of SFP diagnostics so
> that it is also JSON formatted. If the JSON object is deleted too early,
> some of the output will not be JSON formatted, resulting in mixed output
> formats.
> 
> Signed-off-by: Johannes Eigner <johannes.eigner@...berle.de>

Hi Johannes,

Please add a fixes tag.

> ---
>  sfpid.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/sfpid.c b/sfpid.c
> index 62acb4f..5216ce3 100644
> --- a/sfpid.c
> +++ b/sfpid.c
> @@ -520,8 +520,6 @@ int sff8079_show_all_nl(struct cmd_context *ctx)
>  	new_json_obj(ctx->json);
>  	open_json_object(NULL);
>  	sff8079_show_all_common(buf);
> -	close_json_object();
> -	delete_json_obj();
> 
>  	/* Finish if A2h page is not present */
>  	if (!(buf[92] & (1 << 6)))
> @@ -537,6 +535,8 @@ int sff8079_show_all_nl(struct cmd_context *ctx)
> 
>  	sff8472_show_all(buf);
>  out:
> +	close_json_object();
> +	delete_json_obj();

If sff8079_get_eeprom_page() fails, then close_json_object() and delete_json_object() lines will be called although the object was never opened.
I think those lines should be after the sff8472_show_all(), but outside the out label.

>  	free(buf);
> 
>  	return ret;
> 
> --
> 2.43.0

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ