Date: Wed, 22 Mar 2017 17:28:53 +0000 (UTC) From: Ngie Cooper <ngie@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r315717 - head/usr.sbin/ctm/ctm Message-ID: <201703221728.v2MHSrZe020088@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: ngie Date: Wed Mar 22 17:28:53 2017 New Revision: 315717 URL: https://svnweb.freebsd.org/changeset/base/315717 Log: ctm: fix memory leaks in Pass1(..) Call `Delete(..)` (a free(3) wrapper) on `name` when bailing from the function. Submitted by: Tom Rix <trix@juniper.net> Reviewed by: ngie Differential Revision: D10097 Sponsored by: Dell EMC Isilon, Juniper Modified: head/usr.sbin/ctm/ctm/ctm_pass1.c Modified: head/usr.sbin/ctm/ctm/ctm_pass1.c ============================================================================== --- head/usr.sbin/ctm/ctm/ctm_pass1.c Wed Mar 22 17:06:57 2017 (r315716) +++ head/usr.sbin/ctm/ctm/ctm_pass1.c Wed Mar 22 17:28:53 2017 (r315717) @@ -114,6 +114,7 @@ Pass1(FILE *fd, unsigned applied) } if (name[0] == '/') { Fatal("Absolute paths are illegal."); + Delete(name); return Exit_Mess; } q = name; @@ -121,6 +122,7 @@ Pass1(FILE *fd, unsigned applied) if (q[0] == '.' && q[1] == '.') if (q[2] == '/' || q[2] == '\0') { Fatal("Paths containing '..' are illegal."); + Delete(name); return Exit_Mess; } if ((q = strchr(q, '/')) == NULL)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201703221728.v2MHSrZe020088>