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] [day] [month] [year] [list]
Message-ID: <20250225105253.350285b9@gandalf.local.home>
Date: Tue, 25 Feb 2025 10:52:53 -0500
From: Steven Rostedt <rostedt@...dmis.org>
To: Dheeraj Reddy Jonnalagadda <dheeraj.linuxdev@...il.com>
Cc: catalin.marinas@....com, linux-kernel@...r.kernel.org
Subject: Re: [PATCH scripts] scripts/sorttable: Fix resource leak in
 parse_symbols()

On Tue, 25 Feb 2025 11:07:24 +0530
Dheeraj Reddy Jonnalagadda <dheeraj.linuxdev@...il.com> wrote:

> Fix a resource leak in parse_symbols() where the file pointer fp
> was not closed if add_field() returned an error. This caused an
> open file descriptor to remain unclosed. Ensure that fp is properly
> closed before returning an error.
> 
> Fixes: ef378c3b8233 ("scripts/sorttable: Zero out weak functions in mcount_loc table")

Thanks, but this isn't needed. If it returns -1 it will exit the program.
When a program exits, it will close all opened file descriptors.

I may add it just because it's proper to close descriptors in case this
function is used for something else (highly unlikely). But it's not fixing
anything, and there is no "leak".

-- Steve


> Signed-off-by: Dheeraj Reddy Jonnalagadda <dheeraj.linuxdev@...il.com>
> ---
>  scripts/sorttable.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/scripts/sorttable.c b/scripts/sorttable.c
> index 23c7e0e6c024..b9b066c1afee 100644
> --- a/scripts/sorttable.c
> +++ b/scripts/sorttable.c
> @@ -662,8 +662,10 @@ static int parse_symbols(const char *fname)
>  
>  		addr = strtoull(addr_str, NULL, 16);
>  		size = strtoull(size_str, NULL, 16);
> -		if (add_field(addr, size) < 0)
> +		if (add_field(addr, size) < 0) {
> +			fclose(fp);
>  			return -1;
> +		}
>  	}
>  	fclose(fp);
>  


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ