Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 28 Feb 2017 23:03:51 +0000 (UTC)
From:      Alan Somers <asomers@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org
Subject:   svn commit: r314431 - stable/11/cddl/usr.sbin/zfsd
Message-ID:  <201702282303.v1SN3px8090563@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: asomers
Date: Tue Feb 28 23:03:51 2017
New Revision: 314431
URL: https://svnweb.freebsd.org/changeset/base/314431

Log:
  MFC r312396:
  
  Fix an unchecked return value in zfsd
  
  It's pretty unlikely to actually hit this, but good to check it anyway
  
  Reported by:	Coverity
  CID:		1362018
  MFC after:	4 weeks
  Sponsored by:	Spectra Logic Corp

Modified:
  stable/11/cddl/usr.sbin/zfsd/case_file.cc
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/cddl/usr.sbin/zfsd/case_file.cc
==============================================================================
--- stable/11/cddl/usr.sbin/zfsd/case_file.cc	Tue Feb 28 22:58:19 2017	(r314430)
+++ stable/11/cddl/usr.sbin/zfsd/case_file.cc	Tue Feb 28 23:03:51 2017	(r314431)
@@ -656,8 +656,11 @@ CaseFile::DeSerializeFile(const char *fi
 		uint64_t vdevGUID;
 		nvlist_t *vdevConf;
 
-		sscanf(fileName, "pool_%" PRIu64 "_vdev_%" PRIu64 ".case",
-		       &poolGUID, &vdevGUID);
+		if (sscanf(fileName, "pool_%" PRIu64 "_vdev_%" PRIu64 ".case",
+		       &poolGUID, &vdevGUID) != 2) {
+			throw ZfsdException("CaseFile::DeSerialize: "
+			    "Unintelligible CaseFile filename %s.\n", fileName);
+		}
 		existingCaseFile = Find(Guid(poolGUID), Guid(vdevGUID));
 		if (existingCaseFile != NULL) {
 			/*



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