From: Christian Göttsche Date: Fri, 14 May 2021 12:14:25 +0000 (+0200) Subject: selinux: invoke selinux_set_callback(3) more type-safe X-Git-Tag: v249-rc1~186^2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=57e70396dfdc6835c4a9141d29043e4af407205d;p=thirdparty%2Fsystemd.git selinux: invoke selinux_set_callback(3) more type-safe --- diff --git a/src/core/selinux-access.c b/src/core/selinux-access.c index cdb82dd8947..d077d5dea75 100644 --- a/src/core/selinux-access.c +++ b/src/core/selinux-access.c @@ -162,8 +162,8 @@ static int access_init(sd_bus_error *error) { return sd_bus_error_setf(error, SD_BUS_ERROR_ACCESS_DENIED, "Failed to open the SELinux AVC: %s", strerror_safe(saved_errno)); } - selinux_set_callback(SELINUX_CB_AUDIT, (union selinux_callback) audit_callback); - selinux_set_callback(SELINUX_CB_LOG, (union selinux_callback) log_callback); + selinux_set_callback(SELINUX_CB_AUDIT, (union selinux_callback) { .func_audit = audit_callback }); + selinux_set_callback(SELINUX_CB_LOG, (union selinux_callback) { .func_log = log_callback }); initialized = true; return 1; diff --git a/src/core/selinux-setup.c b/src/core/selinux-setup.c index 1ac05b81e8e..2bafbee3eb6 100644 --- a/src/core/selinux-setup.c +++ b/src/core/selinux-setup.c @@ -30,16 +30,12 @@ int mac_selinux_setup(bool *loaded_policy) { usec_t before_load, after_load; char *con; int r; - static const union selinux_callback cb = { - .func_log = null_log, - }; - bool initialized = false; assert(loaded_policy); /* Turn off all of SELinux' own logging, we want to do that */ - selinux_set_callback(SELINUX_CB_LOG, cb); + selinux_set_callback(SELINUX_CB_LOG, (union selinux_callback) { .func_log = null_log }); /* Don't load policy in the initrd if we don't appear to have * it. For the real root, we check below if we've already