From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-2.9 required=5.0 tests=DKIM_INVALID,DKIM_SIGNED, FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED,RCVD_IN_MSPIKE_H2 autolearn=ham autolearn_force=no version=3.4.4 Received: from second.openwall.net (second.openwall.net [193.110.157.125]) by inbox.vuxu.org (Postfix) with SMTP id 9934F30CFD for ; Wed, 18 Dec 2024 09:12:53 +0100 (CET) Received: (qmail 24096 invoked by uid 550); 18 Dec 2024 08:12:49 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-ID: Reply-To: musl@lists.openwall.com x-ms-reactions: disallow Received: (qmail 24058 invoked from network); 18 Dec 2024 08:12:49 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.net; s=s31663417; t=1734509559; x=1735114359; i=nullplan@gmx.net; bh=zeSWgiAjU2fYFdpR6Zhx8c++CepaT5PtXDFb2PMvjUY=; h=X-UI-Sender-Class:Date:From:To:Cc:Subject:Message-ID:References: MIME-Version:Content-Type:In-Reply-To:Content-Transfer-Encoding: cc:content-transfer-encoding:content-type:date:from:message-id: mime-version:reply-to:subject:to; b=T/+J5Z+Jw3YXyjgkA4w86oGKWSfimghKy5sLxvBR80tr2Rm7Q6UQd5ZgmuJUKP6T s6E/rOV7GBqP4ETJwKYM8dUvBIrhMZmq3XmyE661G71C31qSV1uefGu6rCNbWlqH6 RrPm2qfYxX8a/GELd/iqqEGkFx3sDbrCMd1bqupEfAA4UFdd03gT17yBE2g240WO5 qq3Qg78JFPV8j/HIC9inYFC5ie66gReUW3Gd6Cm7miWGNHwHT4rfvii8AuLmIl5eR 1/fhmOfMqfv+etauW4xWGaeuMC8Ca2g4ydrCdQbjTZgWJAZrZARXWz2QJQc477ZLV YdasT5Pgw27SjLh2eQ== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Date: Wed, 18 Dec 2024 09:12:36 +0100 From: Markus Wichmann To: musl@lists.openwall.com Cc: lihua.zhao.cn@windriver.com Message-ID: References: <20241217131514.3366368-1-lihua.zhao.cn@windriver.com> <20241218024952.3377660-1-lihua.zhao.cn@windriver.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20241218024952.3377660-1-lihua.zhao.cn@windriver.com> X-Provags-ID: V03:K1:yAsjAD3QEu6xbgdHyAaIe7cL2gtybW8nlZ/YO1ptIxVVaOxuQTT aJaS/fdygQtmqOmBddqHm774yQlRIhDK5BjXLt+PBqKgji1ZqNaSpkxuPLO6TKXnJhvkWxJ kryYjnQPa27HAUCK1CNGj/9X6EF9YveUmoORCIOFmQ13Tgth3PxrmreD/8UP8HX2nSbaKe/ dF6IyO5/A9ntXNCU2uOMQ== UI-OutboundReport: notjunk:1;M01:P0:vqLIQXUG2+A=;nqz09B6PxfkmEezhjlfmVIqce6h qhkERzHhO8eR5vTKQKifjeIPuv8Y4dpOn/x1Jf2sIehMlRW1bB07yC3CcIDtuOpocglRNTjIq C79OHB5FY4Q07f4dnoJ0Yh6ZiZUnqs7Dc19jGaL10F46a/BWbtHt0LHNM0PhBSTZ97K7G+IrB vU4yb+Hicg7z1st2euRg4ZLvAxpbZv1pR1ybNoSfrikrkGyUoIq3K+fNMLuOCbg1ttEe8KAgb rOz3ySHbErsOtCRAlPWfwldxsAvkcpxFYUIBBpg2im9GOvhwvCL+ykKdCj+XhnmIjw+Jrpj3z bRo/iOE8i0PItB4MLGnDFWK56g9FCREeqd4SBF9t9Gx/iAHru02b5pATbNutExkC5F2QRHNuV 3BRSXSYpXI6CS28L8BSx9qTziL4ejRrOYEReunKnh2bWvIpkq+7pr0YUlZtMq/LPe1ZKZM/iz PHSrMsUNWnT/dkwFAY7VuerK+E+R/PLYktsuLPo3atRWPL3HJIDWCBRP27L1nHaPT1eKEQ5DE MMEVr8Nz+IN1G4R22z+YGbgJi+lRZJwhWo0OZO2DGtrhO7KLEXBDJDE3k9EmVw+eNo76oUWPg leVooEgn3IE4vuenDrJwaR1ayH6kTrsqGUEUe6IxzpHohm2Y4Wxy68O/KkAmQruWoy5GMn3MD bEpo+tPiK8jlLul9B4cVnmtW+Ffe6mKXe4mksr42fxV2AfgPSv9RNpf/B08vrFfAdc4pxpFWa QVtG5zzPpJsSSztmDLITX1iygEblL47klp0xRnn39GcY6iB2te3Ez6jKHY/sVe3bD/w02H57W TaTCBSVJ8eZGTpN1D2XCdWL2r4x6PzAOFPIfHNWiZQjxGTfDhiopV3s3LYOcJ3jHnP9tNFt9c B9uybWDQpAN3HVJapCzNWPjJfV3ijf48Zru7/40AnhSllscIAV+PlDlfTgNKmAfA22ZLXZA2M 38JY6a60Txg1GAnBMYkFm+4Un1dvXDGQEAqj7Nx2MIdJep/lyfS5t/4YEO5fF35bQ9KhmOLWd Idj1lDEZckyiDBGP8Eva1b6/LIaovoXcc3mn4gH6AFYeuklh88On6F7qxCypORo+sRyHMohnH rx/DS0Mxvkpwa1Kr8+fmEhB8tl/ezB Content-Transfer-Encoding: quoted-printable Subject: Re: [musl] [PATCH v2] signal: check sigpause() input parameter Am Wed, Dec 18, 2024 at 10:49:52AM +0800 schrieb lihua.zhao.cn@windriver.c= om: > From: Lihua Zhao > > --- > src/signal/sigpause.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/src/signal/sigpause.c b/src/signal/sigpause.c > index 363d2fec..8bd05f58 100644 > --- a/src/signal/sigpause.c > +++ b/src/signal/sigpause.c > @@ -1,8 +1,13 @@ > #include > +#include > > int sigpause(int sig) > { > sigset_t mask; > + if (sig < 1 || sig >=3D _NSIG) { > + errno =3D EINVAL; > + return -1; > + } > sigprocmask(0, 0, &mask); > sigdelset(&mask, sig); > return sigsuspend(&mask); > -- > 2.34.1 I looked around at the competition to figure out what the concensus seems to be on input checking. POSIX no longer specifies the function, so that is basically all that can be done at this point. dietlibc doesn't have this function. Neither ctags nor a fulltext search could find it in there. glibc and bionic both have input checking but move it into sigdelset() (they fail the function if sigprocmask() or sigdelset() fail). musl already has input checking in sigdelset() if that fails, so maybe a better change would be to just use those functions instead. int sigpause(int sig) { sigset_t mask; if (sigprocmask(0, 0, &mask) || sigdelset(&mask, sig)) return -1; return sigsuspend(&mask); } Ciao, Markus