diff options
author | Pawel Wieczorkiewicz <pwieczorkiewicz@suse.de> | 2015-09-16 12:38:02 +0200 |
---|---|---|
committer | Jiri Pirko <jiri@resnulli.us> | 2015-09-16 14:38:28 +0200 |
commit | 2797fa419702fe3f0d82988a71e95c15d080c36d (patch) | |
tree | 7788683ab7de893215b0c35152ccda88dd8df3c7 | |
parent | a6e7faccf949c1650c4f3da765459a113c454b19 (diff) | |
download | libteam-2797fa419702fe3f0d82988a71e95c15d080c36d.tar.gz |
regenerate dbus policy file from template when user changed
Signed-off-by: Pawel Wieczorkiewicz <pwieczorkiewicz@suse.de>
Signed-off-by: Sebastian Krahmer <krahmer@suse.com>
Signed-off-by: Jiri Pirko <jiri@resnulli.us>
-rw-r--r-- | configure.ac | 8 | ||||
-rw-r--r-- | teamd/teamd.conf.in | 17 |
2 files changed, 23 insertions, 2 deletions
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> |