sim-utils.c: prevent buffer overflow.
authorPavel I. Kryukov <kryukov@frtk.ru>
Sat, 30 Nov 2019 22:40:21 +0000 (01:40 +0300)
committerTom Tromey <tromey@adacore.com>
Wed, 4 Dec 2019 17:38:08 +0000 (10:38 -0700)
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.

sim/common/ChangeLog
sim/common/sim-utils.c

index a7ec5c7121eb009576bf7b9ecb45850da1c30f8f..12d900e8b68a95fe88a6e9f40d4060c605ec21c7 100644 (file)
@@ -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.
index e83a2e4d0c83206b7f3a3d70fefd11c7c5191619..0c46662ff3379f15990f65fab4cabc67ce9807d3 100644 (file)
@@ -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;
       }
     }
This page took 0.029297 seconds and 4 git commands to generate.