Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 8 Jan 2020 17:37:21 +0000 (UTC)
From:      Konstantin Belousov <kib@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r356503 - head/libexec/rtld-elf
Message-ID:  <202001081737.008HbLxl080417@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: kib
Date: Wed Jan  8 17:37:20 2020
New Revision: 356503
URL: https://svnweb.freebsd.org/changeset/base/356503

Log:
  rtld: fix after r356300
  
  binpath local was changed from char array to a char pointer, update
  strlcpy/strlcat uses.
  
  Reported by:	Coverity through vangyzen
  CID:	1412239 and 1412240
  Reviewed by:	emaste, imp, vangyzen
  Sponsored by:	The FreeBSD Foundation
  MFC after:	1 week
  Differential revision:	https://reviews.freebsd.org/D23090

Modified:
  head/libexec/rtld-elf/rtld.c

Modified: head/libexec/rtld-elf/rtld.c
==============================================================================
--- head/libexec/rtld-elf/rtld.c	Wed Jan  8 17:31:54 2020	(r356502)
+++ head/libexec/rtld-elf/rtld.c	Wed Jan  8 17:37:20 2020	(r356503)
@@ -5531,15 +5531,12 @@ open_binary_fd(const char *argv0, bool search_in_path,
 		fd = -1;
 		errno = ENOENT;
 		while ((pe = strsep(&pathenv, ":")) != NULL) {
-			if (strlcpy(binpath, pe, sizeof(binpath)) >=
-			    sizeof(binpath))
+			if (strlcpy(binpath, pe, PATH_MAX) >= PATH_MAX)
 				continue;
 			if (binpath[0] != '\0' &&
-			    strlcat(binpath, "/", sizeof(binpath)) >=
-			    sizeof(binpath))
+			    strlcat(binpath, "/", PATH_MAX) >= PATH_MAX)
 				continue;
-			if (strlcat(binpath, argv0, sizeof(binpath)) >=
-			    sizeof(binpath))
+			if (strlcat(binpath, argv0, PATH_MAX) >= PATH_MAX)
 				continue;
 			fd = open(binpath, O_RDONLY | O_CLOEXEC | O_VERIFY);
 			if (fd != -1 || errno != ENOENT) {



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