From: Daan De Meyer Date: Thu, 8 Aug 2024 08:57:35 +0000 (+0200) Subject: taint: Add taint_strv() to get taints as an array X-Git-Tag: v257-rc1~705^2~3 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=32c9bf14ce1a1b4219c765e6c56823c786d97aff;p=thirdparty%2Fsystemd.git taint: Add taint_strv() to get taints as an array --- diff --git a/src/core/taint.c b/src/core/taint.c index 969b37f2091..b7a1c647a2b 100644 --- a/src/core/taint.c +++ b/src/core/taint.c @@ -31,7 +31,7 @@ static int short_uid_gid_range(UIDRangeUsernsMode mode) { return !uid_range_covers(p, 0, 65535); } -char* taint_string(void) { +char** taint_strv(void) { const char *stage[12] = {}; size_t n = 0; @@ -81,5 +81,15 @@ char* taint_string(void) { assert(n < ELEMENTSOF(stage) - 1); /* One extra for NULL terminator */ - return strv_join((char**) stage, ":"); + return strv_copy((char *const *) stage); +} + +char* taint_string(void) { + _cleanup_strv_free_ char **taints = NULL; + + taints = taint_strv(); + if (!taints) + return NULL; + + return strv_join(taints, ":"); } diff --git a/src/core/taint.h b/src/core/taint.h index 2e514e33352..fb47156511c 100644 --- a/src/core/taint.h +++ b/src/core/taint.h @@ -1,4 +1,5 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once +char** taint_strv(void); char* taint_string(void);