libhomescreen-2017: correct dbus permissions to allow statusbar access 57/12257/2
authorMatt Ranostay <matt.ranostay@konsulko.com>
Fri, 1 Dec 2017 06:31:14 +0000 (22:31 -0800)
committerMatt Ranostay <matt.ranostay@konsulko.com>
Fri, 1 Dec 2017 06:55:20 +0000 (06:55 +0000)
Settings application using bluetooth + wifi bindings was able to change
HMI status because of invalid dbus permissions access

Bug-AGL: SPEC-1150
Change-Id: Id730c67dc8e20dfc38424247fe68ce16939aff8b
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
recipes-demo-hmi/libhomescreen/libhomescreen-2017/org.agl.statusbar.conf [new file with mode: 0644]
recipes-demo-hmi/libhomescreen/libhomescreen-2017_git.bb

diff --git a/recipes-demo-hmi/libhomescreen/libhomescreen-2017/org.agl.statusbar.conf b/recipes-demo-hmi/libhomescreen/libhomescreen-2017/org.agl.statusbar.conf
new file mode 100644 (file)
index 0000000..dc3852e
--- /dev/null
@@ -0,0 +1,16 @@
+<!DOCTYPE busconfig PUBLIC
+"-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
+"http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
+<busconfig>
+       <policy context="default">
+               <!-- Allow everyone to talk to main service. We'll later add an agent to
+                    only share the location if user allows it. -->
+               <allow send_interface="org.agl.statusbar"/>
+       </policy>
+
+       <policy user="root">
+               <!-- Allow root to own the name on the bus -->
+               <allow own="org.agl.statusbar"/>
+       </policy>
+</busconfig>
+
index 4ef42ee..b78f2f5 100644 (file)
@@ -12,9 +12,16 @@ DEPENDS = "af-binder json-c"
 
 inherit cmake
 
-SRC_URI = "git://gerrit.automotivelinux.org/gerrit/p/src/libhomescreen.git;protocol=https;branch=${AGL_BRANCH}"
+SRC_URI = "git://gerrit.automotivelinux.org/gerrit/p/src/libhomescreen.git;protocol=https;branch=${AGL_BRANCH} \
+          file://org.agl.statusbar.conf \
+         "
 SRCREV = "d97eb6052b7652a42d502e5887bd7acf3fc6d91b"
 S = "${WORKDIR}/git"
 
+do_install_append() {
+       mkdir -p ${D}${sysconfdir}/dbus-1/session.d
+       install -m 0644 ${WORKDIR}/org.agl.statusbar.conf  ${D}${sysconfdir}/dbus-1/session.d
+}
+
 RDEPENDS_${PN} = "agl-service-homescreen-2017"
 PROVIDES += "virtual/libhomescreen"