svn commit: r271720 - head/sbin/savecore

Bryan Drewery bdrewery at FreeBSD.org
Wed Sep 17 19:09:58 UTC 2014


Author: bdrewery
Date: Wed Sep 17 19:09:58 2014
New Revision: 271720
URL: http://svnweb.freebsd.org/changeset/base/271720

Log:
  If fgets(3) fails in getbounds(), show strerror(3) if not an EOF. Also fix
  a FILE* leak in getbounds().
  
  Submitted by:	Conrad Meyer <conrad.meyer at isilon.com>
  PR:		192032
  Sponsored by:	EMC / Isilon Storage Division
  MFC after:	1 week

Modified:
  head/sbin/savecore/savecore.c

Modified: head/sbin/savecore/savecore.c
==============================================================================
--- head/sbin/savecore/savecore.c	Wed Sep 17 19:01:22 2014	(r271719)
+++ head/sbin/savecore/savecore.c	Wed Sep 17 19:09:58 2014	(r271720)
@@ -151,7 +151,10 @@ getbounds(void) {
 	}
 
 	if (fgets(buf, sizeof buf, fp) == NULL) {
-		syslog(LOG_WARNING, "unable to read from bounds, using 0");
+		if (feof(fp))
+			syslog(LOG_WARNING, "bounds file is empty, using 0");
+		else
+			syslog(LOG_WARNING, "bounds file: %s", strerror(errno));
 		fclose(fp);
 		return (ret);
 	}
@@ -160,6 +163,7 @@ getbounds(void) {
 	ret = (int)strtol(buf, NULL, 10);
 	if (ret == 0 && (errno == EINVAL || errno == ERANGE))
 		syslog(LOG_WARNING, "invalid value found in bounds, using 0");
+	fclose(fp);
 	return (ret);
 }
 


More information about the svn-src-head mailing list