return core.handle_message(handle, data, true);
case "request":
handle = cl.subscribe[name];
- if (!handle)
- return libubus.STATUS_INVALID_ARGUMENT;
+ if (!handle &&
+ !core.acl_check("subscribe", cl.acl, [ name ]))
+ return libubus.STATUS_PERMISSION_DENIED;
+
+ handle ??= { client: cl.id };
return core.handle_request(handle, req, data, true);
}
}