diff options
| -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; | 
