From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 78523 invoked by alias); 8 Aug 2018 08:52:56 -0000 Mailing-List: contact newlib-cvs-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: newlib-cvs-owner@sourceware.org Received: (qmail 78397 invoked by uid 9078); 8 Aug 2018 08:52:55 -0000 Date: Wed, 08 Aug 2018 08:52:00 -0000 Message-ID: <20180808085255.78394.qmail@sourceware.org> Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: Corinna Vinschen To: newlib-cvs@sourceware.org Subject: [newlib-cygwin] newlib: wordexp: drop dangerous fprintf X-Act-Checkin: newlib-cygwin X-Git-Author: Corinna Vinschen X-Git-Refname: refs/heads/master X-Git-Oldrev: 8bfb1afd6b46b7b41d45b20fe9c90e9156b3a7d2 X-Git-Newrev: 5ace9004d9b982ba8887df41139295792c130020 X-SW-Source: 2018-q3/txt/msg00038.txt.bz2 https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=5ace9004d9b982ba8887df41139295792c130020 commit 5ace9004d9b982ba8887df41139295792c130020 Author: Corinna Vinschen Date: Wed Aug 8 10:39:45 2018 +0200 newlib: wordexp: drop dangerous fprintf wordexp uses fprintf in a dangerous way. It uses an unchecked input string as format string, rather than as parameter to a %s. Replace fprintf with fputs. Signed-off-by: Corinna Vinschen Diff: --- newlib/libc/posix/wordexp.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/newlib/libc/posix/wordexp.c b/newlib/libc/posix/wordexp.c index 3e90c3a..dcda3d2 100644 --- a/newlib/libc/posix/wordexp.c +++ b/newlib/libc/posix/wordexp.c @@ -127,9 +127,9 @@ wordexp(const char *__restrict words, wordexp_t *__restrict pwordexp, int flags) if (flags & WRDE_SHOWERR) { - fprintf(stderr, tmp); + fputs(tmp, stderr); while(fgets(tmp, MAXLINELEN, f_err)) - fprintf(stderr, tmp); + fputs(tmp, stderr); } goto cleanup;