aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Zeuthen <zeuthen@google.com>2020-03-30 17:39:06 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2020-03-30 17:39:06 +0000
commit66992bbe1443053afa73bd3d96d91388428e1e4e (patch)
tree07f3ec85703cc9695ce2a24b034109d6828849ea
parent5ae36339adbd5d4388bd4a7ce464a67cebfe7b8e (diff)
parentb5f275d3b52c71b32c87fb67628af89d1307c46b (diff)
downloadavb-66992bbe1443053afa73bd3d96d91388428e1e4e.tar.gz
avb_str_concat: Fail if 0 is passed for buf_size. am: b73cea24f8 am: b5f275d3b5
Change-Id: I73b5a2a012f7cc6784ab784e96e3939b09fb3e30
-rw-r--r--libavb/avb_util.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/libavb/avb_util.c b/libavb/avb_util.c
index 938ce4e..c0064cf 100644
--- a/libavb/avb_util.c
+++ b/libavb/avb_util.c
@@ -195,6 +195,12 @@ bool avb_str_concat(char* buf,
size_t str2_len) {
uint64_t combined_len;
+ // Doesn't make sense to pass 0 for buf_size since there's
+ // no room for the terminating NUL byte.
+ if (buf_size == 0) {
+ return false;
+ }
+
if (!avb_safe_add(&combined_len, str1_len, str2_len)) {
avb_error("Overflow when adding string sizes.\n");
return false;