summaryrefslogtreecommitdiffstats
path: root/meta/recipes-core
diff options
context:
space:
mode:
authorPeter A. Bigot <pab@pabigot.com>2014-09-18 10:16:39 -0500
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-09-29 12:12:42 +0100
commitf3e9be37e80b884ec142dc90e1984142a230c772 (patch)
tree48099d3434da71995df99bf1e0ba10cf65fcd529 /meta/recipes-core
parent5cc591748e4f8ec3048137ea67fa75bf3b50cb20 (diff)
downloadpoky-f3e9be37e80b884ec142dc90e1984142a230c772.tar.gz
systemd: disable resolv.conf symlink unless resolved is enabled
The tmpfiles configuration in systemd unconditionally creates a symlink from /etc/resolv.conf to the location where systemd's resolved service will place the real file. This link is only appropriate when resolved is enabled and running: its presence prevents connman or other systems from providing a working resolv.conf when systemd is not assigned that responsibility. OE has not yet enabled systemd's networkd or resolved by default. There is a TODO in the systemd source to fix this, but it has not been addressed upstream. This patch comments out the corresponding line when resolved is not enabled in the package configuration. (From OE-Core rev: 7e2b05a6f59209687829225878a19a1dad8143b9) Signed-off-by: Peter A. Bigot <pab@pabigot.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-core')
-rw-r--r--meta/recipes-core/systemd/systemd/0001-tmpfiles.d-etc.conf-disable-resolv.conf-symlink.patch35
-rw-r--r--meta/recipes-core/systemd/systemd_216.bb1
2 files changed, 36 insertions, 0 deletions
diff --git a/meta/recipes-core/systemd/systemd/0001-tmpfiles.d-etc.conf-disable-resolv.conf-symlink.patch b/meta/recipes-core/systemd/systemd/0001-tmpfiles.d-etc.conf-disable-resolv.conf-symlink.patch
new file mode 100644
index 0000000000..7218322d4c
--- /dev/null
+++ b/meta/recipes-core/systemd/systemd/0001-tmpfiles.d-etc.conf-disable-resolv.conf-symlink.patch
@@ -0,0 +1,35 @@
1From f0ab1600fb56d680e6aba3d0d51dfb9ffa3d9403 Mon Sep 17 00:00:00 2001
2From: "Peter A. Bigot" <pab@pabigot.com>
3Date: Thu, 18 Sep 2014 08:36:54 -0500
4Subject: [PATCH] tmpfiles.d/etc.conf: disable resolv.conf symlink
5
6This link is valid only if ENABLE_RESOLVED is configured for systemd.
7If left unconditional, the symlink is created preventing connman from
8storing the configuration it received from DHCP or other sources.
9
10Upstream has a TODO to fix this, but has not done so as of this date.
11Provide a temporary workaround for OE until this is done properly
12upstream.
13
14Upstream-Status: Inappropriate [OE-specific]
15Signed-off-by: Peter A. Bigot <pab@pabigot.com>
16---
17 tmpfiles.d/etc.conf | 3 ++-
18 1 file changed, 2 insertions(+), 1 deletion(-)
19
20diff --git a/tmpfiles.d/etc.conf b/tmpfiles.d/etc.conf
21index b23272c..5364dd8 100644
22--- a/tmpfiles.d/etc.conf
23+++ b/tmpfiles.d/etc.conf
24@@ -10,6 +10,7 @@
25 L /etc/os-release - - - - ../usr/lib/os-release
26 L /etc/localtime - - - - ../usr/share/zoneinfo/UTC
27 L+ /etc/mtab - - - - ../proc/self/mounts
28-L /etc/resolv.conf - - - - ../run/systemd/resolve/resolv.conf
29+# TODO: conditional on ENABLE_RESOLVED
30+#L /etc/resolv.conf - - - - ../run/systemd/resolve/resolv.conf
31 C /etc/nsswitch.conf - - - -
32 C /etc/pam.d - - - -
33--
341.8.5.5
35
diff --git a/meta/recipes-core/systemd/systemd_216.bb b/meta/recipes-core/systemd/systemd_216.bb
index 331da99479..ebf939574d 100644
--- a/meta/recipes-core/systemd/systemd_216.bb
+++ b/meta/recipes-core/systemd/systemd_216.bb
@@ -36,6 +36,7 @@ SRC_URI = "git://anongit.freedesktop.org/systemd/systemd;branch=master;protocol=
36 file://00-create-volatile.conf \ 36 file://00-create-volatile.conf \
37 file://init \ 37 file://init \
38 file://run-ptest \ 38 file://run-ptest \
39 ${@bb.utils.contains('PACKAGECONFIG', 'resolved', '', 'file://0001-tmpfiles.d-etc.conf-disable-resolv.conf-symlink.patch', d)} \
39 " 40 "
40 41
41S = "${WORKDIR}/git" 42S = "${WORKDIR}/git"