Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 4 Aug 2015 10:40:09 +0000 (UTC)
From:      Edward Tomasz Napierala <trasz@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r286283 - head/sys/geom
Message-ID:  <201508041040.t74Ae9j1040814@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: trasz
Date: Tue Aug  4 10:40:08 2015
New Revision: 286283
URL: https://svnweb.freebsd.org/changeset/base/286283

Log:
  Fix panic triggered by code like this:
  
  open("/dev/md0", O_EXEC);
  
  Discussed with:	kib@, mav@
  MFC after:	1 month
  Sponsored by:	The FreeBSD Foundation
  Differential Revision:	https://reviews.freebsd.org/D3051

Modified:
  head/sys/geom/geom_dev.c

Modified: head/sys/geom/geom_dev.c
==============================================================================
--- head/sys/geom/geom_dev.c	Tue Aug  4 09:45:10 2015	(r286282)
+++ head/sys/geom/geom_dev.c	Tue Aug  4 10:40:08 2015	(r286283)
@@ -358,6 +358,13 @@ g_dev_open(struct cdev *dev, int flags, 
 #else
 	e = 0;
 #endif
+
+	/*
+	 * This happens on attempt to open a device node with O_EXEC.
+	 */
+	if (r + w + e == 0)
+		return (EINVAL);
+
 	if (w) {
 		/*
 		 * When running in very secure mode, do not allow



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