From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from common.ash.relay.mailchannels.net (common.ash.relay.mailchannels.net [23.83.222.38]) by sourceware.org (Postfix) with ESMTPS id AA0DB3858D35 for ; Tue, 4 Jul 2023 23:52:31 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org AA0DB3858D35 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=gotplt.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gotplt.org X-Sender-Id: dreamhost|x-authsender|siddhesh@gotplt.org Received: from relay.mailchannels.net (localhost [127.0.0.1]) by relay.mailchannels.net (Postfix) with ESMTP id 053082C0DC9; Tue, 4 Jul 2023 23:52:28 +0000 (UTC) Received: from pdx1-sub0-mail-a286.dreamhost.com (unknown [127.0.0.6]) (Authenticated sender: dreamhost) by relay.mailchannels.net (Postfix) with ESMTPA id 9D8902C0767; Tue, 4 Jul 2023 23:52:27 +0000 (UTC) ARC-Seal: i=1; s=arc-2022; d=mailchannels.net; t=1688514747; a=rsa-sha256; cv=none; b=7ocHjWmPVspLUM7mNJEVSBPJ79izUzqJoYwx/lh2nZseOTF7RneCKa4T23qjLv5vHJ9+db ZElBKWf5l7UbxfoeEmX3KEP/S7XZLi/6dMoDfmL62Ap9Je8gTlFjBy9d/x5+crNVT65jqO kJteVyQKKinBFlA3HkH42bg1QgPBIMQhku8SiI0YngZpQRKickxct/YK942tLVIa7Vzapa 71mXOqYXtgbJ4MDReiMNxzJOGMZR91JJX35mJFIFa7yOPYssQ3kdzill41lDD5CdM9s5ul Nt2ui5Uqm0iVsqPe8uodQqmHbKngRjRZLZnJ8PIGZ/RoDRVObGf+JS2PHZ7zNA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=mailchannels.net; s=arc-2022; t=1688514747; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=Id+JGz6aiTnVzVWzrJg6qXYcKeLd58TjbQCorOtdBhE=; b=IM5f0C0JBcoND2o29p7pw/WaNu28U9EQ8grE+O9UWFMNILjOKd28Xhcf8Z/TDHhyJGT6u5 sMmIjehVGby2fTeWFcm/5H7npvJDkSXeGVp9TshJH2rIiWjhA+CmeR5enBasf8SjCPjQsY KEXOyuYioyEUU5h98vvHlWfPwlMpjtMoDiQi7GBBUEzOrRFOogRc+c9lCLqAlXEfNVIXIv Ta6JrmsnN/GmAW9lX/TOfe6ounzb5hcWuR/gngGFbMBRHMTBWrtfIzSKLKZooAlbjKmGNp xU/hyDcyoGg/A6JIrAWsA630b30aHjPMmzXzEr5ksCDIrOEfy1FvB/bB65ieCQ== ARC-Authentication-Results: i=1; rspamd-7ccd4b867f-q26mn; auth=pass smtp.auth=dreamhost smtp.mailfrom=siddhesh@gotplt.org X-Sender-Id: dreamhost|x-authsender|siddhesh@gotplt.org X-MC-Relay: Neutral X-MailChannels-SenderId: dreamhost|x-authsender|siddhesh@gotplt.org X-MailChannels-Auth-Id: dreamhost X-Soft-Company: 009586ec7586715e_1688514747866_2771651301 X-MC-Loop-Signature: 1688514747866:2182049180 X-MC-Ingress-Time: 1688514747866 Received: from pdx1-sub0-mail-a286.dreamhost.com (pop.dreamhost.com [64.90.62.162]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384) by 100.116.63.82 (trex/6.9.1); Tue, 04 Jul 2023 23:52:27 +0000 Received: from [192.168.0.182] (unknown [174.91.45.44]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) (Authenticated sender: siddhesh@gotplt.org) by pdx1-sub0-mail-a286.dreamhost.com (Postfix) with ESMTPSA id 4QwfjR12XNzHY; Tue, 4 Jul 2023 16:52:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gotplt.org; s=dreamhost; t=1688514747; bh=Id+JGz6aiTnVzVWzrJg6qXYcKeLd58TjbQCorOtdBhE=; h=Date:Subject:To:From:Content-Type:Content-Transfer-Encoding; b=KG8W5TSzWmN4I8DbIjAojCOZAgAom8uWvqTqFgmvhnRAluCI127D9UPSb9zjdCt0A Ej4fvvDrXN630AFZ3yloN+n3lyRkqcnYjvAFKK+WqNDAfDohYThrknSWTnuggYqPds IyJqiTrBXCIclQmP9At/t+YUId4wcoJGckoUQxOQYNn66Lw5khoFgOYwQauaF3CqDX bFGYT9BvNIENEOQXvPnczKTl8t5HpV2erKlbYvtJ+BKoYOr8yybvafDvaV+vIw/dyY 2DjLL/arDANeFe3ARKqP2o7kLXWgu5G/QsOCIQEyGvFLHk7E+p0VNFcJ+1I1XZjH/j +0D42ZCKIe47w== Message-ID: Date: Tue, 4 Jul 2023 19:52:16 -0400 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH v4 09/15] unistd: Avoid PLT entries with _FORTIFY_SOURCE Content-Language: en-US To: =?UTF-8?B?RnLDqWTDqXJpYyBCw6lyYXQ=?= , libc-alpha@sourceware.org References: <20230704165554.239581-1-fberat@redhat.com> <20230704165554.239581-10-fberat@redhat.com> From: Siddhesh Poyarekar In-Reply-To: <20230704165554.239581-10-fberat@redhat.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-3037.0 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,NICE_REPLY_A,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: On 2023-07-04 12:55, Frédéric Bérat wrote: > The change is meant to avoid unwanted PLT entries for the read_chk, > getdomainname_chk and getlogin_r_chk routines when _FORTIFY_SOURCE is set. > --- > debug/getdomainname_chk.c | 1 + > debug/read_chk.c | 1 + > include/unistd.h | 4 ++++ > login/getlogin_r_chk.c | 1 + > posix/bits/unistd-decl.h | 6 +++--- > 5 files changed, 10 insertions(+), 3 deletions(-) Reviewed-by: Siddhesh Poyarekar > > diff --git a/debug/getdomainname_chk.c b/debug/getdomainname_chk.c > index ccea1b2d9e..a7492adf95 100644 > --- a/debug/getdomainname_chk.c > +++ b/debug/getdomainname_chk.c > @@ -26,3 +26,4 @@ __getdomainname_chk (char *buf, size_t buflen, size_t nreal) > > return getdomainname (buf, buflen); > } > +libc_hidden_def (__getdomainname_chk) > diff --git a/debug/read_chk.c b/debug/read_chk.c > index 17588736a1..75d902a8ba 100644 > --- a/debug/read_chk.c > +++ b/debug/read_chk.c > @@ -25,3 +25,4 @@ __read_chk (int fd, void *buf, size_t nbytes, size_t buflen) > > return __read (fd, buf, nbytes); > } > +libc_hidden_def (__read_chk) > diff --git a/include/unistd.h b/include/unistd.h > index b042a485f9..e241603b81 100644 > --- a/include/unistd.h > +++ b/include/unistd.h > @@ -32,6 +32,10 @@ libc_hidden_proto (readlinkat) > libc_hidden_proto (fsync) > libc_hidden_proto (fdatasync) > > +libc_hidden_proto (__read_chk) > +libc_hidden_proto (__getdomainname_chk) > +libc_hidden_proto (__getlogin_r_chk) > + > /* Now define the internal interfaces. */ > extern int __access (const char *__name, int __type); > libc_hidden_proto (__access) > diff --git a/login/getlogin_r_chk.c b/login/getlogin_r_chk.c > index 12a0d12bd4..26ec3e6970 100644 > --- a/login/getlogin_r_chk.c > +++ b/login/getlogin_r_chk.c > @@ -26,3 +26,4 @@ __getlogin_r_chk (char *buf, size_t buflen, size_t nreal) > > return getlogin_r (buf, buflen); > } > +libc_hidden_def (__getlogin_r_chk) > diff --git a/posix/bits/unistd-decl.h b/posix/bits/unistd-decl.h > index 2d0f7a4456..2603039767 100644 > --- a/posix/bits/unistd-decl.h > +++ b/posix/bits/unistd-decl.h > @@ -26,7 +26,7 @@ > extern ssize_t __read_chk (int __fd, void *__buf, size_t __nbytes, > size_t __buflen) > __wur __attr_access ((__write_only__, 2, 3)); > -extern ssize_t __REDIRECT (__read_alias, (int __fd, void *__buf, > +extern ssize_t __REDIRECT_FORTIFY (__read_alias, (int __fd, void *__buf, > size_t __nbytes), read) > __wur __attr_access ((__write_only__, 2, 3)); > extern ssize_t __REDIRECT (__read_chk_warn, > @@ -157,7 +157,7 @@ extern int __REDIRECT_NTH (__ttyname_r_chk_warn, > #ifdef __USE_POSIX199506 > extern int __getlogin_r_chk (char *__buf, size_t __buflen, size_t __nreal) > __nonnull ((1)) __attr_access ((__write_only__, 1, 2)); > -extern int __REDIRECT (__getlogin_r_alias, (char *__buf, size_t __buflen), > +extern int __REDIRECT_FORTIFY (__getlogin_r_alias, (char *__buf, size_t __buflen), > getlogin_r) __nonnull ((1)); > extern int __REDIRECT (__getlogin_r_chk_warn, > (char *__buf, size_t __buflen, size_t __nreal), > @@ -184,7 +184,7 @@ extern int __REDIRECT_NTH (__gethostname_chk_warn, > #if defined __USE_MISC || (defined __USE_XOPEN && !defined __USE_UNIX98) > extern int __getdomainname_chk (char *__buf, size_t __buflen, size_t __nreal) > __THROW __nonnull ((1)) __wur __attr_access ((__write_only__, 1, 2)); > -extern int __REDIRECT_NTH (__getdomainname_alias, (char *__buf, > +extern int __REDIRECT_FORTIFY_NTH (__getdomainname_alias, (char *__buf, > size_t __buflen), > getdomainname) __nonnull ((1)) > __wur __attr_access ((__write_only__, 1, 2));