summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2016-10-31 16:21:09 (GMT)
committerTom Rini <trini@konsulko.com>2016-11-05 11:27:43 (GMT)
commitae3de0d8caf1822da076b2cc947ea89a0b560e05 (patch)
tree8348f8a2ccd74d8b9767bbdb0444053efa8a2959
parenteb9e699ff14436c3417c949120c226531e81f614 (diff)
downloadu-boot-fsl-qoriq-ae3de0d8caf1822da076b2cc947ea89a0b560e05.tar.xz
image: Protect against overflow in unknown_msg()
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 <sjg@chromium.org> Reported-by: Coverity (CID: 150964)
-rw-r--r--common/image.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/common/image.c b/common/image.c
index 0e86c13..7604494 100644
--- a/common/image.c
+++ b/common/image.c
@@ -587,10 +587,12 @@ const table_entry_t *get_table_entry(const table_entry_t *table, int id)
static const char *unknown_msg(enum ih_category category)
{
+ static const char unknown_str[] = "Unknown ";
static char msg[30];
- strcpy(msg, "Unknown ");
- strcat(msg, table_info[category].desc);
+ strcpy(msg, unknown_str);
+ strncat(msg, table_info[category].desc,
+ sizeof(msg) - sizeof(unknown_str));
return msg;
}