X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Fcore%2Fsmack-setup.c;h=ff2a02004d78307919a1cfc7092384cfd8e6b7f6;hp=a68605c27216407a49e45a8d007bda77af5c9372;hb=5bd4b173605142c7be493aa4d958ebaef21f421d;hpb=e49d3c016751c03e544697656e8e596af8a664d7 diff --git a/src/core/smack-setup.c b/src/core/smack-setup.c index a68605c27..ff2a02004 100644 --- a/src/core/smack-setup.c +++ b/src/core/smack-setup.c @@ -24,21 +24,15 @@ #include #include #include -#include #include -#include #include -#include #include -#include -#include #include "macro.h" #include "smack-setup.h" #include "util.h" #include "fileio.h" #include "log.h" -#include "label.h" #define SMACK_CONFIG "/etc/smack/accesses.d/" #define CIPSO_CONFIG "/etc/smack/cipso.d/" @@ -56,7 +50,7 @@ static int write_rules(const char* dstpath, const char* srcdir) { dst = fopen(dstpath, "we"); if (!dst) { if (errno != ENOENT) - log_warning("Failed to open %s: %m", dstpath); + log_warning_errno(errno, "Failed to open %s: %m", dstpath); return -errno; /* negative error */ } @@ -64,7 +58,7 @@ static int write_rules(const char* dstpath, const char* srcdir) { dir = opendir(srcdir); if (!dir) { if (errno != ENOENT) - log_warning("Failed to opendir %s: %m", srcdir); + log_warning_errno(errno, "Failed to opendir %s: %m", srcdir); return errno; /* positive on purpose */ } @@ -79,7 +73,7 @@ static int write_rules(const char* dstpath, const char* srcdir) { if (fd < 0) { if (r == 0) r = -errno; - log_warning("Failed to open %s: %m", entry->d_name); + log_warning_errno(errno, "Failed to open %s: %m", entry->d_name); continue; } @@ -87,14 +81,14 @@ static int write_rules(const char* dstpath, const char* srcdir) { if (!policy) { if (r == 0) r = -errno; - close_nointr_nofail(fd); - log_error("Failed to open %s: %m", entry->d_name); + safe_close(fd); + log_error_errno(errno, "Failed to open %s: %m", entry->d_name); continue; } /* load2 write rules in the kernel require a line buffered stream */ FOREACH_LINE(buf, policy, - log_error("Failed to read line from %s: %m", + log_error_errno(errno, "Failed to read line from %s: %m", entry->d_name)) { if (!fputs(buf, dst)) { if (r == 0) @@ -105,7 +99,7 @@ static int write_rules(const char* dstpath, const char* srcdir) { if (fflush(dst)) { if (r == 0) r = -errno; - log_error("Failed to flush writes to %s: %m", dstpath); + log_error_errno(errno, "Failed to flush writes to %s: %m", dstpath); break; } } @@ -116,7 +110,7 @@ static int write_rules(const char* dstpath, const char* srcdir) { #endif -int smack_setup(bool *loaded_policy) { +int mac_smack_setup(bool *loaded_policy) { #ifdef HAVE_SMACK @@ -158,7 +152,7 @@ int smack_setup(bool *loaded_policy) { return 0; case 0: log_info("Successfully loaded Smack/CIPSO policies."); - return 0; + break; default: log_warning("Failed to load Smack/CIPSO access rules: %s, ignoring.", strerror(abs(r)));