Signed-off-by: Pawel Wieczorkiewicz <pwieczorkiewicz(a)suse.de>
Signed-off-by: Sebastian Krahmer <krahmer(a)suse.com>
---
configure.ac | 8 ++++++--
teamd/teamd.conf.in | 17 +++++++++++++++++
2 files changed, 23 insertions(+), 2 deletions(-)
create mode 100644 teamd/teamd.conf.in
diff --git a/configure.ac b/configure.ac
index f459f4e..ddfccde 100644
--- a/configure.ac
+++ b/configure.ac
@@ -78,11 +78,15 @@ AS_IF([test "x$enable_debug" = "xyes"], [
])
user=root
+dbus_policy_template="teamd/teamd.conf.in"
+dbus_policy_file="teamd/dbus/teamd.conf"
AC_ARG_WITH([user],
[AS_HELP_STRING([--with-user@<:@=username@:>@], [Set default daemon user
@<:@default=root@:>@])],
[case "$withval" in
- yes|no|"") ;;
- *) user="$withval" ;;
+ root|yes|no|"") ;;
+ *) user="$withval"
+ sed -e "s|[@]teamd_user[@]|$user|g" \
+ < $dbus_policy_template > $dbus_policy_file ;;
esac]
)
AC_DEFINE_UNQUOTED(TEAMD_USER, "${user}", [TEAMD USER.])
diff --git a/teamd/teamd.conf.in b/teamd/teamd.conf.in
new file mode 100644
index 0000000..d1cb2a1
--- /dev/null
+++ b/teamd/teamd.conf.in
@@ -0,0 +1,17 @@
+<?xml version="1.0"?> <!--*-nxml-*-->
+<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration
1.0//EN"
+ "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
+<busconfig>
+ <policy user="root">
+ <allow own_prefix="org.libteam.teamd"/>
+ <allow send_interface="org.libteam.teamd"/>
+ </policy>
+ <policy user="@teamd_user@">
+ <allow own_prefix="org.libteam.teamd"/>
+ <allow send_interface="org.libteam.teamd"/>
+ </policy>
+ <policy context="default">
+ <deny own_prefix="org.libteam.teamd"/>
+ <deny send_interface="org.libteam.teamd"/>
+ </policy>
+</busconfig>
--
2.1.4