From 14b1c4d3dd9ff4e45c305e9ca52a5c19b0fbe475 Mon Sep 17 00:00:00 2001 From: Nils Tonnaett Date: Wed, 13 May 2026 11:53:43 -0700 Subject: [PATCH] module-avb: add zero padding check function --- src/modules/module-avb/strings.c | 20 ++++++++++++++++++++ src/modules/module-avb/strings.h | 2 ++ 2 files changed, 22 insertions(+) diff --git a/src/modules/module-avb/strings.c b/src/modules/module-avb/strings.c index 2f680715d..169c745c1 100644 --- a/src/modules/module-avb/strings.c +++ b/src/modules/module-avb/strings.c @@ -76,3 +76,23 @@ int validate_utf8(uint8_t *str, size_t len) { return 0; } } + +int check_zero_padding(uint8_t const *str, size_t len) +{ + size_t str_len = strnlen((char *)str, len); + /* String doesn't need to be null-terminated. Return success if there is no null in str */ + if (str_len == len) + { + return 0; + } + + for (int i = str_len; i < len; ++i) + { + if (str[i] != 0x00) + { + return -1; + } + } + + return 0; +} diff --git a/src/modules/module-avb/strings.h b/src/modules/module-avb/strings.h index 3cdafc303..7c607df09 100644 --- a/src/modules/module-avb/strings.h +++ b/src/modules/module-avb/strings.h @@ -6,7 +6,9 @@ #include #include +#include int validate_utf8(uint8_t *str, size_t len); +int check_zero_padding(uint8_t *str, size_t len); #endif /* AVB_STRINGS_H */