Merge Ubus with the 2016.02.26 version.

This commit is contained in:
2016-02-26 23:57:13 +01:00
parent 7eac5c920a
commit 5ed9eb9715
23 changed files with 1282 additions and 97 deletions

View File

@@ -58,6 +58,9 @@ static struct ubus_object_type *ubus_create_obj_type(struct blob_attr *sig)
int rem;
type = calloc(1, sizeof(*type));
if (!type)
return NULL;
type->refcount = 1;
if (!ubus_alloc_id(&obj_types, &type->id, 0))
@@ -142,6 +145,9 @@ struct ubus_object *ubusd_create_object(struct ubus_client *cl, struct blob_attr
return NULL;
if (attr[UBUS_ATTR_OBJPATH]) {
if (ubusd_acl_check(cl, blob_data(attr[UBUS_ATTR_OBJPATH]), NULL, UBUS_ACL_PUBLISH))
goto free;
obj->path.key = strdup(blob_data(attr[UBUS_ATTR_OBJPATH]));
if (!obj->path.key)
goto free;
@@ -225,4 +231,6 @@ static void __constructor ubusd_obj_init(void)
ubus_init_id_tree(&obj_types);
ubus_init_string_tree(&path, false);
ubusd_event_init();
ubusd_acl_init();
ubusd_monitor_init();
}