svn commit: r334216 - head/usr.sbin/bhyve
Marcelo Araujo
araujo at FreeBSD.org
Fri May 25 18:54:41 UTC 2018
Author: araujo
Date: Fri May 25 18:54:40 2018
New Revision: 334216
URL: https://svnweb.freebsd.org/changeset/base/334216
Log:
After a long discussion about assert(3), we gonna use a HardenedBSD
approach to chek strdup(3) memory allocation.
Submitted by: Shaw Webb <shawn.webb at hardenedbsd.org>
Reported by: brooks
Obtained from: HardenedBSD
Modified:
head/usr.sbin/bhyve/bhyverun.c
Modified: head/usr.sbin/bhyve/bhyverun.c
==============================================================================
--- head/usr.sbin/bhyve/bhyverun.c Fri May 25 18:11:13 2018 (r334215)
+++ head/usr.sbin/bhyve/bhyverun.c Fri May 25 18:54:40 2018 (r334216)
@@ -193,7 +193,8 @@ topology_parse(const char *opt)
c = 1, n = 1, s = 1, t = 1;
ns = false, scts = false;
str = strdup(opt);
- assert(str != NULL);
+ if (str == NULL)
+ goto out;
while ((cp = strsep(&str, ",")) != NULL) {
if (sscanf(cp, "%i%n", &tmp, &chk) == 1) {
@@ -225,6 +226,7 @@ topology_parse(const char *opt)
goto out;
}
free(str);
+ str = NULL;
/*
* Range check 1 <= n <= UINT16_MAX all values
@@ -253,7 +255,8 @@ topology_parse(const char *opt)
return(0);
out:
- free(str);
+ if (str != NULL)
+ free(str);
return (-1);
}
More information about the svn-src-all
mailing list