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:28:26 +0100
commitd5c5af909392f5de19669177b6e86d14175e4248 (patch)
tree23565d05d222fbb55bd50aa7989fe28738b5b21f
parent08f440d20195b54c1ee749baea049ed2928324bc (diff)
downloadsystemd-d5c5af909392f5de19669177b6e86d14175e4248.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) (cherry picked from commit 029331f56a1b6e4fb2823a56a108f741a576d7af)
-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 27d27d18b3..a6c879ee83 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"
@@ -369,7 +370,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);
}