Openwall GNU/*/Linux - a small security-enhanced Linux distro for servers
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date: Fri, 1 May 2015 12:34:04 -0400
From: Rich Felker <dalias@...c.org>
To: musl@...ts.openwall.com
Subject: Re: [PATCH] Return rv if memory is not 'calloc'ed in
 getgrent_a

On Fri, May 01, 2015 at 11:50:10AM -0400, Rich Felker wrote:
> On Fri, May 01, 2015 at 05:17:37AM -0700, Kevin Bowling wrote:
> > >From 714875b1a614c4ac3b7a04a9d419b7f57d28e336 Mon Sep 17 00:00:00 2001
> > From: Kevin Bowling <kevin.bowling@...009.com>
> > Date: Fri, 1 May 2015 05:11:12 -0700
> > Subject: [PATCH] Return rv if memory is not 'calloc'ed in getgrent_a
> > 
> > ---
> >  src/passwd/getgrent_a.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> > 
> > diff --git a/src/passwd/getgrent_a.c b/src/passwd/getgrent_a.c
> > index ecd2f2e..80fbc42 100644
> > --- a/src/passwd/getgrent_a.c
> > +++ b/src/passwd/getgrent_a.c
> > @@ -48,7 +48,7 @@ int __getgrent_a(FILE *f, struct group *gr, char **line,
> > size_t *size, char ***m
> >                 rv = errno;
> >                 free(*line);
> >                 *line = 0;
> > -               return 0;
> > +               return rv;
> >         }
> >         if (*mems) {
> >                 mem[0][0] = mems;
> > --
> > 2.3.7
> 
> There's definitely a bug here but I don't think this patch fixes it.
> The exit code, which needs to be run, is still bypassed. There needs
> to be a "goto end" or similar instead of return, I think.

Should be fixed in commit 58fa856960d3073bcf84adac8e8bd6c555674271.
Let me know if you think there's still a problem. Thanks for the bug
report!

Rich

Powered by blists - more mailing lists

Your e-mail address:

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.