summaryrefslogtreecommitdiff
path: root/src/bus-proxyd/bus-xml-policy.c
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2015-01-09 18:34:46 +0100
committerLennart Poettering <lennart@poettering.net>2015-01-09 18:35:36 +0100
commitfe21f16764147d51819a904d57ac36967f9913e3 (patch)
tree453ec806680eead04b35656a324e4ebd45d838d8 /src/bus-proxyd/bus-xml-policy.c
parent8cb4ab0058e51f1fba93683d145ef95f97c2fa86 (diff)
bus-proxy: make sure sure eavesdrop= XML attributes are properly handled
Diffstat (limited to 'src/bus-proxyd/bus-xml-policy.c')
-rw-r--r--src/bus-proxyd/bus-xml-policy.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/bus-proxyd/bus-xml-policy.c b/src/bus-proxyd/bus-xml-policy.c
index cf39c52546..9e4cc454cf 100644
--- a/src/bus-proxyd/bus-xml-policy.c
+++ b/src/bus-proxyd/bus-xml-policy.c
@@ -279,9 +279,8 @@ static int file_load(Policy *p, const char *path) {
ic = POLICY_ITEM_GROUP;
else if (streq(name, "eavesdrop")) {
log_debug("Unsupported attribute %s= at %s:%u, ignoring.", name, path, line);
- i->class = POLICY_ITEM_IGNORE;
state = STATE_ALLOW_DENY_OTHER_ATTRIBUTE;
- break;
+ ic = POLICY_ITEM_RECV; /* eavesdrop is a type of receive attribute match! */
} else {
log_error("Unknown attribute %s= at %s:%u, ignoring.", name, path, line);
state = STATE_ALLOW_DENY_OTHER_ATTRIBUTE;
@@ -289,7 +288,7 @@ static int file_load(Policy *p, const char *path) {
}
if (i->class != _POLICY_ITEM_CLASS_UNSET && ic != i->class) {
- log_error("send_ and receive_ fields mixed on same tag at %s:%u.", path, line);
+ log_error("send_, receive_/eavesdrop fields mixed on same tag at %s:%u.", path, line);
return -EINVAL;
}