From 1790171c769b306731c0e7d092da61a3344feb64 Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Fri, 20 Sep 2024 21:16:20 +1000 Subject: [PATCH] util: add a safe version of strlen Part-of: --- src/quirks.c | 2 +- src/util-strings.h | 9 +++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/src/quirks.c b/src/quirks.c index 75c74c0b..2bb37b4f 100644 --- a/src/quirks.c +++ b/src/quirks.c @@ -1314,7 +1314,7 @@ match_fill_uniq(struct match *m, str++; m->uniq = safe_strdup(str); - slen = strlen(m->uniq); + slen = safe_strlen(m->uniq); if (slen > 1 && m->uniq[slen - 1] == '"') m->uniq[slen - 1] = '\0'; diff --git a/src/util-strings.h b/src/util-strings.h index 85e9081d..bc263f6c 100644 --- a/src/util-strings.h +++ b/src/util-strings.h @@ -99,6 +99,15 @@ safe_strdup(const char *str) return s; } +/** + * NULL-safe version of strlen + */ +static inline size_t +safe_strlen(const char *str) +{ + return str ? strlen(str) : 0; +} + /** * Simple wrapper for asprintf that ensures the passed in-pointer is set * to NULL upon error.