diff options
author | Pavel I. Kryukov <kryukov@frtk.ru> | 2019-12-01 01:40:21 +0300 |
---|---|---|
committer | Tom Tromey <tromey@adacore.com> | 2019-12-04 10:38:08 -0700 |
commit | f47674be8e90a84edae49ec2b781201ea2f050bd (patch) | |
tree | b6522c198e61e7193f0dbc8376026598c12f1fa7 /sim/common | |
parent | 4139ff008829d716830d18e8cfa8cbf5c0ae7562 (diff) | |
download | binutils-gdb-f47674be8e90a84edae49ec2b781201ea2f050bd.tar.gz |
sim-utils.c: prevent buffer overflow.
Representation of max 32-bit integer is 10 chars.
The potential issue is observed by GCC 7 targeted to AArch64.
sim/common/ChangeLog:
2019-12-01 Pavel I. Kryukov <kryukov@frtk.ru>
* sim-utils.c: Prevent buffer overflow.
Diffstat (limited to 'sim/common')
-rw-r--r-- | sim/common/ChangeLog | 4 | ||||
-rw-r--r-- | sim/common/sim-utils.c | 8 |
2 files changed, 8 insertions, 4 deletions
diff --git a/sim/common/ChangeLog b/sim/common/ChangeLog index a7ec5c7121e..12d900e8b68 100644 --- a/sim/common/ChangeLog +++ b/sim/common/ChangeLog @@ -1,3 +1,7 @@ +2019-12-01 Pavel I. Kryukov <kryukov@frtk.ru> + + * sim-utils.c: Prevent buffer overflow. + 2019-09-23 Dimitar Dimitrov <dimitar@dinux.eu> * gennltvals.sh: Add PRU libgloss target. diff --git a/sim/common/sim-utils.c b/sim/common/sim-utils.c index e83a2e4d0c8..0c46662ff33 100644 --- a/sim/common/sim-utils.c +++ b/sim/common/sim-utils.c @@ -355,8 +355,8 @@ map_to_str (unsigned map) case io_map: return "io"; default: { - static char str[10]; - sprintf (str, "(%ld)", (long) map); + static char str[16]; + snprintf (str, sizeof(str), "(%ld)", (long) map); return str; } } @@ -385,8 +385,8 @@ access_to_str (unsigned access) case access_read_write_exec_io: return "read_write_exec_io"; default: { - static char str[10]; - sprintf (str, "(%ld)", (long) access); + static char str[16]; + snprintf (str, sizeof(str), "(%ld)", (long) access); return str; } } |