Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <E8B0FA07-16BD-490D-B48A-AC062A8F4A52@gmail.com>
Date: Wed, 1 Jul 2020 15:12:14 +0200
From: Julien Ramseier <j.ramseier@...il.com>
To: musl@...ts.openwall.com
Subject: [PATCH] vfscanf: fix use of uninitialized variable

vfscanf() may use the variable 'alloc' uninitialized when taking the branch
introduced by recent commit b287cd745c2243f8e5114331763a5a9813b5f6ee.

Spotted by clang:

../lib/libc/src/stdio/vfscanf.c:80:6: warning: variable 'alloc' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
        if (!f->rpos) goto input_fail;
            ^~~~~~~~
../lib/libc/src/stdio/vfscanf.c:330:7: note: uninitialized use occurs here
                if (alloc) {
                    ^~~~~

---
 src/stdio/vfscanf.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/stdio/vfscanf.c b/src/stdio/vfscanf.c
index b5ebc16e..b78a374d 100644
--- a/src/stdio/vfscanf.c
+++ b/src/stdio/vfscanf.c
@@ -57,7 +57,7 @@ int vfscanf(FILE *restrict f, const char *restrict fmt, va_list ap)
 {
 	int width;
 	int size;
-	int alloc;
+	int alloc = 0;
 	int base;
 	const unsigned char *p;
 	int c, t;
-- 
2.23.0

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.