]> www.infradead.org Git - users/hch/nvme-cli.git/commitdiff
fabrics: fix potential memory leaks
authorYair Elharrar <yair@excelero.com>
Mon, 29 Jul 2019 18:47:17 +0000 (21:47 +0300)
committerKeith Busch <kbusch@kernel.org>
Thu, 23 Apr 2020 20:17:54 +0000 (14:17 -0600)
See issue #505

Signed-off-by: Yair Elharrar <yair@excelero.com>
fabrics.c

index e2c9bfb37177aca0281f5664db470c1732736a20..7b2d151cdbd455b59ff40b0fd217cef038775e17 100644 (file)
--- a/fabrics.c
+++ b/fabrics.c
@@ -1225,7 +1225,7 @@ static int discover_from_conf_file(const char *desc, char *argstr,
 
                err = argconfig_parse(argc, argv, desc, opts);
                if (err)
-                       continue;
+                       goto free_and_continue;
 
                if (cfg.persistent && !cfg.keep_alive_tmo)
                        cfg.keep_alive_tmo = NVMF_DEF_DISC_TMO;
@@ -1233,15 +1233,14 @@ static int discover_from_conf_file(const char *desc, char *argstr,
                err = build_options(argstr, BUF_SIZE, true);
                if (err) {
                        ret = err;
-                       continue;
+                       goto free_and_continue;
                }
 
                err = do_discover(argstr, connect);
-               if (err) {
+               if (err)
                        ret = err;
-                       continue;
-               }
 
+free_and_continue:
                free(args);
                free(argv);
        }