Date: Thu, 16 Aug 2018 23:16:30 +0000 From: Brooks Davis <brooks@freebsd.org> To: araujo@freebsd.org Cc: "Rodney W. Grimes" <rgrimes@freebsd.org>, Warner Losh <imp@bsdimp.com>, John-Mark Gurney <jmg@funkthat.com>, src-committers <src-committers@freebsd.org>, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r337887 - head/usr.sbin/bhyve Message-ID: <20180816231630.GA10866@spindle.one-eyed-alien.net> In-Reply-To: <CAOfEmZjtObzMzp6pa2QY5105t82jC155bXOjb9DKn9=pTnwYEQ@mail.gmail.com> References: <CANCZdfqQea=vrJPJ1mafjuX8ZTyx6bFW=WpawdVfyq45v40hAw@mail.gmail.com> <201808161929.w7GJTWfS055411@pdx.rh.CN85.dnsmgr.net> <CAOfEmZjtObzMzp6pa2QY5105t82jC155bXOjb9DKn9=pTnwYEQ@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
--azLHFNyN32YCQGCU Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Fri, Aug 17, 2018 at 07:04:05AM +0800, Marcelo Araujo wrote: > 2018-08-17 3:29 GMT+08:00 Rodney W. Grimes <freebsd@pdx.rh.cn85.dnsmgr.ne= t>: >=20 > > > On Thu, Aug 16, 2018 at 11:06 AM, John-Mark Gurney <jmg@funkthat.com> > > wrote: > > > > > > > Marcelo Araujo wrote this message on Thu, Aug 16, 2018 at 06:31 +00= 00: > > > > > Author: araujo > > > > > Date: Thu Aug 16 06:31:54 2018 > > > > > New Revision: 337887 > > > > > URL: https://svnweb.freebsd.org/changeset/base/337887 > > > > > > > > > > Log: > > > > > Add a comment explaining how the PSN works and why there is no > > need for > > > > > a null terminator. Also mark CID 1394825 as intentional. > > > > > > > > > > Reported by: Coverity > > > > > CID: 1394825 > > > > > MFC after: 1 week > > > > > Sponsored by: iXsystems Inc. > > > > > > > > > > Modified: > > > > > head/usr.sbin/bhyve/pci_nvme.c > > > > > > > > > > Modified: head/usr.sbin/bhyve/pci_nvme.c > > > > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > > > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > > > > > --- head/usr.sbin/bhyve/pci_nvme.c Thu Aug 16 06:20:25 2018 > > > > (r337886) > > > > > +++ head/usr.sbin/bhyve/pci_nvme.c Thu Aug 16 06:31:54 2018 > > > > (r337887) > > > > > @@ -1714,6 +1714,11 @@ pci_nvme_parse_opts(struct pci_nvme_softc = *sc, > > > > char *o > > > > > > > > [...] > > > > > > > > > memset(sc->ctrldata.sn, 0, sizeof(sc-> > > ctrldata.sn > > > > )); > > > > > strncpy(sc->ctrldata.sn, config, > > > > > sizeof(sc->ctrldata.sn)); > > > > > > > > This memset is unneeded, as strncpy will write NUL bytes to fill out > > > > the buffer: > > > > If src is less than len characters long, the remainder of > > > > dst is filled with `\0' characters. > > > > > > > > > > It also looks like the comment was wrong. The newest NVMe standards s= ay > > > these fields should be 7-bit and space-padded. > > > > lol, which is what the vendor that caused me grief with > > ata serial numbers did decades ago. > > > > -- > > Rod Grimes > > rgrimes@freebsd.org > > >=20 > I have discussed a bit with imp@, but I will drop the patch here to get > other peoples opinion too. > So, name space and firmware number also need to be padded with spaces. >=20 > I couldn't think in any other better way to do that. >=20 > Does this patch looks reasonable? > https://people.freebsd.org/~araujo/pci_nvme.diff You should check that len<=3Ddst_size and at least truncate rather than overflowing. If the strings from userspace you need to return or log an error, if they come from the kernel, you can panic. -- Brooks --azLHFNyN32YCQGCU Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEcBAEBAgAGBQJbdgXOAAoJEKzQXbSebgfAND0H/RrNL+PKlxzh62SnGqwDphjE IsS4YFIxDyYeDEhE0FeWZe9DS749jXxDbFiVT/8TL1FLb3v1RbJ2oAuRQwqRbFiG NJfo0/s3wGL2e9ebsmkGJKmFXvOI0p8AG3MARgmDSe7vAkOWty6mYzfos/OgODht mDE0BOOUc4Obz+nUU+4LAGVHR5TOcEP30HI9rcC1SXl96hZ0Im6pQ04FuYM75ydW mETJn1rXThSFmDP/ie87uxEA5ZU7DQIIy4sa+Om3w1nkQuzl19cO3farOf/If141 I6ESIXz8C58fWEHkVD8SoXjTzDqVvrfy6Yhm/odCMJbyXFQIdM5BqGNPUUYWD3g= =0qyg -----END PGP SIGNATURE----- --azLHFNyN32YCQGCU--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20180816231630.GA10866>