chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
logind: minor clean-ups
[elogind.git]
/
src
/
basic
/
selinux-util.c
diff --git
a/src/basic/selinux-util.c
b/src/basic/selinux-util.c
index 03ebab32c5b69368256856da00dee57c439648a9..239900b79560671e4c780ab5abefc8f8f6ae3f3b 100644
(file)
--- a/
src/basic/selinux-util.c
+++ b/
src/basic/selinux-util.c
@@
-207,11
+207,11
@@
int mac_selinux_get_create_label_from_exe(const char *exe, char **label) {
if (!mac_selinux_use())
return -EOPNOTSUPP;
if (!mac_selinux_use())
return -EOPNOTSUPP;
- r = getcon(&mycon);
+ r = getcon
_raw
(&mycon);
if (r < 0)
return -errno;
if (r < 0)
return -errno;
- r = getfilecon(exe, &fcon);
+ r = getfilecon
_raw
(exe, &fcon);
if (r < 0)
return -errno;
if (r < 0)
return -errno;
@@
-233,7
+233,7
@@
int mac_selinux_get_our_label(char **label) {
if (!mac_selinux_use())
return -EOPNOTSUPP;
if (!mac_selinux_use())
return -EOPNOTSUPP;
- r = getcon(label);
+ r = getcon
_raw
(label);
if (r < 0)
return -errno;
#endif
if (r < 0)
return -errno;
#endif
@@
-257,7
+257,7
@@
int mac_selinux_get_child_mls_label(int socket_fd, const char *exe, const char *
if (!mac_selinux_use())
return -EOPNOTSUPP;
if (!mac_selinux_use())
return -EOPNOTSUPP;
- r = getcon(&mycon);
+ r = getcon
_raw
(&mycon);
if (r < 0)
return -errno;
if (r < 0)
return -errno;
@@
-268,7
+268,7
@@
int mac_selinux_get_child_mls_label(int socket_fd, const char *exe, const char *
if (!exec_label) {
/* If there is no context set for next exec let's use context
of target executable */
if (!exec_label) {
/* If there is no context set for next exec let's use context
of target executable */
- r = getfilecon(exe, &fcon);
+ r = getfilecon
_raw
(exe, &fcon);
if (r < 0)
return -errno;
}
if (r < 0)
return -errno;
}
@@
-303,14
+303,20
@@
int mac_selinux_get_child_mls_label(int socket_fd, const char *exe, const char *
return r;
}
return r;
}
-
void
mac_selinux_free(char *label) {
+
char*
mac_selinux_free(char *label) {
#ifdef HAVE_SELINUX
#ifdef HAVE_SELINUX
+ if (!label)
+ return NULL;
+
if (!mac_selinux_use())
if (!mac_selinux_use())
- return;
+ return NULL;
+
freecon((security_context_t) label);
#endif
freecon((security_context_t) label);
#endif
+
+ return NULL;
}
#endif // 0
}
#endif // 0