systemd/SOURCES/1228-systemctl-logind-add-missing-asserts.patch
2026-03-30 11:08:19 -04:00

48 lines
1.4 KiB
Diff

From 41b7fedf9ed75f6dfa9fec03a70964b897fbf9ba Mon Sep 17 00:00:00 2001
From: Mike Yuan <me@yhndnzj.com>
Date: Tue, 14 Mar 2023 06:56:17 +0800
Subject: [PATCH] systemctl: logind: add missing asserts
(cherry picked from commit 9071eea01bd26d838bfd793db497efd849ad44da)
Related: RHEL-109488
---
src/systemctl/systemctl-logind.c | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/src/systemctl/systemctl-logind.c b/src/systemctl/systemctl-logind.c
index 1c3b68f09f..f910fe6675 100644
--- a/src/systemctl/systemctl-logind.c
+++ b/src/systemctl/systemctl-logind.c
@@ -21,6 +21,8 @@ static int logind_set_wall_message(sd_bus *bus) {
_cleanup_free_ char *m = NULL;
int r;
+ assert(bus);
+
m = strv_join(arg_wall, " ");
if (!m)
return log_oom();
@@ -55,7 +57,10 @@ int logind_reboot(enum action a) {
sd_bus *bus;
int r;
- if (a < 0 || a >= _ACTION_MAX || !actions[a])
+ assert(a >= 0);
+ assert(a < _ACTION_MAX);
+
+ if (!actions[a])
return -EINVAL;
r = acquire_bus(BUS_FULL, &bus);
@@ -106,6 +111,9 @@ int logind_check_inhibitors(enum action a) {
unsigned c = 0;
int r;
+ assert(a >= 0);
+ assert(a < _ACTION_MAX);
+
if (arg_check_inhibitors == 0 || arg_force > 0)
return 0;