2b68233
From 4f1ae61da9eda1115c1461e77a44101d96532700 Mon Sep 17 00:00:00 2001
2b68233
From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
2b68233
Date: Wed, 2 Mar 2016 10:16:39 -0500
2b68233
Subject: [PATCH] selinux: use raw variants of security_compute_create and
2b68233
 setfscreatecon
2b68233
2b68233
As suggested by Evgeny Vereshchagin as a follow up for
2b68233
https://github.com/systemd/systemd/pull/2781#issuecomment-191043402.
2b68233
2b68233
(cherry picked from commit 5c5433ad32c3d911f0c66cc124d190d40a2b5f5b)
2b68233
---
2b68233
 src/basic/selinux-util.c | 6 +++---
2b68233
 1 file changed, 3 insertions(+), 3 deletions(-)
2b68233
2b68233
diff --git a/src/basic/selinux-util.c b/src/basic/selinux-util.c
2b68233
index 71ceac1bcd..5e6181f662 100644
2b68233
--- a/src/basic/selinux-util.c
2b68233
+++ b/src/basic/selinux-util.c
2b68233
@@ -217,7 +217,7 @@ int mac_selinux_get_create_label_from_exe(const char *exe, char **label) {
2b68233
                 return -errno;
2b68233
 
2b68233
         sclass = string_to_security_class("process");
2b68233
-        r = security_compute_create(mycon, fcon, sclass, (security_context_t *) label);
2b68233
+        r = security_compute_create_raw(mycon, fcon, sclass, (security_context_t *) label);
2b68233
         if (r < 0)
2b68233
                 return -errno;
2b68233
 #endif
2b68233
@@ -296,7 +296,7 @@ int mac_selinux_get_child_mls_label(int socket_fd, const char *exe, const char *
2b68233
                 return -ENOMEM;
2b68233
 
2b68233
         sclass = string_to_security_class("process");
2b68233
-        r = security_compute_create(mycon, fcon, sclass, (security_context_t *) label);
2b68233
+        r = security_compute_create_raw(mycon, fcon, sclass, (security_context_t *) label);
2b68233
         if (r < 0)
2b68233
                 return -errno;
2b68233
 #endif
2b68233
@@ -350,7 +350,7 @@ int mac_selinux_create_file_prepare(const char *path, mode_t mode) {
2b68233
 
2b68233
                 log_enforcing("Failed to determine SELinux security context for %s: %m", path);
2b68233
         } else {
2b68233
-                if (setfscreatecon(filecon) >= 0)
2b68233
+                if (setfscreatecon_raw(filecon) >= 0)
2b68233
                         return 0; /* Success! */
2b68233
 
2b68233
                 log_enforcing("Failed to set SELinux security context %s for %s: %m", filecon, path);