diff options
Diffstat (limited to 'input')
-rw-r--r-- | input/Makefile.am | 8 | ||||
-rw-r--r-- | input/bluetooth-input.conf | 21 | ||||
-rw-r--r-- | input/input-service.c | 2 |
3 files changed, 30 insertions, 1 deletions
diff --git a/input/Makefile.am b/input/Makefile.am index c23df9ba..b578645c 100644 --- a/input/Makefile.am +++ b/input/Makefile.am @@ -1,4 +1,10 @@ +if CONFIGFILES +dbusdir = $(sysconfdir)/dbus-1/system.d + +dbus_DATA = bluetooth-input.conf +endif + noinst_PROGRAMS = bt.inputd bt_inputd_SOURCES = main.c input-service.h input-service.c @@ -9,4 +15,6 @@ AM_CFLAGS = @BLUEZ_CFLAGS@ @DBUS_CFLAGS@ INCLUDES = -I$(top_srcdir)/common +EXTRA_DIST = bluetooth-input.conf + MAINTAINERCLEANFILES = Makefile.in diff --git a/input/bluetooth-input.conf b/input/bluetooth-input.conf new file mode 100644 index 00000000..90643f74 --- /dev/null +++ b/input/bluetooth-input.conf @@ -0,0 +1,21 @@ +<!-- This configuration file specifies the required security policies + for Bluetooth input service to work. --> + +<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN" + "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd"> +<busconfig> + + <!-- ../system.conf have denied everything, so we just punch some holes --> + + <policy user="root"> + <allow own="org.bluez.input"/> + </policy> + + <policy at_console="true"> + <allow send_destination="org.bluez.Input"/> + <allow receive_sender="org.bluez.Input"/> + + <allow send_path="/org/bluez/input"/> + </policy> + +</busconfig> diff --git a/input/input-service.c b/input/input-service.c index a64b1c25..d76ef74b 100644 --- a/input/input-service.c +++ b/input/input-service.c @@ -144,7 +144,7 @@ int input_dbus_init(void) const char *description = "A service for input devices"; const char *input_path = INPUT_PATH; - connection = init_dbus(NULL, NULL, NULL); + connection = init_dbus("org.bluez.input", NULL, NULL); if (!connection) return -1; |