Coverity complains that this can overflow. If we later increase the size
of one of the strings in the table, it could happen.

Adjust the code to protect against this.

Signed-off-by: Simon Glass <[email protected]>
Reported-by: Coverity (CID: 150964)
---

 common/image.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/common/image.c b/common/image.c
index 0e86c13..dfd1779 100644
--- a/common/image.c
+++ b/common/image.c
@@ -584,13 +584,14 @@ const table_entry_t *get_table_entry(const table_entry_t 
*table, int id)
        }
        return NULL;
 }
+#include <linux/string.h>
 
 static const char *unknown_msg(enum ih_category category)
 {
        static char msg[30];
 
        strcpy(msg, "Unknown ");
-       strcat(msg, table_info[category].desc);
+       strncat(msg, table_info[category].desc, sizeof(msg) - 1);
 
        return msg;
 }
-- 
2.8.0.rc3.226.g39d4020

_______________________________________________
U-Boot mailing list
[email protected]
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to