diff options
author | Denis Osvald <denis.osvald@sartura.hr> | 2016-08-25 13:54:52 +0200 |
---|---|---|
committer | Felix Fietkau <nbd@nbd.name> | 2016-08-25 13:58:11 +0200 |
commit | d6bb4f1a1ddab325024966cd79abd34364dfdd15 (patch) | |
tree | c02b9ab720f26acc6f5bcb40c1382ffd8987b47a | |
parent | 686c05d738a7a1f7ec62c47807f07f6f642904b1 (diff) | |
download | ubus-d6bb4f1a1ddab325024966cd79abd34364dfdd15.tar.gz |
ubusd: don't check ACL when object is NULL
If there are any ACLs present other than global wildcard "*", the AVL
tree comparator will compare ACL key to object name. However, object
name can be NULL in cases where ACL check is done on call to internal
ubus objects (e.g. ubus monitor).
With this change we skip checking ACLs on such NULL objects.
Signed-off-by: Denis Osvald <denis.osvald@sartura.hr>
-rw-r--r-- | ubusd_acl.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/ubusd_acl.c b/ubusd_acl.c index 85ada5d..2700c86 100644 --- a/ubusd_acl.c +++ b/ubusd_acl.c @@ -101,7 +101,7 @@ ubusd_acl_check(struct ubus_client *cl, const char *obj, struct blob_attr *cur; int rem; - if (!cl->uid) + if (!cl->uid || !obj) return 0; acl = avl_find_ge_element(&ubusd_acls, obj, acl, avl); |