Date: Sun, 19 Feb 2017 18:02:07 +0000 From: Edward Tomasz Napierala <trasz@FreeBSD.org> To: Cy Schubert <Cy.Schubert@komquats.com> Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r313943 - head/sbin/mdconfig Message-ID: <20170219180207.GA6808@brick> In-Reply-To: <201702191619.v1JGJxkw013169@slippy.cwsent.com> References: <trasz@FreeBSD.org> <201702191608.v1JG8wAN068829@repo.freebsd.org> <201702191619.v1JGJxkw013169@slippy.cwsent.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 0219T0819, Cy Schubert wrote: > In message <201702191608.v1JG8wAN068829@repo.freebsd.org>, Edward Tomasz > Napier > ala writes: > > Author: trasz > > Date: Sun Feb 19 16:08:58 2017 > > New Revision: 313943 > > URL: https://svnweb.freebsd.org/changeset/base/313943 > > > > Log: > > Make mdconfig(8) not segfault when the kernel returns garbage data. > > > > MFC after: 2 weeks > > Sponsored by: DARPA, AFRL > > > > Modified: > > head/sbin/mdconfig/mdconfig.c > > > > Modified: head/sbin/mdconfig/mdconfig.c > > ============================================================================= > > = > > --- head/sbin/mdconfig/mdconfig.c Sun Feb 19 14:53:59 2017 (r31394 > > 2) > > +++ head/sbin/mdconfig/mdconfig.c Sun Feb 19 16:08:58 2017 (r31394 > > 3) > > @@ -452,8 +452,8 @@ md_list(const char *units, int opt, cons > > } > > gc = &pp->lg_config; > > type = geom_config_get(gc, "type"); > > - if (strcmp(type, "vnode") == 0 || > > - strcmp(type, "preload") == 0) { > > + if (type != NULL && (strcmp(type, "vnode") == 0 || > > + strcmp(type, "preload") == 0)) { > > file = geom_config_get(gc, "file"); > > if (fflag != NULL && > > strcmp(fflag, file) != 0) > > > > > > I wonder why the kernel is returning garbage data? Because of a bug. I hadn't tracked that down yet, though, and while kernel should be trusted, some additional error checking won't hurt.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20170219180207.GA6808>