From nobody Mon May 13 16:21:45 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VdPrT5GG2z5KYv8; Mon, 13 May 2024 16:21:45 +0000 (UTC) (envelope-from git@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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4VdPrT4lzrz4F33; Mon, 13 May 2024 16:21:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715617305; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CY7qu8ap5lTnvodJLzxQEQFVwaLtb1C02EIfBd7Q0Ec=; b=Acp5N0KZamO6tstGJAHmvZceBHw7DnB/tFyyPcaTq2i9Jyl5zegjQx0ZEUQkaF/G48Nbj9 rPtmvDdzAkmNURsjDyA/rq1HcqHkIEyOAPe5TEbd6z4lkAIRHSd1A3xmb2IrEpa3zhqJlH U9NFJ6UVO0So3ixaPCaBRAI3zo/aaAbv/IdobU0wtCX4ZJSie5Zjq9ZltEotvKKzY1rRcW 6+u6DqHskammXH59560B884O7TOT1gWNrfiiHlDfIpzwwxt6HXRTjG2137RR4p4LAGN+o7 FqLRMwPaVawEbaDxDaOyU8ptPWkvJS6weW2Uvx2CoaHf2ZbZZpSSEqfbnCv9aQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715617305; a=rsa-sha256; cv=none; b=w2Jvu7XvxiglGVFGSavGuj2kYl6aeWl7S3PflI7EdB+GAnxFtD02jEvV1DmXPPaCho27wi 7qVja4mVcDT8+8d8w+KdlqTtBjW1WLku8U5CL3FKI0CuLBXh8CNepQ326rtBYuagW82mKj 6aO0tTBmQz6amhWacqcMFNnigCqyxE08eX3PRLGHPHU034uZrHrXeHhFW7qWMzJIRFPlVp +Hc2j7RxI3MkmOpiRL2RsCvC3O55g3bGskg3rdWrO9Qlc56LN25+LkwtdHzhiXk2iPAUCY z/nLho9y7zPZUvtuwkB8iJID9J8gtTJ31kUuk6ZNadJKV0BR3B8r5IwPOIiDHA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715617305; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CY7qu8ap5lTnvodJLzxQEQFVwaLtb1C02EIfBd7Q0Ec=; b=J6OB9gS7E9TgfBarpv4L1OMr02ZAbTN0FJMqVhENKg6DJq6k/Qmx5/T2a2nrrIMd8nfhgT 09nVmaGdi/3DG35mZBcKq2x2OsKw6qZwnsXwAii+O2M701iTtWOrFUrnEf0eNynAGNCBve rbKVNQzTD0oEMtAlELtzWTzJGeR1485vfYrBm/LpSKPpQ9gHRnXwCUwuWZWdhlV/mIUnQ5 TGnwEteCelDHHHCiT7FkhR4QbRzi9AWGcm/f9ZyrEsOI9pWNoB9lcquujelZB1Afb/7fdK u+KMUTUj1l6MakndVcJfCzzOrd59/BeI/3DPFL869nCuPIyfMGVoyHuG5LsjvA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (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 did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VdPrT4MCNzvXF; Mon, 13 May 2024 16:21:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 44DGLjha025717; Mon, 13 May 2024 16:21:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44DGLjvG025714; Mon, 13 May 2024 16:21:45 GMT (envelope-from git) Date: Mon, 13 May 2024 16:21:45 GMT Message-Id: <202405131621.44DGLjvG025714@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kyle Evans Subject: git: 8b0682644e2d - main - Fix the GCC build after _FORTIFY_SOURCE import List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kevans X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 8b0682644e2da9c595d9249c9a0c8eb499421b5e Auto-Submitted: auto-generated The branch main has been updated by kevans: URL: https://cgit.FreeBSD.org/src/commit/?id=8b0682644e2da9c595d9249c9a0c8eb499421b5e commit 8b0682644e2da9c595d9249c9a0c8eb499421b5e Author: Kyle Evans AuthorDate: 2024-05-13 16:13:51 +0000 Commit: Kyle Evans CommitDate: 2024-05-13 16:21:38 +0000 Fix the GCC build after _FORTIFY_SOURCE import We haven't exposed gets(3) in a long time, rip out __gets_chk before it's too late and something builds a gets(3) user with it enabled. --- include/ssp/stdio.h | 6 ---- lib/libc/secure/Makefile.inc | 2 +- lib/libc/secure/Symbol.map | 1 - lib/libc/secure/gets_chk.c | 74 -------------------------------------------- lib/libssp/Makefile | 2 +- lib/libssp/Symbol.map | 1 - lib/libssp/ssp.3 | 2 -- 7 files changed, 2 insertions(+), 86 deletions(-) diff --git a/include/ssp/stdio.h b/include/ssp/stdio.h index 72e3236eac80..ed7303497a45 100644 --- a/include/ssp/stdio.h +++ b/include/ssp/stdio.h @@ -48,7 +48,6 @@ int __snprintf_chk(char *__restrict, size_t, int, size_t, int __vsnprintf_chk(char *__restrict, size_t, int, size_t, const char *__restrict, __va_list) __printflike(5, 0); -char *__gets_chk(char *, size_t); char *__fgets_chk(char *, int, size_t, FILE *); __END_DECLS @@ -78,11 +77,6 @@ __END_DECLS fmt, ap); \ }) -#define gets(str) ({ \ - char *_ssp_str = (str); \ - __gets_chk(_ssp_str, __ssp_bos(_ssp_str)); \ -}) - #define fgets(str, len, fp) ({ \ char *_ssp_str = (str); \ __fgets_chk(_ssp_str, len, __ssp_bos(_ssp_str), fp); \ diff --git a/lib/libc/secure/Makefile.inc b/lib/libc/secure/Makefile.inc index 3b1ad879c715..28289127c7a6 100644 --- a/lib/libc/secure/Makefile.inc +++ b/lib/libc/secure/Makefile.inc @@ -4,7 +4,7 @@ .PATH: ${LIBC_SRCTOP}/secure # _FORTIFY_SOURCE -SRCS+= gets_chk.c fgets_chk.c memcpy_chk.c memmove_chk.c memset_chk.c \ +SRCS+= fgets_chk.c memcpy_chk.c memmove_chk.c memset_chk.c \ snprintf_chk.c sprintf_chk.c stpcpy_chk.c stpncpy_chk.c \ strcat_chk.c strcpy_chk.c strncat_chk.c strncpy_chk.c \ vsnprintf_chk.c vsprintf_chk.c diff --git a/lib/libc/secure/Symbol.map b/lib/libc/secure/Symbol.map index 7859fcee3821..0d854039955f 100644 --- a/lib/libc/secure/Symbol.map +++ b/lib/libc/secure/Symbol.map @@ -5,7 +5,6 @@ FBSD_1.0 { }; FBSD_1.8 { - __gets_chk; __fgets_chk; __memcpy_chk; __memmove_chk; diff --git a/lib/libc/secure/gets_chk.c b/lib/libc/secure/gets_chk.c deleted file mode 100644 index 18c1e2d18f43..000000000000 --- a/lib/libc/secure/gets_chk.c +++ /dev/null @@ -1,74 +0,0 @@ -/*- - * - * SPDX-License-Identifier: BSD-2-Clause - * - * Copyright (c) 2006 The NetBSD Foundation, Inc. - * All rights reserved. - * - * This code is derived from software contributed to The NetBSD Foundation - * by Christos Zoulas. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS - * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS - * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - */ -#include -__RCSID("$NetBSD: gets_chk.c,v 1.7 2013/10/04 20:49:16 christos Exp $"); - -#include -#include -#include -#include - -#include -#include - -char *__gets_unsafe(char *); - -char * -__gets_chk(char * __restrict buf, size_t slen) -{ - char *abuf; - size_t len; - - if (slen >= (size_t)INT_MAX) - return (__gets_unsafe(buf)); - - if ((abuf = malloc(slen + 1)) == NULL) - return (__gets_unsafe(buf)); - - if (fgets(abuf, (int)(slen + 1), stdin) == NULL) { - free(abuf); - return (NULL); - } - - len = strlen(abuf); - if (len > 0 && abuf[len - 1] == '\n') - --len; - - if (len >= slen) - __chk_fail(); - - (void)memcpy(buf, abuf, len); - - buf[len] = '\0'; - free(abuf); - return (buf); -} diff --git a/lib/libssp/Makefile b/lib/libssp/Makefile index cc6b88342f9c..1a95c4b49844 100644 --- a/lib/libssp/Makefile +++ b/lib/libssp/Makefile @@ -4,7 +4,7 @@ SHLIBDIR?= /lib SHLIB= ssp SHLIB_MAJOR= 0 -SSP_SRCS= gets_chk.c fgets_chk.c memcpy_chk.c memmove_chk.c memset_chk.c \ +SSP_SRCS= fgets_chk.c memcpy_chk.c memmove_chk.c memset_chk.c \ snprintf_chk.c sprintf_chk.c stpcpy_chk.c stpncpy_chk.c \ strcat_chk.c strcpy_chk.c strncat_chk.c strncpy_chk.c \ vsnprintf_chk.c vsprintf_chk.c diff --git a/lib/libssp/Symbol.map b/lib/libssp/Symbol.map index 367922d58085..e401bf9293e2 100644 --- a/lib/libssp/Symbol.map +++ b/lib/libssp/Symbol.map @@ -20,7 +20,6 @@ LIBSSP_1.0 { }; LIBSSP_1.1 { - __gets_chk; __fgets_chk; __memmove_chk; __stpncpy_chk; diff --git a/lib/libssp/ssp.3 b/lib/libssp/ssp.3 index f89dcc549ba7..5b00fe53f9fc 100644 --- a/lib/libssp/ssp.3 +++ b/lib/libssp/ssp.3 @@ -49,8 +49,6 @@ .Ft int .Fn vsnprintf "char *str" "size_t len" "const char *fmt" "va_list ap" .Ft char * -.Fn gets "char *str" -.Ft char * .Fn fgets "char *str" "int len" "FILE *fp" .In ssp/string.h .Ft void *