hook acl into libubus
authorJohn Crispin <blogic@openwrt.org>
Sat, 25 Apr 2015 08:10:26 +0000 (10:10 +0200)
committerJohn Crispin <blogic@openwrt.org>
Thu, 18 Jun 2015 17:01:17 +0000 (19:01 +0200)
Signed-off-by: John Crispin <blogic@openwrt.org>
libubus-obj.c

index 8bc83dc62cfd163f32702ebc13605d9067400259..990d04bd9844b8d590c555193742575e58e1458f 100644 (file)
@@ -69,7 +69,11 @@ ubus_process_invoke(struct ubus_context *ctx, struct ubus_msghdr *hdr,
        req.peer = hdr->peer;
        req.seq = hdr->seq;
        req.object = obj->id;
-
+       if (attrbuf[UBUS_ATTR_USER] && attrbuf[UBUS_ATTR_GROUP]) {
+               req.acl.user = blobmsg_get_string(attrbuf[UBUS_ATTR_USER]);
+               req.acl.group = blobmsg_get_string(attrbuf[UBUS_ATTR_GROUP]);
+               req.acl.object = obj->name;
+       }
        for (method = 0; method < obj->n_methods; method++)
                if (!obj->methods[method].name ||
                    !strcmp(obj->methods[method].name,