summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorGeert Uytterhoeven <geert@linux-m68k.org>2019-01-08 15:00:03 +0100
committerGeert Uytterhoeven <geert@linux-m68k.org>2019-01-21 10:36:53 +0100
commit627f192d1e1a2ddf5fb06201facb15d4c70b058f (patch)
tree4a18c57f0e8c5b6fd5c4a3b486e5c24d05cc2fd6 /drivers
parent800855ea0baeefa35892f84b64f6c10397fd43a9 (diff)
downloadlinux-stable-627f192d1e1a2ddf5fb06201facb15d4c70b058f.tar.gz
linux-stable-627f192d1e1a2ddf5fb06201facb15d4c70b058f.tar.bz2
linux-stable-627f192d1e1a2ddf5fb06201facb15d4c70b058f.zip
dio: Fix buffer overflow in case of unknown board
With gcc 8.2.0: drivers/dio/dio.c: In function ‘dio_init’: drivers/dio/dio.c:240:17: warning: ‘strcpy’ writing 69 or more bytes into a region of size 64 overflows the destination [-Wstringop-overflow=] strcpy(dev->name,dio_getname(dev->id)); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Indeed, if an unknown board is present, the target buffer will overflow. Shorten the unknown board name string to fix this, and declare it as an array while at it. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/dio/dio.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/dio/dio.c b/drivers/dio/dio.c
index 92e78d16b476..c9aa15fb86a9 100644
--- a/drivers/dio/dio.c
+++ b/drivers/dio/dio.c
@@ -89,8 +89,8 @@ static struct dioname names[] =
#undef DIONAME
#undef DIOFBNAME
-static const char *unknowndioname
- = "unknown DIO board -- please email <linux-m68k@lists.linux-m68k.org>!";
+static const char unknowndioname[]
+ = "unknown DIO board, please email linux-m68k@lists.linux-m68k.org";
static const char *dio_getname(int id)
{