Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 10 May 2016 20:09:40 +0000 (UTC)
From:      "Conrad E. Meyer" <cem@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r299385 - head/usr.bin/sdiff
Message-ID:  <201605102009.u4AK9e82054263@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: cem
Date: Tue May 10 20:09:40 2016
New Revision: 299385
URL: https://svnweb.freebsd.org/changeset/base/299385

Log:
  sdiff(1): Fix potential NULL deref in cleanup path
  
  In the presence of the --diff-pid argument, it is possible for 'diffpipe' to be
  NULL.  Only fclose() it if it was initialized.
  
  Reported by:	Coverity
  CID:		1355183
  Sponsored by:	EMC / Isilon Storage Division

Modified:
  head/usr.bin/sdiff/sdiff.c

Modified: head/usr.bin/sdiff/sdiff.c
==============================================================================
--- head/usr.bin/sdiff/sdiff.c	Tue May 10 20:02:03 2016	(r299384)
+++ head/usr.bin/sdiff/sdiff.c	Tue May 10 20:09:40 2016	(r299385)
@@ -430,7 +430,8 @@ main(int argc, char **argv)
 		/* Close open files and pipe, delete temps */
 		fclose(file1);
 		fclose(file2);
-		fclose(diffpipe);
+		if (diffpipe != NULL)
+			fclose(diffpipe);
 		if (tmp1)
 			if (unlink(tmp1))
 				warn("Error deleting %s.", tmp1);



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201605102009.u4AK9e82054263>