aboutsummaryrefslogtreecommitdiffhomepage
path: root/dbus
diff options
context:
space:
mode:
authorOphestra Umiker <cat@ophivana.moe>2024-09-09 13:27:31 +0900
committerOphestra Umiker <cat@ophivana.moe>2024-09-09 13:27:31 +0900
commit35d040590b3c8c9a123d059dee49c1046037382d (patch)
tree8955684becde1e1d533a35687be269df395352e1 /dbus
parentc1bfe2cd74f062e63f0d475dce4602a89f9b5c26 (diff)
dbus/config: document fields and add --call and --broadcast
Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
Diffstat (limited to 'dbus')
-rw-r--r--dbus/config.go20
1 files changed, 17 insertions, 3 deletions
diff --git a/dbus/config.go b/dbus/config.go
index 9173d78d..08441c10 100644
--- a/dbus/config.go
+++ b/dbus/config.go
@@ -1,16 +1,24 @@
package dbus
type Config struct {
- See []string `json:"see"`
+ // See set 'see' policy for NAME (--see=NAME)
+ See []string `json:"see"`
+ // Talk set 'talk' policy for NAME (--talk=NAME)
Talk []string `json:"talk"`
- Own []string `json:"own"`
+ // Own set 'own' policy for NAME (--own=NAME)
+ Own []string `json:"own"`
+
+ // Call set RULE for calls on NAME (--call=NAME=RULE)
+ Call map[string]string `json:"call"`
+ // Broadcast set RULE for broadcasts from NAME (--broadcast=NAME=RULE)
+ Broadcast map[string]string `json:"broadcast"`
Log bool `json:"log,omitempty"`
Filter bool `json:"filter"`
}
func (c *Config) Args(address, path string) (args []string) {
- argc := 2 + len(c.See) + len(c.Talk) + len(c.Own)
+ argc := 2 + len(c.See) + len(c.Talk) + len(c.Own) + len(c.Call) + len(c.Broadcast)
if c.Log {
argc++
}
@@ -29,6 +37,12 @@ func (c *Config) Args(address, path string) (args []string) {
for _, name := range c.Own {
args = append(args, "--own="+name)
}
+ for name, rule := range c.Call {
+ args = append(args, "--call="+name+"="+rule)
+ }
+ for name, rule := range c.Broadcast {
+ args = append(args, "--broadcast="+name+"="+rule)
+ }
if c.Log {
args = append(args, "--log")
}