From owner-svn-src-all@freebsd.org Fri Dec 4 15:53:38 2020 Return-Path: Delivered-To: svn-src-all@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 9711E4A435C; Fri, 4 Dec 2020 15:53:38 +0000 (UTC) (envelope-from arichardson@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Cncgk3m16z4tHR; Fri, 4 Dec 2020 15:53:38 +0000 (UTC) (envelope-from arichardson@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 73B3662BA; Fri, 4 Dec 2020 15:53:38 +0000 (UTC) (envelope-from arichardson@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 0B4FrcJs066370; Fri, 4 Dec 2020 15:53:38 GMT (envelope-from arichardson@FreeBSD.org) Received: (from arichardson@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 0B4Frcou066369; Fri, 4 Dec 2020 15:53:38 GMT (envelope-from arichardson@FreeBSD.org) Message-Id: <202012041553.0B4Frcou066369@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: arichardson set sender to arichardson@FreeBSD.org using -f From: Alex Richardson Date: Fri, 4 Dec 2020 15:53:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r368337 - in head: . usr.sbin/crunch/crunchgen X-SVN-Group: head X-SVN-Commit-Author: arichardson X-SVN-Commit-Paths: in head: . usr.sbin/crunch/crunchgen X-SVN-Commit-Revision: 368337 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 04 Dec 2020 15:53:38 -0000 Author: arichardson Date: Fri Dec 4 15:53:37 2020 New Revision: 368337 URL: https://svnweb.freebsd.org/changeset/base/368337 Log: crunchgen: fix NULL-deref bug introduced in r364647 While porting over the local changes from CheriBSD for upstreaming, I accidentally committed a broken version of find_entry_point(): we have to return NULL if the value is not found instead of a value with ep->name == NULL, since the checks in main were changed to check ep instead of ep->name for NULL. This only matters if the crunched tool cannot be found using normal lookup and one of the fallback paths is used, so it's unlikely to be triggered in rescue. However, I noticed that one of our CheriBSD test scripts was failing to run commands under `su` on minimal disk images where all binaries are hardlinks to a `cheribsdbox` tool generated with crunchgen. This also updates the bootstrapping check in Makefile.inc1 to bootstrap crunchgen up to the next version bump. Reviewed By: kevans Differential Revision: https://reviews.freebsd.org/D27474 Modified: head/Makefile.inc1 head/usr.sbin/crunch/crunchgen/crunched_main.c Modified: head/Makefile.inc1 ============================================================================== --- head/Makefile.inc1 Fri Dec 4 15:50:44 2020 (r368336) +++ head/Makefile.inc1 Fri Dec 4 15:53:37 2020 (r368337) @@ -2270,7 +2270,7 @@ _bootstrap_tools_links+=crunchide # 1300115: Higher WARNS fixes .if ${BOOTSTRAPPING} < 1202502 || \ - (${BOOTSTRAPPING} > 1300000 && ${BOOTSTRAPPING} < 1300115) + (${BOOTSTRAPPING} > 1300000 && ${BOOTSTRAPPING} < 1300131) _crunchgen= usr.sbin/crunch/crunchgen .else _bootstrap_tools_links+=crunchgen Modified: head/usr.sbin/crunch/crunchgen/crunched_main.c ============================================================================== --- head/usr.sbin/crunch/crunchgen/crunched_main.c Fri Dec 4 15:50:44 2020 (r368336) +++ head/usr.sbin/crunch/crunchgen/crunched_main.c Fri Dec 4 15:53:37 2020 (r368337) @@ -97,9 +97,9 @@ find_entry_point(const char *basename) for (ep = entry_points; ep->name != NULL; ep++) if (!strcmp(basename, ep->name)) - break; + return (ep); - return (ep); + return (NULL); } static const char *