42 lines
1.3 KiB
Diff
42 lines
1.3 KiB
Diff
From c7344d33587bc5b781b958315c643284e2e9cf18 Mon Sep 17 00:00:00 2001
|
||
From: Bernhard Voelker <mail@bernhard-voelker.de>
|
||
Date: Sun, 8 Jul 2018 00:18:03 +0200
|
||
Subject: [PATCH 178/224] ftsfind.c: avoid buffer overflow in -D code
|
||
MIME-Version: 1.0
|
||
Content-Type: text/plain; charset=UTF-8
|
||
Content-Transfer-Encoding: 8bit
|
||
|
||
Reported by GCC 8.1.1:
|
||
|
||
ftsfind.c: In function ‘get_fts_info_name’:
|
||
ftsfind.c:164:23: warning: ‘%d’ directive writing between 1 and 11 bytes into a region of size 9 [-Wformat-overflow=]
|
||
sprintf (buf, "[%d]", info);
|
||
^~
|
||
ftsfind.c:164:7: note: ‘sprintf’ output between 4 and 14 bytes into a destination of size 10
|
||
sprintf (buf, "[%d]", info);
|
||
^~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||
|
||
* find/ftsfind.c (get_fts_info_name): Increase buffer from 10 to 14
|
||
to be able to hold the 11-char string representation of the %d format,
|
||
the surrounding '[' and ']', plus the terminating NULL character.
|
||
---
|
||
find/ftsfind.c | 2 +-
|
||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||
|
||
diff --git a/find/ftsfind.c b/find/ftsfind.c
|
||
index 607ea8d3..57804950 100644
|
||
--- a/find/ftsfind.c
|
||
+++ b/find/ftsfind.c
|
||
@@ -143,7 +143,7 @@ static void init_mounted_dev_list (void);
|
||
static const char *
|
||
get_fts_info_name (int info)
|
||
{
|
||
- static char buf[10];
|
||
+ static char buf[14];
|
||
switch (info)
|
||
{
|
||
HANDLECASE(FTS_D);
|
||
--
|
||
2.19.1
|
||
|