Merge pull request #2797 from evverx/selinux-use-raw

selinux: use *_raw API from libselinux
This commit is contained in:
Zbigniew Jędrzejewski-Szmek 2016-03-16 01:13:29 -04:00
commit fdbf7b554e
3 changed files with 18 additions and 7 deletions

View File

@ -152,7 +152,7 @@ int mac_selinux_fix(const char *path, bool ignore_enoent, bool ignore_erofs) {
return 0;
if (r >= 0) {
r = lsetfilecon(path, fcon);
r = lsetfilecon_raw(path, fcon);
/* If the FS doesn't support labels, then exit without warning */
if (r < 0 && errno == EOPNOTSUPP)
@ -262,7 +262,7 @@ int mac_selinux_get_child_mls_label(int socket_fd, const char *exe, const char *
if (r < 0)
return -errno;
r = getpeercon(socket_fd, &peercon);
r = getpeercon_raw(socket_fd, &peercon);
if (r < 0)
return -errno;
@ -371,7 +371,7 @@ void mac_selinux_create_file_clear(void) {
if (!mac_selinux_use())
return;
setfscreatecon(NULL);
setfscreatecon_raw(NULL);
#endif
}
@ -402,7 +402,7 @@ void mac_selinux_create_socket_clear(void) {
if (!mac_selinux_use())
return;
setsockcreatecon(NULL);
setsockcreatecon_raw(NULL);
#endif
}
@ -461,7 +461,7 @@ int mac_selinux_bind(int fd, const struct sockaddr *addr, socklen_t addrlen) {
return -errno;
} else {
if (setfscreatecon(fcon) < 0) {
if (setfscreatecon_raw(fcon) < 0) {
log_enforcing("Failed to set SELinux security context %s for %s: %m", fcon, path);
if (security_getenforce() > 0)
return -errno;
@ -472,7 +472,7 @@ int mac_selinux_bind(int fd, const struct sockaddr *addr, socklen_t addrlen) {
r = bind(fd, addr, addrlen) < 0 ? -errno : 0;
if (context_changed)
setfscreatecon(NULL);
setfscreatecon_raw(NULL);
return r;

View File

@ -88,7 +88,7 @@ int mac_selinux_setup(bool *loaded_policy) {
log_open();
log_error("Failed to compute init label, ignoring.");
} else {
r = setcon(label);
r = setcon_raw(label);
log_open();
if (r < 0)

View File

@ -199,6 +199,17 @@ EOF
chmod 0755 $_valgrind_wrapper
}
create_strace_wrapper() {
local _strace_wrapper=$initdir/$ROOTLIBDIR/systemd-under-strace
ddebug "Create $_strace_wrapper"
cat >$_strace_wrapper <<EOF
#!/bin/bash
exec strace -D -o /strace.out $ROOTLIBDIR/systemd "\$@"
EOF
chmod 0755 $_strace_wrapper
}
install_fsck() {
dracut_install /sbin/fsck*
dracut_install -o /bin/fsck*