summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOndrej Mosnacek <omosnace@redhat.com>2020-12-14 16:36:27 +0100
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2020-12-16 14:31:40 +0100
commitdb314328616e2dcaac2e9b22fb947b7408bb4b04 (patch)
treee591bac4a6e6cdab3d15c02fbaf2915e09eaac8b
parentf2ec15e2e5c70913ead7c19bab5d4d6b596e198c (diff)
downloadsystemd-db314328616e2dcaac2e9b22fb947b7408bb4b04.tar.gz
resolved: create stub-resolv.conf symlink with correct security label
Use symlink_atomic_label() instead of symlink_atomic() as the symlink may need a different label than the parent directory. Signed-off-by: Ondrej Mosnacek <omosnace@redhat.com> (cherry picked from commit 7b87bece5ded3e8f068df8402901198c069ab5cf)
-rw-r--r--src/resolve/resolved-resolv-conf.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/resolve/resolved-resolv-conf.c b/src/resolve/resolved-resolv-conf.c
index 6fd9959daf..fce5c9b036 100644
--- a/src/resolve/resolved-resolv-conf.c
+++ b/src/resolve/resolved-resolv-conf.c
@@ -10,6 +10,7 @@
#include "fd-util.h"
#include "fileio.h"
#include "fs-util.h"
+#include "label.h"
#include "ordered-set.h"
#include "resolved-conf.h"
#include "resolved-dns-server.h"
@@ -363,7 +364,7 @@ int manager_write_resolv_conf(Manager *m) {
r = log_error_errno(errno, "Failed to move new %s into place: %m", PRIVATE_STUB_RESOLV_CONF);
} else {
- r = symlink_atomic(basename(PRIVATE_UPLINK_RESOLV_CONF), PRIVATE_STUB_RESOLV_CONF);
+ r = symlink_atomic_label(basename(PRIVATE_UPLINK_RESOLV_CONF), PRIVATE_STUB_RESOLV_CONF);
if (r < 0)
log_error_errno(r, "Failed to symlink %s: %m", PRIVATE_STUB_RESOLV_CONF);
}