Date: Thu, 14 Feb 2019 15:39:17 +0000 (UTC) From: Stefan Esser <se@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: r344125 - stable/11/usr.bin/whereis Message-ID: <201902141539.x1EFdHv0028828@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: se Date: Thu Feb 14 15:39:17 2019 New Revision: 344125 URL: https://svnweb.freebsd.org/changeset/base/344125 Log: MFC r343408: Silence Clang Scan warnings regarding unsafe use of strcp(). While these warnings are false positives, the use of strdup() instead of malloc() and strcpy() simplifies and clarifies the code. A bogus assignment to a variable (whose previous value may be required in a later block) has also been removed. Modified: stable/11/usr.bin/whereis/whereis.c Directory Properties: stable/11/ (props changed) Modified: stable/11/usr.bin/whereis/whereis.c ============================================================================== --- stable/11/usr.bin/whereis/whereis.c Thu Feb 14 15:33:04 2019 (r344124) +++ stable/11/usr.bin/whereis/whereis.c Thu Feb 14 15:39:17 2019 (r344125) @@ -285,9 +285,9 @@ defaults(void) bindirs[nele] = NULL; if ((cp = getenv("PATH")) != NULL) { /* don't destroy the original environment... */ - if ((b = malloc(strlen(cp) + 1)) == NULL) + b = strdup(cp); + if (b == NULL) abort(); - strcpy(b, cp); decolonify(b, &bindirs, &nele); } } @@ -301,18 +301,18 @@ defaults(void) err(EX_OSERR, "error processing manpath results"); if ((b = strchr(buf, '\n')) != NULL) *b = '\0'; - if ((b = malloc(strlen(buf) + 1)) == NULL) + b = strdup(buf); + if (b == NULL) abort(); - strcpy(b, buf); nele = 0; decolonify(b, &mandirs, &nele); } /* -s defaults to precompiled list, plus subdirs of /usr/ports */ if (!sourcedirs) { - if ((b = malloc(strlen(sourcepath) + 1)) == NULL) + b = strdup(sourcepath); + if (b == NULL) abort(); - strcpy(b, sourcepath); nele = 0; decolonify(b, &sourcedirs, &nele); @@ -523,11 +523,9 @@ main(int argc, char **argv) * man -w found plain source * page, use it. */ - s = strlen(buf); - cp2 = malloc(s + 1); + cp2 = strdup(buf); if (cp2 == NULL) abort(); - strcpy(cp2, buf); } if (man == NULL) {
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201902141539.x1EFdHv0028828>