Author: araujo
Date: Tue Aug 21 23:11:26 2018
New Revision: 338164
URL: https://svnweb.freebsd.org/changeset/base/338164

Log:
  Fix resource leak when using strdup(3).
  
  Reported by:  Coverity
  CID:          1394929
  Sponsored by: iXsystems Inc.

Modified:
  head/usr.sbin/bhyve/pci_nvme.c

Modified: head/usr.sbin/bhyve/pci_nvme.c
==============================================================================
--- head/usr.sbin/bhyve/pci_nvme.c      Tue Aug 21 23:03:02 2018        
(r338163)
+++ head/usr.sbin/bhyve/pci_nvme.c      Tue Aug 21 23:11:26 2018        
(r338164)
@@ -1726,6 +1726,7 @@ pci_nvme_parse_opts(struct pci_nvme_softc *sc, char *o
                        sc->nvstore.sectsz_bits = 12;
                        if (sc->nvstore.ctx == NULL) {
                                perror("Unable to allocate RAM");
+                               free(uopt);
                                return (-1);
                        }
                } else if (optidx == 0) {
@@ -1734,12 +1735,14 @@ pci_nvme_parse_opts(struct pci_nvme_softc *sc, char *o
                        sc->nvstore.ctx = blockif_open(xopts, bident);
                        if (sc->nvstore.ctx == NULL) {
                                perror("Could not open backing file");
+                               free(uopt);
                                return (-1);
                        }
                        sc->nvstore.type = NVME_STOR_BLOCKIF;
                        sc->nvstore.size = blockif_size(sc->nvstore.ctx);
                } else {
                        fprintf(stderr, "Invalid option %s\n", xopts);
+                       free(uopt);
                        return (-1);
                }
 
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to