Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 26 May 2018 03:13:10 +0800
From:      Marcelo Araujo <araujobsdport@gmail.com>
To:        Konstantin Belousov <kostikbel@gmail.com>
Cc:        src-committers <src-committers@freebsd.org>, svn-src-all@freebsd.org,  svn-src-head@freebsd.org
Subject:   Re: svn commit: r334216 - head/usr.sbin/bhyve
Message-ID:  <CAOfEmZj_3GzPkWDcY4AKdsRUxP0B3cCUkxf=B9iQXanh1hYRaA@mail.gmail.com>
In-Reply-To: <20180525190846.GL88128@kib.kiev.ua>
References:  <201805251854.w4PIseSi073002@repo.freebsd.org> <20180525190846.GL88128@kib.kiev.ua>

next in thread | previous in thread | raw e-mail | index | archive | help
Fixed at r334219.

Thanks.

2018-05-26 3:08 GMT+08:00 Konstantin Belousov <kostikbel@gmail.com>:

> On Fri, May 25, 2018 at 06:54:40PM +0000, Marcelo Araujo wrote:
> > Author: araujo
> > Date: Fri May 25 18:54:40 2018
> > New Revision: 334216
> > URL: https://svnweb.freebsd.org/changeset/base/334216
> >
> > Log:
> >   After a long discussion about assert(3), we gonna use a HardenedBSD
> >   approach to chek strdup(3) memory allocation.
> >
> >   Submitted by:       Shaw Webb <shawn.webb@hardenedbsd.org>
> >   Reported by:        brooks
> >   Obtained from:      HardenedBSD
> >
> > Modified:
> >   head/usr.sbin/bhyve/bhyverun.c
> >
> > Modified: head/usr.sbin/bhyve/bhyverun.c
> > ============================================================
> ==================
> > --- head/usr.sbin/bhyve/bhyverun.c    Fri May 25 18:11:13 2018
> (r334215)
> > +++ head/usr.sbin/bhyve/bhyverun.c    Fri May 25 18:54:40 2018
> (r334216)
> > @@ -193,7 +193,8 @@ topology_parse(const char *opt)
> >       c = 1, n = 1, s = 1, t = 1;
> >       ns = false, scts = false;
> >       str = strdup(opt);
> > -     assert(str != NULL);
> > +     if (str == NULL)
> > +             goto out;
> >
> >       while ((cp = strsep(&str, ",")) != NULL) {
> >               if (sscanf(cp, "%i%n", &tmp, &chk) == 1) {
> > @@ -225,6 +226,7 @@ topology_parse(const char *opt)
> >                       goto out;
> >       }
> >       free(str);
> > +     str = NULL;
> >
> >       /*
> >        * Range check 1 <= n <= UINT16_MAX all values
> > @@ -253,7 +255,8 @@ topology_parse(const char *opt)
> >       return(0);
> >
> >  out:
> > -     free(str);
> > +     if (str != NULL)
> This check is useless.  Free(3) is fine handling NULL argument.
>
> > +             free(str);
> >       return (-1);
> >  }
> >
>



-- 

-- 
Marcelo Araujo            (__)araujo@FreeBSD.org
\\\'',)http://www.FreeBSD.org <http://www.freebsd.org/>;   \/  \ ^
Power To Server.         .\. /_)



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAOfEmZj_3GzPkWDcY4AKdsRUxP0B3cCUkxf=B9iQXanh1hYRaA>