From 6f93eb159a708b7161188ae4c75be388cdfedabc Mon Sep 17 00:00:00 2001 From: Frantisek Sumsal Date: Mon, 30 Oct 2023 17:50:11 +0100 Subject: [PATCH] core: check if we got a valid personality during deserialization --- src/core/execute-serialize.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/core/execute-serialize.c b/src/core/execute-serialize.c index 18033fe9c3..342883994a 100644 --- a/src/core/execute-serialize.c +++ b/src/core/execute-serialize.c @@ -3395,9 +3395,11 @@ static int exec_context_deserialize(ExecContext *c, FILE *f) { r = free_and_strdup(&c->smack_process_label, val); if (r < 0) return r; - } else if ((val = startswith(l, "exec-context-personality="))) + } else if ((val = startswith(l, "exec-context-personality="))) { c->personality = personality_from_string(val); - else if ((val = startswith(l, "exec-context-lock-personality="))) { + if (c->personality == PERSONALITY_INVALID) + return -EINVAL; + } else if ((val = startswith(l, "exec-context-lock-personality="))) { r = parse_boolean(val); if (r < 0) return r;