From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2012) id 1CFF438532EF; Fri, 25 Nov 2022 14:31:15 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 1CFF438532EF DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1669386675; bh=gs1teHVqNjxTBGeTWa67TAmwqwhyeITAM29Js0vkNec=; h=From:To:Subject:Date:From; b=HHNh+yr8fFMYyMEgmrPu9yQUP17+Ut7J2DKuv7ujRuyTkM8hb6dN+d0MHvqmj2dkB E+iOCtlShgTjWitilZ/S3iq5Ce1YRBr2H3kiFBtNcn/QZxBGxkPboqFSHmDUlYFQZk rVVZOrD18pCTT7DVGl8Zgexo6PV9EnaOqN0P82ZE= Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: Arjun Shankar To: glibc-cvs@sourceware.org Subject: [glibc/release/2.35/master] elf: Fix wrong fscanf usage on tst-pldd X-Act-Checkin: glibc X-Git-Author: Adhemerval Zanella X-Git-Refname: refs/heads/release/2.35/master X-Git-Oldrev: e9eb987894007cf928a0a31df25a5d0435fb7911 X-Git-Newrev: cad7947db7f464506773a10aa88655ce2d9cf9a0 Message-Id: <20221125143115.1CFF438532EF@sourceware.org> Date: Fri, 25 Nov 2022 14:31:15 +0000 (GMT) List-Id: https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=cad7947db7f464506773a10aa88655ce2d9cf9a0 commit cad7947db7f464506773a10aa88655ce2d9cf9a0 Author: Adhemerval Zanella Date: Tue Jul 5 12:58:40 2022 -0300 elf: Fix wrong fscanf usage on tst-pldd The fix done b2cd93fce666fdc8c9a5c64af2741a8a6940ac99 does not really work since macro strification does not expand the sizeof nor the arithmetic operation. Checked on x86_64-linux-gnu. (cherry picked from commit c353689e49e72f3aafa1a9e68d4f7a4f33a79cbe) Diff: --- elf/tst-pldd.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/elf/tst-pldd.c b/elf/tst-pldd.c index 0616545b1d..9f633d41a2 100644 --- a/elf/tst-pldd.c +++ b/elf/tst-pldd.c @@ -108,15 +108,16 @@ do_test (void) loader and libc. */ { pid_t pid; - char buffer[512]; -#define STRINPUT(size) "%" # size "s" +#define BUFFERLEN 511 + char buffer[BUFFERLEN + 1]; +#define STRINPUT(size) XSTRINPUT(size) +#define XSTRINPUT(size) "%" # size "s" FILE *out = fmemopen (pldd.out.buffer, pldd.out.length, "r"); TEST_VERIFY (out != NULL); /* First line is in the form of : */ - TEST_COMPARE (fscanf (out, "%u: " STRINPUT (sizeof (buffer) - 1), &pid, - buffer), 2); + TEST_COMPARE (fscanf (out, "%u: " STRINPUT (BUFFERLEN), &pid, buffer), 2); TEST_COMPARE (pid, *target_pid_ptr); TEST_COMPARE (strcmp (basename (buffer), "tst-pldd"), 0);