svn commit: r293924 - stable/10/sys/dev/sfxge/common

Andrew Rybchenko arybchik at FreeBSD.org
Thu Jan 14 14:13:14 UTC 2016


Author: arybchik
Date: Thu Jan 14 14:13:13 2016
New Revision: 293924
URL: https://svnweb.freebsd.org/changeset/base/293924

Log:
  MFC r291398
  
  sfxge: cleanup: report error on failure path in efx_vpd_hunk_verify
  
  If the VPD is corrupt and contains an 'RV' keyword before the
  END tag, then this function could return without setting the
  return code to report the error.
  
  Found by prefast.
  
  Submitted by:   Andy Moreton <amoreton at solarflare.com>
  Sponsored by:   Solarflare Communications, Inc.

Modified:
  stable/10/sys/dev/sfxge/common/efx_vpd.c
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/sys/dev/sfxge/common/efx_vpd.c
==============================================================================
--- stable/10/sys/dev/sfxge/common/efx_vpd.c	Thu Jan 14 14:11:56 2016	(r293923)
+++ stable/10/sys/dev/sfxge/common/efx_vpd.c	Thu Jan 14 14:13:13 2016	(r293924)
@@ -545,8 +545,10 @@ efx_vpd_hunk_verify(
 
 		for (pos = 0; pos != taglen; pos += 3 + keylen) {
 			/* RV keyword must be the last in the block */
-			if (cksummed)
+			if (cksummed) {
+				rc = EFAULT;
 				goto fail2;
+			}
 
 			if ((rc = efx_vpd_next_keyword(data + offset,
 			    taglen, pos, &keyword, &keylen)) != 0)


More information about the svn-src-all mailing list