diff --git a/bin/Makefile.am b/bin/Makefile.am index ed513b25..68671158 100644 --- a/bin/Makefile.am +++ b/bin/Makefile.am @@ -12,7 +12,9 @@ libbbfdm_la_SOURCES = \ ../dmuci.c \ ../dmcommon.c \ ../dmoperate.c \ - ../dmdiagnostics.c \ + ../dmdiagnostics.c \ + ../dmentryjson.c \ + ../dmmemjson.c \ ../wepkey.c if BBF_TR181 diff --git a/dmbbf.c b/dmbbf.c index 2146e3ee..4b006393 100644 --- a/dmbbf.c +++ b/dmbbf.c @@ -281,65 +281,89 @@ int dm_browse_leaf(struct dmctx *dmctx, DMNODE *parent_node, DMLEAF *leaf, void return err; } +void dm_browse_entry(struct dmctx *dmctx, DMNODE *parent_node, DMOBJ *entryobj, void *data, char *instance, char *parent_obj, int *err) +{ + DMNODE node = {0}; + + node.obj = entryobj; + node.parent = parent_node; + node.instance_level = parent_node->instance_level; + node.matched = parent_node->matched; + dmasprintf(&(node.current_object), "%s%s%c", parent_obj, entryobj->obj, dm_delim); + + if (entryobj->bbfdm_type != bbfdatamodel_type && entryobj->bbfdm_type != BBFDM_BOTH) + return; + + if (dmctx->checkobj) { + *err = dmctx->checkobj(dmctx, &node, entryobj->permission, entryobj->addobj, entryobj->delobj, entryobj->forced_inform, entryobj->notification, entryobj->get_linker, data, instance); + if (*err) + return; + } + + *err = dmctx->method_obj(dmctx, &node, entryobj->permission, entryobj->addobj, entryobj->delobj, entryobj->forced_inform, entryobj->notification, entryobj->get_linker, data, instance); + if (dmctx->stop) + return; + + if (entryobj->checkobj && ((entryobj->checkobj)(dmctx, data) == false) ) { + return; + } + + if (entryobj->browseinstobj) { + if (dmctx->instance_wildchar) { + dm_link_inst_obj(dmctx, &node, data, dmctx->instance_wildchar); + return; + } + else { + entryobj->browseinstobj(dmctx, &node, data, instance); + *err = dmctx->faultcode; + return; + } + } + + if (entryobj->leaf) { + if (dmctx->checkleaf) { + *err = dmctx->checkleaf(dmctx, &node, entryobj->permission, entryobj->addobj, entryobj->delobj, entryobj->forced_inform, entryobj->notification, entryobj->get_linker, data, instance); + if (!*err) { + *err = dm_browse_leaf(dmctx, &node, entryobj->leaf, data, instance); + if (dmctx->stop) + return; + } + } else { + *err = dm_browse_leaf(dmctx, &node, entryobj->leaf, data, instance); + if (dmctx->stop) + return; + } + } + + if (entryobj->nextobj || entryobj->nextjsonobj) { + *err = dm_browse(dmctx, &node, entryobj->nextobj, data, instance); + } +} + int dm_browse(struct dmctx *dmctx, DMNODE *parent_node, DMOBJ *entryobj, void *data, char *instance) { + DMOBJ *jentryobj; int err = 0; - if (!entryobj) - return 0; + char *parent_obj = parent_node->current_object; - for (; entryobj->obj; entryobj++) { - DMNODE node = {0}; - node.obj = entryobj; - node.parent = parent_node; - node.instance_level = parent_node->instance_level; - node.matched = parent_node->matched; - dmasprintf(&(node.current_object), "%s%s%c", parent_obj, entryobj->obj, dm_delim); - if (entryobj->bbfdm_type != bbfdatamodel_type && entryobj->bbfdm_type != BBFDM_BOTH) - continue; - if (dmctx->checkobj) { - err = dmctx->checkobj(dmctx, &node, entryobj->permission, entryobj->addobj, entryobj->delobj, entryobj->forced_inform, entryobj->notification, entryobj->get_linker, data, instance); - if (err) - continue; - } - err = dmctx->method_obj(dmctx, &node, entryobj->permission, entryobj->addobj, entryobj->delobj, entryobj->forced_inform, entryobj->notification, entryobj->get_linker, data, instance); - if (dmctx->stop) - return err; - if (entryobj->checkobj && ((entryobj->checkobj)(dmctx, data) == false) ){ - continue; - } - if (entryobj->browseinstobj) { - if (dmctx->instance_wildchar) { - dm_link_inst_obj(dmctx, &node, data, dmctx->instance_wildchar); - continue; - } - else { - entryobj->browseinstobj(dmctx, &node, data, instance); - err = dmctx->faultcode; - if (dmctx->stop) - return err; - continue; - } - } - if (entryobj->leaf) { - if (dmctx->checkleaf) { - err = dmctx->checkleaf(dmctx, &node, entryobj->permission, entryobj->addobj, entryobj->delobj, entryobj->forced_inform, entryobj->notification, entryobj->get_linker, data, instance); - if (!err) { - err = dm_browse_leaf(dmctx, &node, entryobj->leaf, data, instance); - if (dmctx->stop) - return err; - } - } else { - err = dm_browse_leaf(dmctx, &node, entryobj->leaf, data, instance); - if (dmctx->stop) - return err; - } - } - if (entryobj->nextobj) { - err = dm_browse(dmctx, &node, entryobj->nextobj, data, instance); + + if (entryobj) { + for (; entryobj->obj; entryobj++) { + dm_browse_entry(dmctx, parent_node, entryobj, data, instance, parent_obj, &err); if (dmctx->stop) return err; } } + + if (parent_node->obj) { + jentryobj = parent_node->obj->nextjsonobj; + for (; (jentryobj && jentryobj->obj); jentryobj++) { + dm_browse_entry(dmctx, parent_node, jentryobj, data, instance, parent_obj, &err); + if (dmctx->stop) + return err; + } + } + return err; } @@ -401,7 +425,6 @@ int rootcmp(char *inparam, char *rootobj) return cmp; } -//END// /*************************** * update instance & alias ***************************/ @@ -1037,9 +1060,7 @@ int string_to_bool(char *v, bool *b) *****************/ int dm_entry_operate(struct dmctx *dmctx) { - int res; - - res = operate_on_node(dmctx, dmctx->in_param, dmctx->in_value); + int res = operate_on_node(dmctx, dmctx->in_param, dmctx->in_value); return res; } diff --git a/dmbbf.h b/dmbbf.h index c141e109..76fc3031 100644 --- a/dmbbf.h +++ b/dmbbf.h @@ -122,7 +122,7 @@ typedef struct dm_leaf_s { } DMLEAF; typedef struct dm_obj_s { - /* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type(12)*/ + /* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type(13)*/ char *obj; struct dm_permession_s *permission; int (*addobj)(char *refparam, struct dmctx *ctx, void *data, char **instance); @@ -131,6 +131,7 @@ typedef struct dm_obj_s { int (*browseinstobj)(struct dmctx *dmctx, struct dmnode *node, void *data, char *instance); struct dm_forced_inform_s *forced_inform; struct dm_notif_s *notification; + struct dm_obj_s *nextjsonobj; struct dm_obj_s *nextobj; struct dm_leaf_s *leaf; int (*get_linker)(char *refparam, struct dmctx *dmctx, void *data, char *instance, char **linker); @@ -186,6 +187,17 @@ struct dm_parameter { unsigned int flags; }; +struct dm_json_parameter { + struct list_head list; + char *name; + char *arg1; + char *arg2; + char *arg3; + char *arg4; + char *arg5; + char *arg6; +}; + struct dmctx { bool stop; @@ -197,6 +209,7 @@ struct dmctx struct list_head list_parameter; struct list_head set_list_tmp; struct list_head list_fault_param; + struct list_head list_json_parameter; DMOBJ *dm_entryobj; bool nextlevel; int depth; diff --git a/dmcommon.c b/dmcommon.c index 7969a8dc..64c8f6e4 100644 --- a/dmcommon.c +++ b/dmcommon.c @@ -1801,7 +1801,8 @@ int copy_temporary_file_to_original_file(char *f1, char *f2) return 1; } -char* readFileContent(char *filepath){ +char* readFileContent(char *filepath) +{ char *str=NULL, *tmp= NULL, *res= NULL; FILE *f = fopen(filepath, "rb"); int i, j= 0; diff --git a/dmentry.c b/dmentry.c index a5f1b744..0fd700e3 100644 --- a/dmentry.c +++ b/dmentry.c @@ -11,17 +11,18 @@ * */ +#include +#include +#include #include "dmbbf.h" #include "dmubus.h" #include "dmuci.h" #include "dmentry.h" #include "device.h" #include "wepkey.h" -#include -#include -#include #include "dmcommon.h" #include "dmoperate.h" +#include "dmentryjson.h" LIST_HEAD(head_package_change); unsigned char dmcli_timetrack = 0; @@ -106,7 +107,6 @@ static int dm_ctx_init_custom(struct dmctx *ctx, unsigned int dm_type, unsigned free(tUPNPSupportedDM); #else - strcpy(dmroot, "Device"); dm_delim = DMDELIM_CWMP; ctx->dm_entryobj = tEntry181Obj; #endif @@ -177,10 +177,12 @@ void dmentry_instance_lookup_inparam(struct dmctx *ctx) int dm_entry_param_method(struct dmctx *ctx, int cmd, char *inparam, char *arg1, char *arg2) { int fault = 0; - bool setnotif = true; - bool alarm = false, event = false; + bool setnotif = true, alarm = false, event = false; int err, err2; + if (check_stats_folder(JSON_FOLDER_PATH)) + load_json_dynamic_arrays(ctx); + if (!inparam) inparam = ""; ctx->in_param = inparam; dmentry_instance_lookup_inparam(ctx); diff --git a/dmentryjson.c b/dmentryjson.c new file mode 100644 index 00000000..7ebf7ee1 --- /dev/null +++ b/dmentryjson.c @@ -0,0 +1,881 @@ +/* + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * Copyright (C) 2019 iopsys Software Solutions AB + * Author Amin Ben Ramdhane + * + */ + +#include +#include +#include +#include +#include +#include "dmcommon.h" +#include "dmuci.h" +#include "dmubus.h" +#include "dmjson.h" +#include "dmentryjson.h" +#include "dmmemjson.h" +#include "device.h" + +LIST_HEAD(json_list); +static char json_hash[64] = ""; + +static int get_stats_folder(char *folder_path, int *file_count, unsigned long *size, unsigned long *date) +{ + struct stat stats; + struct dirent *entry; + DIR *dirp = NULL; + char buf[256] = {0}; + int filecount = 0; + unsigned long filesize = 0, filedate = 0; + + if (isfolderexist(folder_path)) { + dirp = opendir(folder_path); + while ((entry = readdir(dirp)) != NULL) { + if ((entry->d_type == DT_REG) && (strstr(entry->d_name, ".json"))) { + filecount++; + sprintf(buf, "%s/%s", folder_path, entry->d_name); + if (!stat(buf, &stats)) { + filesize = (filesize + stats.st_size) / 2; + filedate = (filedate + stats.st_mtime) / 2; + } + } + } + if (dirp) closedir(dirp); + + *file_count = filecount; + *size = filesize; + *date = filedate; + return 1; + } + return 0; +} + +int dm_browse_node_object_tree(DMNODE *parent_node, DMOBJ *entryobj) +{ + if (!entryobj) + return 0; + + for (; entryobj->obj; entryobj++) { + entryobj->nextjsonobj = NULL; + DMNODE node = {0}; + node.obj = entryobj; + node.parent = parent_node; + node.instance_level = parent_node->instance_level; + node.matched = parent_node->matched; + + if (entryobj->nextobj) + dm_browse_node_object_tree(&node, entryobj->nextobj); + } + return 0; +} + +static int free_node_object_tree(void) +{ + DMOBJ *root = tEntry181Obj; + DMNODE node = {.current_object = ""}; + dm_browse_node_object_tree(&node, root); + return 0; +} + + +int free_json_dynamic_arrays(void) +{ + free_json_data_from_list(&json_list); + dmcleanmemjson(); + free_node_object_tree(); + return 0; +} + +int check_stats_folder(char *folder_path) +{ + int file_count = 0; + unsigned long size = 0, date = 0; + char str[64] = ""; + + if (!get_stats_folder(folder_path, &file_count, &size, &date)) + return 0; + + sprintf(str, "count:%d,sizes:%lu,date:%lu", file_count, size, date); + + if (strcmp(str, json_hash)) { + free_json_dynamic_arrays(); + strcpy(json_hash, str); + return 1; + } + return 0; +} + +static void generate_prefixobj_and_obj_full_obj(char *full_obj, char **prefix_obj, char **obj) +{ + char *pch, *pchr, *tmp_obj = NULL, *str = NULL; + + str = dmstrdupjson(full_obj); + for (pch = strtok_r(str, ".", &pchr); pch != NULL; pch = strtok_r(NULL, ".", &pchr)) { + if (pchr != NULL && *pchr != '\0') { + if (*prefix_obj == NULL) { + dmasprintfjson(prefix_obj, "%s.", pch); + } else { + tmp_obj = dmstrdupjson(*prefix_obj); + dmfreejson(*prefix_obj); + dmasprintfjson(prefix_obj, "%s%s.", tmp_obj, pch); + dmfreejson(tmp_obj); + } + } else { + *obj = dmstrdupjson(pch); + } + } + if(str) dmfreejson(str); +} + +static char *generate_obj_without_instance(char *full_obj, bool is_obj) +{ + char *pch, *pchr, *tmp_obj = NULL, *str = NULL, *obj = NULL; + + str = dmstrdupjson(full_obj); + for (pch = strtok_r(str, ".", &pchr); pch != NULL; pch = strtok_r(NULL, ".", &pchr)) { + if (atoi(pch) == 0) { + if (obj == NULL) { + dmasprintfjson(&obj, "%s.", pch); + } else { + tmp_obj = dmstrdupjson(obj); + dmfreejson(obj); + if (is_obj) + dmasprintfjson(&obj, "%s%s.", tmp_obj, pch); + else { + if (pchr != NULL && *pchr != '\0') + dmasprintfjson(&obj, "%s%s.", tmp_obj, pch); + else + dmasprintfjson(&obj, "%s%s", tmp_obj, pch); + } + dmfreejson(tmp_obj); + } + } + } + if(str) dmfreejson(str); + return obj; +} + +static char *replace_string(const char *str, const char *old_string, const char *new_string) +{ + char *value; + int i, cnt = 0; + int new_string_len = strlen(new_string); + int old_string_len = strlen(old_string); + + for (i = 0; str[i] != '\0'; i++) { + if (strstr(&str[i], old_string) == &str[i]) { + cnt++; + i += old_string_len - 1; + } + } + + value = (char *)dmmallocjson(i + cnt * (new_string_len - old_string_len) + 1); + i = 0; + while (*str) { + if (strstr(str, old_string) == str) { + strcpy(&value[i], new_string); + i += new_string_len; + str += old_string_len; + } + else + value[i++] = *str++; + } + value[i] = '\0'; + + return value; +} + +int get_index_of_available_entry(DMOBJ *jentryobj) +{ + int idx = 0; + for (; (jentryobj && jentryobj->obj); jentryobj++) { + idx++; + } + return idx; +} + +int plugin_json_obj_match(struct dmctx *dmctx, struct dmnode *node, char *entry_obj, char *full_obj) +{ + if (node->matched) + return 0; + + if (!dmctx->inparam_isparam && strstr(node->current_object, full_obj) == node->current_object) { + node->matched++; + dmctx->findparam = 1; + return 0; + } + + if (strstr(full_obj, node->current_object) == full_obj) + return 0; + + return FAULT_9005; +} + + +void dm_check_obj(struct dmctx *dmctx, DMNODE *parent_node, DMOBJ *entryobj, char *full_obj, char *obj, DMOBJ **root_entry, int *obj_found) +{ + int err = 0; + if (!entryobj) + return; + char *parent_obj = parent_node->current_object; + for (; entryobj->obj; entryobj++) { + DMNODE node = {0}; + node.obj = entryobj; + node.parent = parent_node; + node.instance_level = parent_node->instance_level; + node.matched = parent_node->matched; + dmasprintfjson(&(node.current_object), "%s%s%c", parent_obj, entryobj->obj, dm_delim); + if (strcmp(node.current_object, obj) == 0) { + *root_entry = entryobj; + *obj_found = 1; + return; + } + + err = plugin_json_obj_match(dmctx, &node, entryobj->obj, full_obj); + if (err) + continue; + + if (entryobj->nextobj) + dm_check_obj(dmctx, &node, entryobj->nextobj, full_obj, obj, root_entry, obj_found); + } +} + +int check_root_obj(struct dmctx *ctx, char *in_param_json, DMOBJ **root_entry) +{ + char *prefix_obj = NULL, *obj = NULL, *full_obj; + int prefix_obj_found = 0, obj_found = 0; + DMOBJ *root = ctx->dm_entryobj; + DMNODE node = {.current_object = ""}; + + full_obj = replace_string(in_param_json, ".{i}.", "."); + + if (strcmp(full_obj, "Device.") == 0) + prefix_obj = full_obj; + else + generate_prefixobj_and_obj_full_obj(full_obj, &prefix_obj, &obj); + + dm_check_obj(ctx, &node, root, full_obj, prefix_obj, root_entry, &prefix_obj_found); + if(prefix_obj_found && *root_entry) { + dm_check_obj(ctx, &node, root, full_obj, full_obj, root_entry, &obj_found); + dmfreejson(full_obj); + if(obj_found) + return 1; + else + return 2; + } + dmfreejson(full_obj); + return 0; +} + +void add_json_data_to_list(struct list_head *dup_list, char *name, char *arg1, char *arg2, char *arg3, char *arg4, char *arg5, char *arg6) +{ + struct dm_json_parameter *dm_json_parameter; + dm_json_parameter = dmcallocjson(1, sizeof(struct dm_json_parameter)); + list_add_tail(&dm_json_parameter->list, dup_list); + if(name) dm_json_parameter->name = dmstrdupjson(name); + if (arg1) dm_json_parameter->arg1 = dmstrdupjson(arg1); + if (arg2) dm_json_parameter->arg2 = dmstrdupjson(arg2); + if (arg3) dm_json_parameter->arg3 = dmstrdupjson(arg3); + if (arg4) dm_json_parameter->arg4 = dmstrdupjson(arg4); + if (arg5) dm_json_parameter->arg5 = dmstrdupjson(arg5); + if (arg6) dm_json_parameter->arg6 = dmstrdupjson(arg6); +} + +void delete_json_data_from_list(struct dm_json_parameter *dm_json_parameter) +{ + list_del(&dm_json_parameter->list); + if (dm_json_parameter->name) dmfreejson(dm_json_parameter->name); + if (dm_json_parameter->arg1) dmfreejson(dm_json_parameter->arg1); + if (dm_json_parameter->arg2) dmfreejson(dm_json_parameter->arg2); + if (dm_json_parameter->arg3) dmfreejson(dm_json_parameter->arg3); + if (dm_json_parameter->arg4) dmfreejson(dm_json_parameter->arg4); + if (dm_json_parameter->arg5) dmfreejson(dm_json_parameter->arg5); + if (dm_json_parameter->arg6) dmfreejson(dm_json_parameter->arg6); + if (dm_json_parameter) dmfreejson(dm_json_parameter); +} + +void free_json_data_from_list(struct list_head *dup_list) +{ + struct dm_json_parameter *dm_json_parameter; + while (dup_list->next != dup_list) { + dm_json_parameter = list_entry(dup_list->next, struct dm_json_parameter, list); + delete_json_data_from_list(dm_json_parameter); + } +} + +int browse_obj(struct dmctx *dmctx, DMNODE *parent_node, void *prev_data, char *prev_instance) +{ + //UCI: arg1=type :: arg2=uci_file :: arg3=uci_section_type :: arg4=uci_dmmap_file :: arg5="" :: arg6="" + + char *arg1 = NULL, *arg2 = NULL, *arg3 = NULL, *arg4 = NULL, *prefix_obj = NULL, *object = NULL; + char buf_instance[64] = "", buf_alias[64] = ""; + struct dm_json_parameter *pleaf; + + char *obj = generate_obj_without_instance(parent_node->current_object, true); + generate_prefixobj_and_obj_full_obj(parent_node->current_object, &prefix_obj, &object); + + sprintf(buf_instance, "%s_instance", object); + sprintf(buf_alias, "%s_alias", object); + for (int i = 0; buf_instance[i]; i++) { + buf_instance[i] = tolower(buf_instance[i]); + } + for (int i = 0; buf_alias[i]; i++) { + buf_alias[i] = tolower(buf_alias[i]); + } + + list_for_each_entry(pleaf, &json_list, list) { + if (strcmp(pleaf->name, obj) == 0) { + arg1 = pleaf->arg1; + arg2 = pleaf->arg2; + arg3 = pleaf->arg3; + arg4 = pleaf->arg4; + break; + } + } + + if (arg1 && strcmp(arg1, "uci") == 0) { + char *instance = NULL, *instnbr = NULL; + struct dmmap_dup *p; + LIST_HEAD(dup_list); + + if(arg2 && arg3 && arg4) { + synchronize_specific_config_sections_with_dmmap(arg2, arg3, arg4, &dup_list); + list_for_each_entry(p, &dup_list, list) { + instance = handle_update_instance(1, dmctx, &instnbr, update_instance_alias, 3, p->dmmap_section, buf_instance, buf_alias); + if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)p->config_section, instance) == DM_STOP) + break; + } + } + free_dmmap_config_dup_list(&dup_list); + } + return 0; +} + +static int add_obj(char *refparam, struct dmctx *ctx, void *data, char **instance) +{ + //UCI: arg1=type :: arg2=uci_file :: arg3=uci_section_type :: arg4=uci_dmmap_file :: arg5="" :: arg6="" + + char *arg1 = NULL, *arg2 = NULL, *arg3 = NULL, *arg4 = NULL, *prefix_obj = NULL, *object = NULL; + struct dm_json_parameter *pleaf; + char buf_instance[64] = ""; + + char *obj = generate_obj_without_instance(refparam, true); + list_for_each_entry(pleaf, &json_list, list) { + if (strcmp(pleaf->name, obj) == 0) { + arg1 = pleaf->arg1; + arg2 = pleaf->arg2; + arg3 = pleaf->arg3; + arg4 = pleaf->arg4; + break; + } + } + + if (arg1 && strcmp(arg1, "uci") == 0) { + generate_prefixobj_and_obj_full_obj(refparam, &prefix_obj, &object); + sprintf(buf_instance, "%s_instance", object); + for (int i = 0; buf_instance[i]; i++) { + buf_instance[i] = tolower(buf_instance[i]); + } + + if(arg2 && arg3 && arg4) { + char *inst = NULL, *sect_name = NULL; + struct uci_section *section = NULL, *dmmap = NULL, *v; + + check_create_dmmap_package(arg4); + inst = get_last_instance_bbfdm(arg4, arg3, buf_instance); + dmuci_add_section(arg2, arg3, §ion, §_name); + + dmuci_add_section_bbfdm(arg4, arg3, &dmmap, &v); + dmuci_set_value_by_section(dmmap, "section_name", sect_name); + *instance = update_instance_bbfdm(dmmap, inst, buf_instance); + } + } + return 0; +} + +static int delete_obj(char *refparam, struct dmctx *ctx, void *data, char *instance, unsigned char del_action) +{ + //UCI: arg1=type :: arg2=uci_file :: arg3=uci_section_type :: arg4=uci_dmmap_file :: arg5="" :: arg6="" + + char *arg1 = NULL, *arg2 = NULL, *arg3 = NULL, *arg4 = NULL; + struct dm_json_parameter *pleaf; + + char *obj = generate_obj_without_instance(refparam, true); + list_for_each_entry(pleaf, &json_list, list) { + if (strcmp(pleaf->name, obj) == 0) { + arg1 = pleaf->arg1; + arg2 = pleaf->arg2; + arg3 = pleaf->arg3; + arg4 = pleaf->arg4; + break; + } + } + + if (arg1 && strcmp(arg1, "uci") == 0) { + if(arg2 && arg3 && arg4) { + struct uci_section *s = NULL, *ss = NULL, *dmmap_section= NULL; + int found = 0; + + switch (del_action) { + case DEL_INST: + get_dmmap_section_of_config_section(arg4, arg3, section_name((struct uci_section *)data), &dmmap_section); + if (dmmap_section != NULL) + dmuci_delete_by_section(dmmap_section, NULL, NULL); + dmuci_delete_by_section((struct uci_section *)data, NULL, NULL); + break; + case DEL_ALL: + uci_foreach_sections(arg2, arg3, s) { + if (found != 0) { + get_dmmap_section_of_config_section(arg4, arg3, section_name(ss), &dmmap_section); + if (dmmap_section != NULL) + dmuci_delete_by_section(dmmap_section, NULL, NULL); + dmuci_delete_by_section(ss, NULL, NULL); + } + ss = s; + found++; + } + if (ss != NULL) { + get_dmmap_section_of_config_section(arg4, arg3, section_name(ss), &dmmap_section); + if(dmmap_section != NULL) + dmuci_delete_by_section(dmmap_section, NULL, NULL); + dmuci_delete_by_section(ss, NULL, NULL); + } + break; + } + } + } + return 0; +} + +static int getvalue_param(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value) +{ + struct dm_json_parameter *pleaf; + char *arg1 = NULL, *arg2 = NULL, *arg3 = NULL, *arg4 = NULL, *arg5 = NULL, *arg6 = NULL; + + char *obj = generate_obj_without_instance(refparam, false); + list_for_each_entry(pleaf, &json_list, list) { + if (strcmp(pleaf->name, obj) == 0) { + arg1 = pleaf->arg1; + arg2 = pleaf->arg2; + arg3 = pleaf->arg3; + arg4 = pleaf->arg4; + arg5 = pleaf->arg5; + arg6 = pleaf->arg6; + break; + } + } + + if (arg1 && strcmp(arg1, "uci") == 0) { + //UCI: arg1=type :: arg2=uci_file :: arg3=uci_section_type :: arg4=uci_section_name :: arg5=uci_section_index :: arg6=uci_option_name + + if (data && arg6) { + dmuci_get_value_by_section_string((struct uci_section *)data, arg6, value); + } else { + if (arg2 && arg4 && arg6) + dmuci_get_option_value_string(arg2, arg4, arg6, value); + else + *value = ""; + } + } else if (arg1 && strcmp(arg1, "ubus") == 0) { + //UBUS: arg1=type :: arg2=ubus_object :: arg3=ubus_method :: arg4=ubus_args1 :: arg5=ubus_args2 :: arg6=ubus_key + + json_object *res; + if (arg2 && arg3 && arg4 && arg5) { + if (data && (strcmp(arg5, "@Name") == 0)) + dmubus_call(arg2, arg3, UBUS_ARGS{{arg4, section_name((struct uci_section *)data), String}}, 1, &res); + else + dmubus_call(arg2, arg3, UBUS_ARGS{{arg4, arg5, String}}, 1, &res); + + } else if (arg2 && arg3) { + dmubus_call(arg2, arg3, UBUS_ARGS{{}}, 0, &res); + } + + DM_ASSERT(res, *value = ""); + + if (arg6) { + char arg6_1[32] = ""; + strcpy(arg6_1, arg6); + char *opt = strchr(arg6_1, '.'); + if (opt) { + *opt = '\0'; + char *arg6_2 = opt + 1; + if (data && (strcmp(arg6_1, "@Name") == 0)) + *value = dmjson_get_value(res, 2, section_name((struct uci_section *)data), arg6_2); + else + *value = dmjson_get_value(res, 2, arg6_1, arg6_2); + } else { + *value = dmjson_get_value(res, 1, arg6); + } + } + } else { + *value = ""; + } + + return 0; +} + +static int setvalue_param(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action) +{ + struct dm_json_parameter *pleaf; + char *arg1 = NULL, *arg2 = NULL, *arg4 = NULL, *arg6 = NULL; + + char *obj = generate_obj_without_instance(refparam, false); + list_for_each_entry(pleaf, &json_list, list) { + if (strcmp(pleaf->name, obj) == 0) { + arg1 = pleaf->arg1; + arg2 = pleaf->arg2; + arg4 = pleaf->arg4; + arg6 = pleaf->arg6; + break; + } + } + + if (arg1 && strcmp(arg1, "uci") == 0) { + //UCI: arg1=type :: arg2=uci_file :: arg3=uci_section_type :: arg4=uci_section_name :: arg5=uci_section_index :: arg6=uci_option_name + + switch (action) { + case VALUECHECK: + break; + case VALUESET: + if (data && arg6) { + dmuci_set_value_by_section((struct uci_section *)data, arg6, value); + } else { + if (arg2 && arg4 && arg6) + dmuci_set_value(arg2, arg4, arg6, value); + } + break; + } + } + return 0; +} + +static bool is_obj(char *object, json_object *jobj) +{ + json_object_object_foreach(jobj, key, json_obj) { + if((strcmp(key, "type") == 0) && (strcmp(json_object_get_string(json_obj), "object") == 0)) + return true; + else if((strcmp(key, "type") == 0) && (strcmp(json_object_get_string(json_obj), "object") != 0)) + return false; + } + return false; +} + +static void parse_mapping_obj(char *object, json_object *mapping, struct list_head *list) +{ + struct json_object *type, *obj; + json_object_object_get_ex(mapping, "type", &type); + + if (strcmp(json_object_get_string(type), "uci") == 0) { + //UCI: arg1=type :: arg2=uci_file :: arg3=uci_section_type :: arg4=uci_dmmap_file :: arg5="" :: arg6="" + + struct json_object *file, *section, *section_type, *dmmap_file; + json_object_object_get_ex(mapping, "uci", &obj); + json_object_object_get_ex(obj, "file", &file); + json_object_object_get_ex(obj, "section", §ion); + json_object_object_get_ex(section, "type", §ion_type); + json_object_object_get_ex(obj, "dmmapfile", &dmmap_file); + + //Add to list + add_json_data_to_list(list, object, "uci", json_object_get_string(file), json_object_get_string(section_type), json_object_get_string(dmmap_file), "", ""); + } + else { + //Add to list + add_json_data_to_list(list, object, "", "", "", "", "", ""); + } +} + +static void parse_mapping_param(char *parameter, json_object *mapping, struct list_head *list) +{ + struct json_object *type, *obj; + json_object_object_get_ex(mapping, "type", &type); + + if (strcmp(json_object_get_string(type), "uci") == 0) { + //UCI: arg1=type :: arg2=uci_file :: arg3=uci_section_type :: arg4=uci_section_name :: arg5=uci_section_index :: arg6=uci_option_name + + struct json_object *file, *section, *type, *section_name, *index, *option, *option_name; + json_object_object_get_ex(mapping, "uci", &obj); + json_object_object_get_ex(obj, "file", &file); + json_object_object_get_ex(obj, "section", §ion); + json_object_object_get_ex(section, "type", &type); + json_object_object_get_ex(section, "name", §ion_name); + json_object_object_get_ex(section, "index", &index); + json_object_object_get_ex(obj, "option", &option); + json_object_object_get_ex(option, "name", &option_name); + + //Add to list + add_json_data_to_list(list, parameter, "uci", json_object_get_string(file), json_object_get_string(type), json_object_get_string(section_name), json_object_get_string(index), json_object_get_string(option_name)); + } + else if (strcmp(json_object_get_string(type), "ubus") == 0) { + //UBUS: arg1=type :: arg2=ubus_object :: arg3=ubus_method :: arg4=ubus_args1 :: arg5=ubus_args2 :: arg6=ubus_key + + struct json_object *object, *method, *key, *args; + char *args1 = NULL; + json_object_object_get_ex(mapping, "ubus", &obj); + json_object_object_get_ex(obj, "object", &object); + json_object_object_get_ex(obj, "method", &method); + json_object_object_get_ex(obj, "args", &args); + json_object_object_foreach(args, arg1, args2) { + args1 = arg1; + } + json_object_object_get_ex(obj, "key", &key); + + //Add to list + add_json_data_to_list(list, parameter, "ubus", json_object_get_string(object), json_object_get_string(method), args1, json_object_get_string(args2), json_object_get_string(key)); + } + else { + //Add to list + add_json_data_to_list(list, parameter, "", "", "", "", "", ""); + } +} + +static void parse_param(char *object, char *param, json_object *jobj, DMLEAF *pleaf, int i, struct list_head *list) +{ + /* PARAM, permission, type, getvalue, setvalue, forced_inform, notification, bbfdm_type(8)*/ + struct json_object *type, *protocols, *proto, *write, *mapping; + char full_param[256] = ""; + size_t n_proto, n_mapping; + + //PARAM + pleaf[i].parameter = dmstrdupjson(param); + + //permission + json_object_object_get_ex(jobj, "write", &write); + pleaf[i].permission = json_object_get_boolean(write) ? &DMWRITE : &DMREAD; + + //type + json_object_object_get_ex(jobj, "type", &type); + if (strcmp(json_object_get_string(type), "boolean") == 0) + pleaf[i].type = DMT_BOOL; + else if ((strcmp(json_object_get_string(type), "unsignedInt") == 0) || (strcmp(json_object_get_string(type), "unsignedLong") == 0)) + pleaf[i].type = DMT_UNINT; + else if (strcmp(json_object_get_string(type), "hexBinary") == 0) + pleaf[i].type = DMT_HEXBIN; + else if (strcmp(json_object_get_string(type), "int") == 0) + pleaf[i].type = DMT_INT; + else if (strcmp(json_object_get_string(type), "long") == 0) + pleaf[i].type = DMT_LONG; + else if (strcmp(json_object_get_string(type), "dateTime") == 0) + pleaf[i].type = DMT_TIME; + else + pleaf[i].type = DMT_STRING; + + //getvalue + pleaf[i].getvalue = getvalue_param; + + //setvalue + pleaf[i].setvalue = json_object_get_boolean(write) ? setvalue_param : NULL; + + //forced_inform + pleaf[i].forced_inform = NULL; + + //notification + pleaf[i].notification = NULL; + + //bbfdm_type + json_object_object_get_ex(jobj, "protocols", &protocols); + n_proto = json_object_array_length(protocols); + if (n_proto == 2) + pleaf[i].bbfdm_type = BBFDM_BOTH; + else if (n_proto == 1) { + proto = json_object_array_get_idx(protocols, 0); + if (strcmp(json_object_get_string(proto), "cwmp") == 0) + pleaf[i].bbfdm_type = BBFDM_CWMP; + else if (strcmp(json_object_get_string(proto), "usp") == 0) + pleaf[i].bbfdm_type = BBFDM_USP; + else + pleaf[i].bbfdm_type = BBFDM_BOTH; + } else + pleaf[i].bbfdm_type = BBFDM_BOTH; + + sprintf(full_param, "%s%s", object, param); + json_object_object_get_ex(jobj, "mapping", &mapping); + parse_mapping_param(full_param, mapping, list); +} + +static void count_obj_param_under_jsonobj(json_object *jsonobj, int *obj_number, int *param_number) +{ + json_object_object_foreach(jsonobj, key, jobj) { + if (json_object_get_type(jobj) == json_type_object) { + json_object_object_foreach(jobj, key1, jobj1) { + if ((strcmp(key1, "type") == 0) && (strcmp(json_object_get_string(jobj1), "object") == 0)) { + (*obj_number)++; + break; + } + else if (((strcmp(key1, "type") == 0) && (strcmp(json_object_get_string(jobj1), "object") != 0)) && (strcmp(key, "mapping") != 0)) { + (*param_number)++; + break; + } + } + } + } +} + +static void parse_obj(char *object, json_object *jobj, DMOBJ *pobj, int index, struct list_head *list) +{ + /* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type(13)*/ + + char *full_obj = NULL, *prfix_obj = NULL, *obj_str = NULL; + int obj_number = 0, param_number = 0, i = 0, j = 0; + DMOBJ *next_obj; + DMLEAF *next_leaf; + + count_obj_param_under_jsonobj(jobj, &obj_number, ¶m_number); + full_obj = replace_string(object, ".{i}.", "."); + generate_prefixobj_and_obj_full_obj(full_obj, &prfix_obj, &obj_str); + + //OBJ + pobj[index].obj = obj_str; + + //nextobj + if (obj_number != 0) { + next_obj = dmcallocjson(obj_number+1, sizeof(struct dm_obj_s)); + pobj[index].nextobj = next_obj; + } else { + pobj[index].nextobj = NULL; + } + + //leaf + if (param_number != 0) { + next_leaf = dmcallocjson(param_number+1, sizeof(struct dm_leaf_s)); + pobj[index].leaf = next_leaf; + } else { + pobj[index].leaf = NULL; + } + + json_object_object_foreach(jobj, key, json_obj) { + //bbfdm_type + if (strcmp(key, "protocols") == 0) { + size_t n_proto = json_object_array_length(json_obj); + if (n_proto == 2) + pobj[index].bbfdm_type = BBFDM_BOTH; + else if (n_proto == 1) { + struct json_object *proto = json_object_array_get_idx(json_obj, 0); + if (strcmp(json_object_get_string(proto), "cwmp") == 0) + pobj[index].bbfdm_type = BBFDM_CWMP; + else if (strcmp(json_object_get_string(proto), "usp") == 0) + pobj[index].bbfdm_type = BBFDM_USP; + else + pobj[index].bbfdm_type = BBFDM_BOTH; + } else + pobj[index].bbfdm_type = BBFDM_BOTH; + } + + if (strcmp(key, "array") == 0) { + //permission + pobj[index].permission = json_object_get_boolean(json_obj) ? &DMWRITE : &DMREAD; + + //addobj + pobj[index].addobj = json_object_get_boolean(json_obj) ? add_obj : NULL; + + //delobj + pobj[index].delobj = json_object_get_boolean(json_obj) ? delete_obj : NULL; + + //checkobj + pobj[index].checkobj = NULL; + + //browseinstobj + pobj[index].browseinstobj = json_object_get_boolean(json_obj) ? browse_obj : NULL; + + //forced_inform + pobj[index].forced_inform = NULL; + + //notification + pobj[index].notification = NULL; + + //nextjsonobj + pobj[index].nextjsonobj = NULL; + + //linker + pobj[index].get_linker = NULL; + } + + if (strcmp(key, "mapping") == 0 && json_object_get_type(json_obj) == json_type_object) { + parse_mapping_obj(full_obj, json_obj, list); + } + + if (json_object_get_type(json_obj) == json_type_object && is_obj(key, json_obj)) { + parse_obj(key, json_obj, next_obj, j, list); + j++; + } + + if (json_object_get_type(json_obj) == json_type_object && !is_obj(key, json_obj) && strcmp(key, "mapping") != 0) { + parse_param(full_obj, key, json_obj, next_leaf, i, list); + i++; + } + } +} + +static void parse_next_obj(struct dmctx *ctx, json_object *jobj) +{ + json_object_object_foreach(jobj, key, json_obj) { + DMOBJ *dm_entryobj = NULL; + if (json_object_get_type(json_obj) == json_type_object && is_obj(key, json_obj)) { + int check_obj = check_root_obj(ctx, key, &dm_entryobj); + if (check_obj == 0) continue; + if (check_obj == 1) { + parse_next_obj(ctx, json_obj); + } else { + if (!dm_entryobj) continue; + if (dm_entryobj->nextjsonobj == NULL) { + dm_entryobj->nextjsonobj = dmcallocjson(2, sizeof(struct dm_obj_s)); + parse_obj(key, json_obj, dm_entryobj->nextjsonobj, 0, &json_list); + } else { + int idx = get_index_of_available_entry(dm_entryobj->nextjsonobj); + dm_entryobj->nextjsonobj = dmreallocjson(dm_entryobj->nextjsonobj, (idx + 2) * sizeof(struct dm_obj_s)); + memset(dm_entryobj->nextjsonobj + (idx + 1), 0, sizeof(struct dm_obj_s)); + parse_obj(key, json_obj, dm_entryobj->nextjsonobj, idx, &json_list); + } + } + } + } + +} + +int load_json_dynamic_arrays(struct dmctx *ctx) +{ + struct dirent *ent; + DIR *dir = NULL; + + if (isfolderexist(JSON_FOLDER_PATH)) { + sysfs_foreach_file(JSON_FOLDER_PATH, dir, ent) { + if (strstr(ent->d_name, ".json")) { + DMOBJ *dm_entryobj = NULL; + json_object *json; + char buf[32] = ""; + sprintf(buf, "%s/%s", JSON_FOLDER_PATH, ent->d_name); + json = json_object_from_file(buf); + if (!json) continue; + + json_object_object_foreach(json, key, jobj) { + if (!key) break; + int check_obj = check_root_obj(ctx, key, &dm_entryobj); + if (check_obj == 0) continue; + if (check_obj == 1) { + parse_next_obj(ctx, jobj); + continue; + } + if (!dm_entryobj) continue; + if (dm_entryobj->nextjsonobj == NULL) { + dm_entryobj->nextjsonobj = dmcallocjson(2, sizeof(struct dm_obj_s)); + parse_obj(key, jobj, dm_entryobj->nextjsonobj, 0, &json_list); + } else { + int idx = get_index_of_available_entry(dm_entryobj->nextjsonobj); + dm_entryobj->nextjsonobj = dmreallocjson(dm_entryobj->nextjsonobj, (idx + 2) * sizeof(struct dm_obj_s)); + memset(dm_entryobj->nextjsonobj + (idx + 1), 0, sizeof(struct dm_obj_s)); + parse_obj(key, jobj, dm_entryobj->nextjsonobj, idx, &json_list); + + } + } + if (json) json_object_put(json); + } + } + if (dir) closedir(dir); + } + return 0; +} diff --git a/dmentryjson.h b/dmentryjson.h new file mode 100644 index 00000000..5955ac94 --- /dev/null +++ b/dmentryjson.h @@ -0,0 +1,21 @@ +/* + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * Copyright (C) 2019 iopsys Software Solutions AB + * Author Amin Ben Ramdhane + * + */ + +#ifndef __DMENTRYJSON_H__ +#define __DMENTRYJSON_H__ + +#define JSON_FOLDER_PATH "/etc/bbfdm/json" + +int check_stats_folder(char *folder_path); +int load_json_dynamic_arrays(struct dmctx *ctx); +int free_json_dynamic_arrays(void); + +#endif //__DMENTRYJSON_H__ diff --git a/dmmemjson.c b/dmmemjson.c new file mode 100644 index 00000000..bd7e2361 --- /dev/null +++ b/dmmemjson.c @@ -0,0 +1,84 @@ +/* + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * Copyright (C) 2019 iopsys Software Solutions AB + * Author: Amin Ben Ramdhane + * + */ + +#include "dmmemjson.h" + +LIST_HEAD(memheadjson); + +inline void *__dmmallocjson(size_t size) +{ + struct dmmemjson *m = malloc(sizeof(struct dmmemjson) + size); + if (m == NULL) return NULL; + list_add(&m->list, &memheadjson); + return (void *)m->mem; +} + +inline void *__dmcallocjson(int n, size_t size) +{ + struct dmmemjson *m = calloc(n, sizeof(struct dmmemjson) + size); + if (m == NULL) return NULL; + list_add(&m->list, &memheadjson); + return (void *)m->mem; +} + +inline void *__dmreallocjson(void *old, size_t size) +{ + struct dmmemjson *m = NULL; + if (old != NULL) { + m = container_of(old, struct dmmemjson, mem); + list_del(&m->list); + } + m = realloc(m, sizeof(struct dmmemjson) + size); + if (m == NULL) return NULL; + list_add(&m->list, &memheadjson); + return (void *)m->mem; +} + +inline void dmfreejson(void *m) +{ + if (m == NULL) return; + struct dmmemjson *rm; + rm = container_of(m, struct dmmemjson, mem); + list_del(&rm->list); + free(rm); +} + +void dmcleanmemjson() +{ + struct dmmemjson *dmm; + while (memheadjson.next != &memheadjson) { + dmm = list_entry(memheadjson.next, struct dmmemjson, list); + list_del(&dmm->list); + free(dmm); + } +} + +char *__dmstrdupjson(const char *s) +{ + size_t len = strlen(s) + 1; + void *new = __dmmallocjson(len); + if (new == NULL) return NULL; + return (char *) memcpy(new, s, len); +} + + +int __dmasprintfjson(char **s, const char *format, ...) +{ + char buf[512]; + va_list arg; + int ret; + va_start(arg,format); + ret = vsprintf(buf, format, arg); + va_end(arg); + *s = __dmstrdup(buf); + if (*s == NULL) return -1; + return 0; +} \ No newline at end of file diff --git a/dmmemjson.h b/dmmemjson.h new file mode 100644 index 00000000..c5b37349 --- /dev/null +++ b/dmmemjson.h @@ -0,0 +1,40 @@ +/* + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * Copyright (C) 2019 iopsys Software Solutions AB + * Author: Amin Ben Ramdhane + * + */ + +#include +#include +#include +#include +#include + +#ifndef __DMMEMJSON_H +#define __DMMEMJSON_H + +struct dmmemjson { + struct list_head list; + char mem[0]; +}; + +void *__dmmallocjson(size_t size); +void *__dmcallocjson(int n, size_t size); +void *__dmreallocjson(void *n, size_t size); +char *__dmstrdupjson(const char *s); +int __dmasprintfjson(char **s, const char *format, ...); +void dmfreejson(void *m); +void dmcleanmemjson(); + +#define dmmallocjson(x) __dmmallocjson(x) +#define dmcallocjson(n, x) __dmcallocjson(n, x) +#define dmreallocjson(x, n) __dmreallocjson(x, n) +#define dmstrdupjson(x) __dmstrdupjson(x) +#define dmasprintfjson(s, format, ...) __dmasprintfjson(s, format, ## __VA_ARGS__) + +#endif //__DMMEMJSON_H diff --git a/dmtree/tr104/voice_services.c b/dmtree/tr104/voice_services.c index d3eabf5f..2acbf335 100644 --- a/dmtree/tr104/voice_services.c +++ b/dmtree/tr104/voice_services.c @@ -22,16 +22,16 @@ /* *** Device.Services. *** */ DMOBJ tServicesObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"VoiceService", &DMREAD, NULL, NULL, NULL, browseVoiceServiceInst, NULL, NULL, tServicesVoiceServiceObj, tServicesVoiceServiceParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"VoiceService", &DMREAD, NULL, NULL, NULL, browseVoiceServiceInst, NULL, NULL, NULL, tServicesVoiceServiceObj, tServicesVoiceServiceParams, NULL, BBFDM_BOTH}, {0} }; /* *** Device.Services.VoiceService.{i}. *** */ DMOBJ tServicesVoiceServiceObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Capabilities", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tServicesVoiceServiceCapabilitiesObj, tServicesVoiceServiceCapabilitiesParams, NULL, BBFDM_BOTH}, -{"VoiceProfile", &DMWRITE, add_profile_object, delete_profile_object, NULL, browseProfileInst, NULL, NULL, tServicesVoiceServiceVoiceProfileObj, tServicesVoiceServiceVoiceProfileParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Capabilities", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tServicesVoiceServiceCapabilitiesObj, tServicesVoiceServiceCapabilitiesParams, NULL, BBFDM_BOTH}, +{"VoiceProfile", &DMWRITE, add_profile_object, delete_profile_object, NULL, browseProfileInst, NULL, NULL, NULL, tServicesVoiceServiceVoiceProfileObj, tServicesVoiceServiceVoiceProfileParams, NULL, BBFDM_BOTH}, {0} }; @@ -43,9 +43,9 @@ DMLEAF tServicesVoiceServiceParams[] = { /* *** Device.Services.VoiceService.{i}.Capabilities. *** */ DMOBJ tServicesVoiceServiceCapabilitiesObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"SIP", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tServicesVoiceServiceCapabilitiesSIPParams, NULL, BBFDM_BOTH}, -{"Codecs", &DMREAD, NULL, NULL, NULL, browseCodecsInst, NULL, NULL, NULL, tServicesVoiceServiceCapabilitiesCodecsParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"SIP", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tServicesVoiceServiceCapabilitiesSIPParams, NULL, BBFDM_BOTH}, +{"Codecs", &DMREAD, NULL, NULL, NULL, browseCodecsInst, NULL, NULL, NULL, NULL, tServicesVoiceServiceCapabilitiesCodecsParams, NULL, BBFDM_BOTH}, {0} }; @@ -111,12 +111,12 @@ DMLEAF tServicesVoiceServiceCapabilitiesCodecsParams[] = { /* *** Device.Services.VoiceService.{i}.VoiceProfile.{i}. *** */ DMOBJ tServicesVoiceServiceVoiceProfileObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"SIP", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tServicesVoiceServiceVoiceProfileSIPParams, NULL, BBFDM_BOTH}, -{"ServiceProviderInfo", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tServicesVoiceServiceVoiceProfileServiceProviderInfoParams, NULL, BBFDM_BOTH}, -{"FaxT38", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tServicesVoiceServiceVoiceProfileFaxT38Params, NULL, BBFDM_BOTH}, -{"RTP", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tServicesVoiceServiceVoiceProfileRTPObj, tServicesVoiceServiceVoiceProfileRTPParams, NULL, BBFDM_BOTH}, -{"Line", &DMWRITE, add_line_object, delete_line_object, NULL, browseLineInst, NULL, NULL, tServicesVoiceServiceVoiceProfileLineObj, tServicesVoiceServiceVoiceProfileLineParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"SIP", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tServicesVoiceServiceVoiceProfileSIPParams, NULL, BBFDM_BOTH}, +{"ServiceProviderInfo", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tServicesVoiceServiceVoiceProfileServiceProviderInfoParams, NULL, BBFDM_BOTH}, +{"FaxT38", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tServicesVoiceServiceVoiceProfileFaxT38Params, NULL, BBFDM_BOTH}, +{"RTP", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tServicesVoiceServiceVoiceProfileRTPObj, tServicesVoiceServiceVoiceProfileRTPParams, NULL, BBFDM_BOTH}, +{"Line", &DMWRITE, add_line_object, delete_line_object, NULL, browseLineInst, NULL, NULL, NULL, tServicesVoiceServiceVoiceProfileLineObj, tServicesVoiceServiceVoiceProfileLineParams, NULL, BBFDM_BOTH}, {0} }; @@ -172,9 +172,9 @@ DMLEAF tServicesVoiceServiceVoiceProfileFaxT38Params[] = { /* *** Device.Services.VoiceService.{i}.VoiceProfile.{i}.RTP. *** */ DMOBJ tServicesVoiceServiceVoiceProfileRTPObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"RTCP", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tServicesVoiceServiceVoiceProfileRTPRTCPParams, NULL, BBFDM_BOTH}, -{"SRTP", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tServicesVoiceServiceVoiceProfileRTPSRTPParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"RTCP", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tServicesVoiceServiceVoiceProfileRTPRTCPParams, NULL, BBFDM_BOTH}, +{"SRTP", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tServicesVoiceServiceVoiceProfileRTPSRTPParams, NULL, BBFDM_BOTH}, {0} }; @@ -203,11 +203,11 @@ DMLEAF tServicesVoiceServiceVoiceProfileRTPSRTPParams[] = { /* *** Device.Services.VoiceService.{i}.VoiceProfile.{i}.Line.{i}. *** */ DMOBJ tServicesVoiceServiceVoiceProfileLineObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"VoiceProcessing", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tServicesVoiceServiceVoiceProfileLineVoiceProcessingParams, NULL, BBFDM_BOTH}, -{"CallingFeatures", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tServicesVoiceServiceVoiceProfileLineCallingFeaturesParams, NULL, BBFDM_BOTH}, -{"SIP", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tServicesVoiceServiceVoiceProfileLineSIPParams, NULL, BBFDM_BOTH}, -{"Codec", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tServicesVoiceServiceVoiceProfileLineCodecObj, NULL, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"VoiceProcessing", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tServicesVoiceServiceVoiceProfileLineVoiceProcessingParams, NULL, BBFDM_BOTH}, +{"CallingFeatures", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tServicesVoiceServiceVoiceProfileLineCallingFeaturesParams, NULL, BBFDM_BOTH}, +{"SIP", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tServicesVoiceServiceVoiceProfileLineSIPParams, NULL, BBFDM_BOTH}, +{"Codec", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tServicesVoiceServiceVoiceProfileLineCodecObj, NULL, NULL, BBFDM_BOTH}, {0} }; @@ -250,8 +250,8 @@ DMLEAF tServicesVoiceServiceVoiceProfileLineSIPParams[] = { /* *** Device.Services.VoiceService.{i}.VoiceProfile.{i}.Line.{i}.Codec. *** */ DMOBJ tServicesVoiceServiceVoiceProfileLineCodecObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"List", &DMREAD, NULL, NULL, NULL, browseLineCodecListInst, NULL, NULL, NULL, tServicesVoiceServiceVoiceProfileLineCodecListParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"List", &DMREAD, NULL, NULL, NULL, browseLineCodecListInst, NULL, NULL, NULL, NULL, tServicesVoiceServiceVoiceProfileLineCodecListParams, NULL, BBFDM_BOTH}, {0} }; diff --git a/dmtree/tr143/diagnostics.c b/dmtree/tr143/diagnostics.c index fe0c60dd..80f5ed98 100644 --- a/dmtree/tr143/diagnostics.c +++ b/dmtree/tr143/diagnostics.c @@ -22,14 +22,14 @@ /* *** Device.IP.Diagnostics. *** */ DMOBJ tIPDiagnosticsObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"IPPing", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tIPDiagnosticsIPPingParams, NULL, BBFDM_CWMP}, -{"TraceRoute", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tIPDiagnosticsTraceRouteObj, tIPDiagnosticsTraceRouteParams, NULL, BBFDM_CWMP}, -{"DownloadDiagnostics", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tIPDiagnosticsDownloadDiagnosticsObj, tIPDiagnosticsDownloadDiagnosticsParams, NULL, BBFDM_CWMP}, -{"UploadDiagnostics", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tIPDiagnosticsUploadDiagnosticsObj, tIPDiagnosticsUploadDiagnosticsParams, NULL, BBFDM_CWMP}, -{"UDPEchoConfig", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tIPDiagnosticsUDPEchoConfigParams, NULL, BBFDM_BOTH}, -{"UDPEchoDiagnostics", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tIPDiagnosticsUDPEchoDiagnosticsParams, NULL, BBFDM_CWMP}, -{"ServerSelectionDiagnostics", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tIPDiagnosticsServerSelectionDiagnosticsParams, NULL, BBFDM_CWMP}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"IPPing", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tIPDiagnosticsIPPingParams, NULL, BBFDM_CWMP}, +{"TraceRoute", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tIPDiagnosticsTraceRouteObj, tIPDiagnosticsTraceRouteParams, NULL, BBFDM_CWMP}, +{"DownloadDiagnostics", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tIPDiagnosticsDownloadDiagnosticsObj, tIPDiagnosticsDownloadDiagnosticsParams, NULL, BBFDM_CWMP}, +{"UploadDiagnostics", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tIPDiagnosticsUploadDiagnosticsObj, tIPDiagnosticsUploadDiagnosticsParams, NULL, BBFDM_CWMP}, +{"UDPEchoConfig", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tIPDiagnosticsUDPEchoConfigParams, NULL, BBFDM_BOTH}, +{"UDPEchoDiagnostics", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tIPDiagnosticsUDPEchoDiagnosticsParams, NULL, BBFDM_CWMP}, +{"ServerSelectionDiagnostics", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tIPDiagnosticsServerSelectionDiagnosticsParams, NULL, BBFDM_CWMP}, {0} }; @@ -74,8 +74,8 @@ DMLEAF tIPDiagnosticsIPPingParams[] = { /* *** Device.IP.Diagnostics.TraceRoute. *** */ DMOBJ tIPDiagnosticsTraceRouteObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"RouteHops", &DMREAD, NULL, NULL, NULL, browseIPDiagnosticsTraceRouteRouteHopsInst, NULL, NULL, NULL, tIPDiagnosticsTraceRouteRouteHopsParams, NULL, BBFDM_CWMP}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"RouteHops", &DMREAD, NULL, NULL, NULL, browseIPDiagnosticsTraceRouteRouteHopsInst, NULL, NULL, NULL, NULL, tIPDiagnosticsTraceRouteRouteHopsParams, NULL, BBFDM_CWMP}, {0} }; @@ -107,8 +107,8 @@ DMLEAF tIPDiagnosticsTraceRouteRouteHopsParams[] = { /* *** Device.IP.Diagnostics.DownloadDiagnostics. *** */ DMOBJ tIPDiagnosticsDownloadDiagnosticsObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"PerConnectionResult", &DMREAD, NULL, NULL, NULL, browseIPDiagnosticsDownloadDiagnosticsPerConnectionResultInst, NULL, NULL, NULL, tIPDiagnosticsDownloadDiagnosticsPerConnectionResultParams, NULL, BBFDM_CWMP}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"PerConnectionResult", &DMREAD, NULL, NULL, NULL, browseIPDiagnosticsDownloadDiagnosticsPerConnectionResultInst, NULL, NULL, NULL, NULL, tIPDiagnosticsDownloadDiagnosticsPerConnectionResultParams, NULL, BBFDM_CWMP}, {0} }; @@ -156,8 +156,8 @@ DMLEAF tIPDiagnosticsDownloadDiagnosticsPerConnectionResultParams[] = { /* *** Device.IP.Diagnostics.UploadDiagnostics. *** */ DMOBJ tIPDiagnosticsUploadDiagnosticsObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"PerConnectionResult", &DMREAD, NULL, NULL, NULL, browseIPDiagnosticsUploadDiagnosticsPerConnectionResultInst, NULL, NULL, NULL, tIPDiagnosticsUploadDiagnosticsPerConnectionResultParams, NULL, BBFDM_CWMP}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"PerConnectionResult", &DMREAD, NULL, NULL, NULL, browseIPDiagnosticsUploadDiagnosticsPerConnectionResultInst, NULL, NULL, NULL, NULL, tIPDiagnosticsUploadDiagnosticsPerConnectionResultParams, NULL, BBFDM_CWMP}, {0} }; diff --git a/dmtree/tr157/bulkdata.c b/dmtree/tr157/bulkdata.c index 1713e491..a9db3d09 100644 --- a/dmtree/tr157/bulkdata.c +++ b/dmtree/tr157/bulkdata.c @@ -18,8 +18,8 @@ /* *** Device.BulkData. *** */ DMOBJ tBulkDataObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Profile", &DMWRITE, addObjBulkDataProfile, delObjBulkDataProfile, NULL, browseBulkDataProfileInst, NULL, NULL, tBulkDataProfileObj, tBulkDataProfileParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Profile", &DMWRITE, addObjBulkDataProfile, delObjBulkDataProfile, NULL, browseBulkDataProfileInst, NULL, NULL, NULL, tBulkDataProfileObj, tBulkDataProfileParams, NULL, BBFDM_BOTH}, {0} }; @@ -39,11 +39,11 @@ DMLEAF tBulkDataParams[] = { /* *** Device.BulkData.Profile.{i}. *** */ DMOBJ tBulkDataProfileObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Parameter", &DMWRITE, addObjBulkDataProfileParameter, delObjBulkDataProfileParameter, NULL, browseBulkDataProfileParameterInst, NULL, NULL, NULL, tBulkDataProfileParameterParams, NULL, BBFDM_BOTH}, -{"CSVEncoding", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tBulkDataProfileCSVEncodingParams, NULL, BBFDM_BOTH}, -{"JSONEncoding", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tBulkDataProfileJSONEncodingParams, NULL, BBFDM_BOTH}, -{"HTTP", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tBulkDataProfileHTTPObj, tBulkDataProfileHTTPParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Parameter", &DMWRITE, addObjBulkDataProfileParameter, delObjBulkDataProfileParameter, NULL, browseBulkDataProfileParameterInst, NULL, NULL, NULL, NULL, tBulkDataProfileParameterParams, NULL, BBFDM_BOTH}, +{"CSVEncoding", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tBulkDataProfileCSVEncodingParams, NULL, BBFDM_BOTH}, +{"JSONEncoding", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tBulkDataProfileJSONEncodingParams, NULL, BBFDM_BOTH}, +{"HTTP", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tBulkDataProfileHTTPObj, tBulkDataProfileHTTPParams, NULL, BBFDM_BOTH}, {0} }; @@ -98,8 +98,8 @@ DMLEAF tBulkDataProfileJSONEncodingParams[] = { /* *** Device.BulkData.Profile.{i}.HTTP. *** */ DMOBJ tBulkDataProfileHTTPObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"RequestURIParameter", &DMWRITE, addObjBulkDataProfileHTTPRequestURIParameter, delObjBulkDataProfileHTTPRequestURIParameter, NULL, browseBulkDataProfileHTTPRequestURIParameterInst, NULL, NULL, NULL, tBulkDataProfileHTTPRequestURIParameterParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"RequestURIParameter", &DMWRITE, addObjBulkDataProfileHTTPRequestURIParameter, delObjBulkDataProfileHTTPRequestURIParameter, NULL, browseBulkDataProfileHTTPRequestURIParameterInst, NULL, NULL, NULL, NULL, tBulkDataProfileHTTPRequestURIParameterParams, NULL, BBFDM_BOTH}, {0} }; diff --git a/dmtree/tr181/atm.c b/dmtree/tr181/atm.c index 15750655..966259b0 100644 --- a/dmtree/tr181/atm.c +++ b/dmtree/tr181/atm.c @@ -21,15 +21,15 @@ /*** ATM. ***/ DMOBJ tATMObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Link", &DMWRITE, add_atm_link, delete_atm_link, NULL, browseAtmLinkInst, NULL, NULL, tATMLinkObj, tATMLinkParams, get_atm_linker, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Link", &DMWRITE, add_atm_link, delete_atm_link, NULL, browseAtmLinkInst, NULL, NULL, NULL, tATMLinkObj, tATMLinkParams, get_atm_linker, BBFDM_BOTH}, {0} }; /*** ATM.Link. ***/ DMOBJ tATMLinkObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Stats", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tATMLinkStatsParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Stats", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tATMLinkStatsParams, NULL, BBFDM_BOTH}, {0} }; diff --git a/dmtree/tr181/bridging.c b/dmtree/tr181/bridging.c index 0ac3c767..df76572d 100644 --- a/dmtree/tr181/bridging.c +++ b/dmtree/tr181/bridging.c @@ -24,8 +24,8 @@ static char *wan_baseifname = NULL; /*** Bridging. ***/ DMOBJ tBridgingObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Bridge", &DMWRITE, add_bridge, delete_bridge, NULL, browseBridgeInst, NULL, NULL, tBridgingBridgeObj, tBridgingBridgeParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Bridge", &DMWRITE, add_bridge, delete_bridge, NULL, browseBridgeInst, NULL, NULL, NULL, tBridgingBridgeObj, tBridgingBridgeParams, NULL, BBFDM_BOTH}, {0} }; @@ -43,10 +43,10 @@ DMLEAF tBridgingParams[] = { /*** Bridging.Bridge.{i}. ***/ DMOBJ tBridgingBridgeObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Port", &DMWRITE, add_br_port, delete_br_port, NULL, browseBridgePortInst, NULL, NULL, tBridgingBridgePortObj, tBridgingBridgePortParams, get_linker_br_port, BBFDM_BOTH}, -{"VLAN", &DMWRITE, add_br_vlan, delete_br_vlan, NULL, browseBridgeVlanInst, NULL, NULL, NULL, tBridgingBridgeVLANParams, get_linker_br_vlan, BBFDM_BOTH}, -{"VLANPort", &DMREAD, NULL, NULL, NULL, browseBridgeVlanPortInst, NULL, NULL, NULL, tBridgingBridgeVLANPortParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Port", &DMWRITE, add_br_port, delete_br_port, NULL, browseBridgePortInst, NULL, NULL, NULL, tBridgingBridgePortObj, tBridgingBridgePortParams, get_linker_br_port, BBFDM_BOTH}, +{"VLAN", &DMWRITE, add_br_vlan, delete_br_vlan, NULL, browseBridgeVlanInst, NULL, NULL, NULL, NULL, tBridgingBridgeVLANParams, get_linker_br_vlan, BBFDM_BOTH}, +{"VLANPort", &DMREAD, NULL, NULL, NULL, browseBridgeVlanPortInst, NULL, NULL, NULL, NULL, tBridgingBridgeVLANPortParams, NULL, BBFDM_BOTH}, {0} }; @@ -65,8 +65,8 @@ DMLEAF tBridgingBridgeParams[] = { /*** Bridging.Bridge.{i}.Port.{i}. ***/ DMOBJ tBridgingBridgePortObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Stats", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tBridgingBridgePortStatsParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Stats", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tBridgingBridgePortStatsParams, NULL, BBFDM_BOTH}, {0} }; diff --git a/dmtree/tr181/device.c b/dmtree/tr181/device.c index 60c15297..fce5b2c5 100644 --- a/dmtree/tr181/device.c +++ b/dmtree/tr181/device.c @@ -59,8 +59,8 @@ /* *** BBFDM *** */ DMOBJ tEntry181Obj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{(char *)&dmroot, &DMREAD, NULL, NULL, NULL, NULL, &DMFINFRM, &DMNONE, tRoot_181_Obj, tRoot_181_Params, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Device", &DMREAD, NULL, NULL, NULL, NULL, &DMFINFRM, &DMNONE, NULL, tRoot_181_Obj, tRoot_181_Params, NULL, BBFDM_BOTH}, {0} }; @@ -72,48 +72,48 @@ DMLEAF tRoot_181_Params[] = { }; DMOBJ tRoot_181_Obj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"DeviceInfo", &DMREAD, NULL, NULL, NULL, NULL, &DMFINFRM, &DMNONE,tDeviceInfoObj, tDeviceInfoParams, NULL, BBFDM_BOTH}, -{"ManagementServer", &DMREAD, NULL, NULL, NULL, NULL, &DMFINFRM, &DMNONE,NULL, tManagementServerParams, NULL, BBFDM_BOTH}, -{"Time", &DMREAD, NULL, NULL, NULL, NULL, NULL, &DMNONE,NULL, tTimeParams, NULL, BBFDM_BOTH}, -{"UPnP", &DMREAD, NULL, NULL, NULL, NULL, NULL, &DMNONE,tUPnPObj, NULL, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"DeviceInfo", &DMREAD, NULL, NULL, NULL, NULL, &DMFINFRM, &DMNONE, NULL, tDeviceInfoObj, tDeviceInfoParams, NULL, BBFDM_BOTH}, +{"ManagementServer", &DMREAD, NULL, NULL, NULL, NULL, &DMFINFRM, &DMNONE, NULL, NULL, tManagementServerParams, NULL, BBFDM_BOTH}, +{"Time", &DMREAD, NULL, NULL, NULL, NULL, NULL, &DMNONE, NULL, NULL, tTimeParams, NULL, BBFDM_BOTH}, +{"UPnP", &DMREAD, NULL, NULL, NULL, NULL, NULL, &DMNONE, NULL, tUPnPObj, NULL, NULL, BBFDM_BOTH}, #ifdef BBF_TR104 -{"Services", &DMREAD, NULL, NULL, NULL, NULL, NULL, &DMNONE,tServicesObj, NULL, NULL, BBFDM_BOTH}, +{"Services", &DMREAD, NULL, NULL, NULL, NULL, NULL, &DMNONE, NULL, tServicesObj, NULL, NULL, BBFDM_BOTH}, #endif -{CUSTOM_PREFIX"ICE", &DMREAD, NULL, NULL, NULL, NULL, NULL, &DMNONE,NULL, tSe_IceParam, NULL, BBFDM_BOTH}, -{CUSTOM_PREFIX"IGMP", &DMREAD, NULL, NULL, NULL, NULL, NULL, &DMNONE,NULL, tSe_IgmpParam, NULL, BBFDM_BOTH}, -{CUSTOM_PREFIX"IpAccCfg", &DMREAD, NULL, NULL, NULL, NULL, NULL, &DMNONE,tSe_IpAccObj, NULL, NULL, BBFDM_BOTH}, -{CUSTOM_PREFIX"LoginCfg", &DMREAD, NULL, NULL, NULL, NULL,NULL, &DMNONE,NULL, tSe_LoginCfgParam, NULL, BBFDM_BOTH}, -{CUSTOM_PREFIX"PowerManagement", &DMREAD, NULL, NULL, NULL, NULL, NULL, &DMNONE,NULL, tSe_PowerManagementParam, NULL, BBFDM_BOTH}, -{CUSTOM_PREFIX"SyslogCfg", &DMREAD, NULL, NULL, NULL, NULL, NULL, &DMNONE,NULL, tSe_SyslogCfgParam, NULL, BBFDM_BOTH}, -{"SoftwareModules", &DMREAD, NULL, NULL, NULL, NULL, NULL, &DMNONE,tSoftwareModulesObj, NULL, NULL, BBFDM_BOTH}, -{CUSTOM_PREFIX"Owsd", &DMREAD, NULL, NULL, NULL, NULL, NULL, &DMNONE,XIopsysEuOwsdObj, XIopsysEuOwsdParams, NULL, BBFDM_BOTH}, -{CUSTOM_PREFIX"Dropbear", &DMWRITE, add_dropbear_instance, delete_dropbear_instance, NULL, browseXIopsysEuDropbear, NULL, &DMNONE, NULL, X_IOPSYS_EU_DropbearParams, NULL, BBFDM_BOTH}, -{CUSTOM_PREFIX"Buttons", &DMREAD, NULL, NULL, NULL, browseXIopsysEuButton, NULL, &DMNONE, NULL, X_IOPSYS_EU_ButtonParams, NULL, BBFDM_BOTH}, -{CUSTOM_PREFIX"WiFiLife", &DMREAD, NULL, NULL, NULL, NULL, NULL, &DMNONE, X_IOPSYS_EU_WiFiLifeObj, X_IOPSYS_EU_WiFiLifeParams, NULL, BBFDM_BOTH}, -{"Bridging",&DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tBridgingObj, tBridgingParams, NULL, BBFDM_BOTH}, -{"WiFi",&DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tWiFiObj, tWiFiParams, NULL, BBFDM_BOTH}, -{"IP",&DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tIPObj, tIPParams, NULL, BBFDM_BOTH}, -{"Ethernet", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tEthernetObj, tEthernetParams, NULL, BBFDM_BOTH}, -{"DSL",&DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tDSLObj, tDSLParams, NULL, BBFDM_BOTH}, -{"ATM",&DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tATMObj, NULL, NULL, BBFDM_BOTH}, -{"PTM", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tPTMObj, NULL, NULL, BBFDM_BOTH}, -{"DHCPv4", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tDhcpv4Obj, tDHCPv4Params, NULL, BBFDM_BOTH}, -{"DHCPv6", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tDHCPv6Obj, tDHCPv6Params, NULL, BBFDM_BOTH}, -{"Hosts", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tHostsObj, tHostsParams, NULL, BBFDM_BOTH}, -{"NAT", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tNATObj, tNATParams, NULL, BBFDM_BOTH}, -{"PPP", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tPPPObj, tPPPParams, NULL, BBFDM_BOTH}, -{"Routing", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tRoutingObj, tRoutingParams, NULL, BBFDM_BOTH}, -{"UserInterface", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tUserInterfaceObj, NULL, NULL, BBFDM_BOTH}, -{"Firewall", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tFirewallObj, tFirewallParams, NULL, BBFDM_BOTH}, -{"DNS", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tDNSObj, tDNSParams, NULL, BBFDM_BOTH}, -{"Users", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tUsersObj, tUsersParams, NULL, BBFDM_BOTH}, -{"InterfaceStack", &DMREAD, NULL, NULL, NULL, browseInterfaceStackInst, NULL, NULL, NULL, tInterfaceStackParams, NULL, BBFDM_BOTH}, -{"USB", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tUSBObj, tUSBParams, NULL, BBFDM_BOTH}, -//{"QoS", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tQoSObj, tQoSParams, NULL, BBFDM_BOTH}, -{"XMPP", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL,tXMPPObj, tXMPPParams, NULL, BBFDM_BOTH}, +{CUSTOM_PREFIX"ICE", &DMREAD, NULL, NULL, NULL, NULL, NULL, &DMNONE, NULL, NULL, tSe_IceParam, NULL, BBFDM_BOTH}, +{CUSTOM_PREFIX"IGMP", &DMREAD, NULL, NULL, NULL, NULL, NULL, &DMNONE, NULL, NULL, tSe_IgmpParam, NULL, BBFDM_BOTH}, +{CUSTOM_PREFIX"IpAccCfg", &DMREAD, NULL, NULL, NULL, NULL, NULL, &DMNONE, NULL, tSe_IpAccObj, NULL, NULL, BBFDM_BOTH}, +{CUSTOM_PREFIX"LoginCfg", &DMREAD, NULL, NULL, NULL, NULL,NULL, &DMNONE, NULL, NULL, tSe_LoginCfgParam, NULL, BBFDM_BOTH}, +{CUSTOM_PREFIX"PowerManagement", &DMREAD, NULL, NULL, NULL, NULL, NULL, &DMNONE, NULL, NULL, tSe_PowerManagementParam, NULL, BBFDM_BOTH}, +{CUSTOM_PREFIX"SyslogCfg", &DMREAD, NULL, NULL, NULL, NULL, NULL, &DMNONE, NULL, NULL, tSe_SyslogCfgParam, NULL, BBFDM_BOTH}, +{"SoftwareModules", &DMREAD, NULL, NULL, NULL, NULL, NULL, &DMNONE, NULL, tSoftwareModulesObj, NULL, NULL, BBFDM_BOTH}, +{CUSTOM_PREFIX"Owsd", &DMREAD, NULL, NULL, NULL, NULL, NULL, &DMNONE, NULL, XIopsysEuOwsdObj, XIopsysEuOwsdParams, NULL, BBFDM_BOTH}, +{CUSTOM_PREFIX"Dropbear", &DMWRITE, add_dropbear_instance, delete_dropbear_instance, NULL, browseXIopsysEuDropbear, NULL, &DMNONE, NULL, NULL, X_IOPSYS_EU_DropbearParams, NULL, BBFDM_BOTH}, +{CUSTOM_PREFIX"Buttons", &DMREAD, NULL, NULL, NULL, browseXIopsysEuButton, NULL, &DMNONE, NULL, NULL, X_IOPSYS_EU_ButtonParams, NULL, BBFDM_BOTH}, +{CUSTOM_PREFIX"WiFiLife", &DMREAD, NULL, NULL, NULL, NULL, NULL, &DMNONE, NULL, X_IOPSYS_EU_WiFiLifeObj, X_IOPSYS_EU_WiFiLifeParams, NULL, BBFDM_BOTH}, +{"Bridging",&DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tBridgingObj, tBridgingParams, NULL, BBFDM_BOTH}, +{"WiFi",&DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tWiFiObj, tWiFiParams, NULL, BBFDM_BOTH}, +{"IP",&DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tIPObj, tIPParams, NULL, BBFDM_BOTH}, +{"Ethernet", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tEthernetObj, tEthernetParams, NULL, BBFDM_BOTH}, +{"DSL",&DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDSLObj, tDSLParams, NULL, BBFDM_BOTH}, +{"ATM",&DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tATMObj, NULL, NULL, BBFDM_BOTH}, +{"PTM", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tPTMObj, NULL, NULL, BBFDM_BOTH}, +{"DHCPv4", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDhcpv4Obj, tDHCPv4Params, NULL, BBFDM_BOTH}, +{"DHCPv6", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDHCPv6Obj, tDHCPv6Params, NULL, BBFDM_BOTH}, +{"Hosts", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tHostsObj, tHostsParams, NULL, BBFDM_BOTH}, +{"NAT", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tNATObj, tNATParams, NULL, BBFDM_BOTH}, +{"PPP", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tPPPObj, tPPPParams, NULL, BBFDM_BOTH}, +{"Routing", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tRoutingObj, tRoutingParams, NULL, BBFDM_BOTH}, +{"UserInterface", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tUserInterfaceObj, NULL, NULL, BBFDM_BOTH}, +{"Firewall", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tFirewallObj, tFirewallParams, NULL, BBFDM_BOTH}, +{"DNS", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDNSObj, tDNSParams, NULL, BBFDM_BOTH}, +{"Users", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tUsersObj, tUsersParams, NULL, BBFDM_BOTH}, +{"InterfaceStack", &DMREAD, NULL, NULL, NULL, browseInterfaceStackInst, NULL, NULL, NULL, NULL, tInterfaceStackParams, NULL, BBFDM_BOTH}, +{"USB", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tUSBObj, tUSBParams, NULL, BBFDM_BOTH}, +//{"QoS", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tQoSObj, tQoSParams, NULL, BBFDM_BOTH}, +{"XMPP", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tXMPPObj, tXMPPParams, NULL, BBFDM_BOTH}, #ifdef BBF_TR157 -{"BulkData", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tBulkDataObj, tBulkDataParams, NULL, BBFDM_BOTH}, +{"BulkData", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tBulkDataObj, tBulkDataParams, NULL, BBFDM_BOTH}, #endif {0} }; diff --git a/dmtree/tr181/deviceinfo.c b/dmtree/tr181/deviceinfo.c index 024faea7..26f05d73 100644 --- a/dmtree/tr181/deviceinfo.c +++ b/dmtree/tr181/deviceinfo.c @@ -25,12 +25,12 @@ /* *** Device.DeviceInfo. *** */ DMOBJ tDeviceInfoObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{CUSTOM_PREFIX"CATV", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tCatTvParams, NULL, BBFDM_BOTH}, -{"VendorConfigFile", &DMREAD, NULL, NULL, NULL, browseVcfInst, NULL, NULL, NULL, tDeviceInfoVendorConfigFileParams, NULL, BBFDM_BOTH}, -{"VendorLogFile", &DMREAD, NULL, NULL, NULL, browseVlfInst, NULL, NULL, NULL, tDeviceInfoVendorLogFileParams, NULL, BBFDM_BOTH}, -{"MemoryStatus", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDeviceInfoMemoryStatusParams, NULL, BBFDM_BOTH}, -{"ProcessStatus", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tDeviceInfoProcessStatusObj, tDeviceInfoProcessStatusParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{CUSTOM_PREFIX"CATV", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tCatTvParams, NULL, BBFDM_BOTH}, +{"VendorConfigFile", &DMREAD, NULL, NULL, NULL, browseVcfInst, NULL, NULL, NULL, NULL, tDeviceInfoVendorConfigFileParams, NULL, BBFDM_BOTH}, +{"VendorLogFile", &DMREAD, NULL, NULL, NULL, browseVlfInst, NULL, NULL, NULL, NULL, tDeviceInfoVendorLogFileParams, NULL, BBFDM_BOTH}, +{"MemoryStatus", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDeviceInfoMemoryStatusParams, NULL, BBFDM_BOTH}, +{"ProcessStatus", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDeviceInfoProcessStatusObj, tDeviceInfoProcessStatusParams, NULL, BBFDM_BOTH}, {0} }; @@ -75,8 +75,8 @@ DMLEAF tDeviceInfoMemoryStatusParams[] = { /* *** Device.DeviceInfo.ProcessStatus. *** */ DMOBJ tDeviceInfoProcessStatusObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Process", &DMREAD, NULL, NULL, NULL, browsePocessEntriesInst, NULL, NULL, NULL, tDeviceInfoProcessStatusProcessParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Process", &DMREAD, NULL, NULL, NULL, browsePocessEntriesInst, NULL, NULL, NULL, NULL, tDeviceInfoProcessStatusProcessParams, NULL, BBFDM_BOTH}, {0} }; diff --git a/dmtree/tr181/dhcpv4.c b/dmtree/tr181/dhcpv4.c index 1ad51c7d..45de028b 100644 --- a/dmtree/tr181/dhcpv4.c +++ b/dmtree/tr181/dhcpv4.c @@ -25,10 +25,10 @@ /*** DHCPv4. ***/ DMOBJ tDhcpv4Obj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Client", &DMWRITE, addObjDHCPv4Client, delObjDHCPv4Client, NULL, browseDHCPv4ClientInst, NULL, NULL, tDHCPv4ClientObj, tDHCPv4ClientParams, NULL, BBFDM_BOTH}, -{"Server", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tDhcpv4ServerObj, tDHCPv4ServerParams, NULL, BBFDM_BOTH}, -{"Relay", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tDHCPv4RelayObj, tDHCPv4RelayParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Client", &DMWRITE, addObjDHCPv4Client, delObjDHCPv4Client, NULL, browseDHCPv4ClientInst, NULL, NULL, NULL, tDHCPv4ClientObj, tDHCPv4ClientParams, NULL, BBFDM_BOTH}, +{"Server", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDhcpv4ServerObj, tDHCPv4ServerParams, NULL, BBFDM_BOTH}, +{"Relay", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDHCPv4RelayObj, tDHCPv4RelayParams, NULL, BBFDM_BOTH}, {0} }; @@ -40,9 +40,9 @@ DMLEAF tDHCPv4Params[] = { /* *** Device.DHCPv4.Client.{i}. *** */ DMOBJ tDHCPv4ClientObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"SentOption", &DMWRITE, addObjDHCPv4ClientSentOption, delObjDHCPv4ClientSentOption, NULL, browseDHCPv4ClientSentOptionInst, NULL, NULL, NULL, tDHCPv4ClientSentOptionParams, NULL, BBFDM_BOTH}, -{"ReqOption", &DMWRITE, addObjDHCPv4ClientReqOption, delObjDHCPv4ClientReqOption, NULL, browseDHCPv4ClientReqOptionInst, NULL, NULL, NULL, tDHCPv4ClientReqOptionParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"SentOption", &DMWRITE, addObjDHCPv4ClientSentOption, delObjDHCPv4ClientSentOption, NULL, browseDHCPv4ClientSentOptionInst, NULL, NULL, NULL, NULL, tDHCPv4ClientSentOptionParams, NULL, BBFDM_BOTH}, +{"ReqOption", &DMWRITE, addObjDHCPv4ClientReqOption, delObjDHCPv4ClientReqOption, NULL, browseDHCPv4ClientReqOptionInst, NULL, NULL, NULL, NULL, tDHCPv4ClientReqOptionParams, NULL, BBFDM_BOTH}, {0} }; @@ -97,25 +97,25 @@ DMLEAF tDHCPv4ServerParams[] = { /*** DHCPv4.Server. ***/ DMOBJ tDhcpv4ServerObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Pool", &DMWRITE, add_dhcp_server, delete_dhcp_server, NULL, browseDhcpInst, NULL, NULL, tDhcpServerPoolObj, tDhcpServerPoolParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Pool", &DMWRITE, add_dhcp_server, delete_dhcp_server, NULL, browseDhcpInst, NULL, NULL, NULL, tDhcpServerPoolObj, tDhcpServerPoolParams, NULL, BBFDM_BOTH}, {0} }; /*** DHCPv4.Server.Pool.{i}. ***/ DMOBJ tDhcpServerPoolObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"StaticAddress", &DMWRITE, add_dhcp_staticaddress, delete_dhcp_staticaddress, NULL, browseDhcpStaticInst, NULL, NULL, NULL, tDhcpServerPoolAddressParams, NULL, BBFDM_BOTH}, -{"Option", &DMWRITE, addObjDHCPv4ServerPoolOption, delObjDHCPv4ServerPoolOption, NULL, browseDHCPv4ServerPoolOptionInst, NULL, NULL, NULL, tDHCPv4ServerPoolOptionParams, NULL, BBFDM_BOTH}, -{"Client", &DMREAD, NULL, NULL, NULL, browseDhcpClientInst, NULL, NULL, tDhcpServerPoolClientObj, tDhcpServerPoolClientParams, get_dhcp_client_linker}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"StaticAddress", &DMWRITE, add_dhcp_staticaddress, delete_dhcp_staticaddress, NULL, browseDhcpStaticInst, NULL, NULL, NULL, NULL, tDhcpServerPoolAddressParams, NULL, BBFDM_BOTH}, +{"Option", &DMWRITE, addObjDHCPv4ServerPoolOption, delObjDHCPv4ServerPoolOption, NULL, browseDHCPv4ServerPoolOptionInst, NULL, NULL, NULL, NULL, tDHCPv4ServerPoolOptionParams, NULL, BBFDM_BOTH}, +{"Client", &DMREAD, NULL, NULL, NULL, browseDhcpClientInst, NULL, NULL, NULL, tDhcpServerPoolClientObj, tDhcpServerPoolClientParams, get_dhcp_client_linker}, {0} }; /*** DHCPv4.Server.Pool.{i}.Client.{i}. ***/ DMOBJ tDhcpServerPoolClientObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"IPv4Address", &DMREAD, NULL, NULL, NULL, browseDhcpClientIPv4Inst, NULL, NULL, NULL, tDhcpServerPoolClientIPv4AddressParams, NULL, BBFDM_BOTH}, -{"Option", &DMREAD, NULL, NULL, NULL, browseDHCPv4ServerPoolClientOptionInst, NULL, NULL, NULL, tDHCPv4ServerPoolClientOptionParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"IPv4Address", &DMREAD, NULL, NULL, NULL, browseDhcpClientIPv4Inst, NULL, NULL, NULL, NULL, tDhcpServerPoolClientIPv4AddressParams, NULL, BBFDM_BOTH}, +{"Option", &DMREAD, NULL, NULL, NULL, browseDHCPv4ServerPoolClientOptionInst, NULL, NULL, NULL, NULL, tDHCPv4ServerPoolClientOptionParams, NULL, BBFDM_BOTH}, {0} }; @@ -186,8 +186,8 @@ DMLEAF tDHCPv4ServerPoolClientOptionParams[] = { /* *** Device.DHCPv4.Relay. *** */ DMOBJ tDHCPv4RelayObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker*/ -{"Forwarding", &DMWRITE, addObjDHCPv4RelayForwarding, delObjDHCPv4RelayForwarding, NULL, browseDHCPv4RelayForwardingInst, NULL, NULL, NULL, tDHCPv4RelayForwardingParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Forwarding", &DMWRITE, addObjDHCPv4RelayForwarding, delObjDHCPv4RelayForwarding, NULL, browseDHCPv4RelayForwardingInst, NULL, NULL, NULL, NULL, tDHCPv4RelayForwardingParams, NULL, BBFDM_BOTH}, {0} }; diff --git a/dmtree/tr181/dhcpv6.c b/dmtree/tr181/dhcpv6.c index e8dd40df..c825eca3 100644 --- a/dmtree/tr181/dhcpv6.c +++ b/dmtree/tr181/dhcpv6.c @@ -22,9 +22,9 @@ /* *** Device.DHCPv6. *** */ DMOBJ tDHCPv6Obj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Client", &DMWRITE, addObjDHCPv6Client, delObjDHCPv6Client, NULL, browseDHCPv6ClientInst, NULL, NULL, tDHCPv6ClientObj, tDHCPv6ClientParams, NULL, BBFDM_BOTH}, -{"Server", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tDHCPv6ServerObj, tDHCPv6ServerParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Client", &DMWRITE, addObjDHCPv6Client, delObjDHCPv6Client, NULL, browseDHCPv6ClientInst, NULL, NULL, NULL, tDHCPv6ClientObj, tDHCPv6ClientParams, NULL, BBFDM_BOTH}, +{"Server", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDHCPv6ServerObj, tDHCPv6ServerParams, NULL, BBFDM_BOTH}, {0} }; @@ -36,10 +36,10 @@ DMLEAF tDHCPv6Params[] = { /* *** Device.DHCPv6.Client.{i}. *** */ DMOBJ tDHCPv6ClientObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Server", &DMREAD, NULL, NULL, NULL, browseDHCPv6ClientServerInst, NULL, NULL, NULL, tDHCPv6ClientServerParams, NULL, BBFDM_BOTH}, -{"SentOption", &DMWRITE, addObjDHCPv6ClientSentOption, delObjDHCPv6ClientSentOption, NULL, browseDHCPv6ClientSentOptionInst, NULL, NULL, NULL, tDHCPv6ClientSentOptionParams, NULL, BBFDM_BOTH}, -{"ReceivedOption", &DMREAD, NULL, NULL, NULL, browseDHCPv6ClientReceivedOptionInst, NULL, NULL, NULL, tDHCPv6ClientReceivedOptionParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Server", &DMREAD, NULL, NULL, NULL, browseDHCPv6ClientServerInst, NULL, NULL, NULL, NULL, tDHCPv6ClientServerParams, NULL, BBFDM_BOTH}, +{"SentOption", &DMWRITE, addObjDHCPv6ClientSentOption, delObjDHCPv6ClientSentOption, NULL, browseDHCPv6ClientSentOptionInst, NULL, NULL, NULL, NULL, tDHCPv6ClientSentOptionParams, NULL, BBFDM_BOTH}, +{"ReceivedOption", &DMREAD, NULL, NULL, NULL, browseDHCPv6ClientReceivedOptionInst, NULL, NULL, NULL, NULL, tDHCPv6ClientReceivedOptionParams, NULL, BBFDM_BOTH}, {0} }; @@ -94,8 +94,8 @@ DMLEAF tDHCPv6ClientReceivedOptionParams[] = { /* *** Device.DHCPv6.Server. *** */ DMOBJ tDHCPv6ServerObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Pool", &DMWRITE, addObjDHCPv6ServerPool, delObjDHCPv6ServerPool, NULL, browseDHCPv6ServerPoolInst, NULL, NULL, tDHCPv6ServerPoolObj, tDHCPv6ServerPoolParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Pool", &DMWRITE, addObjDHCPv6ServerPool, delObjDHCPv6ServerPool, NULL, browseDHCPv6ServerPoolInst, NULL, NULL, NULL, tDHCPv6ServerPoolObj, tDHCPv6ServerPoolParams, NULL, BBFDM_BOTH}, {0} }; @@ -108,9 +108,9 @@ DMLEAF tDHCPv6ServerParams[] = { /* *** Device.DHCPv6.Server.Pool.{i}. *** */ DMOBJ tDHCPv6ServerPoolObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Client", &DMREAD, NULL, NULL, NULL, browseDHCPv6ServerPoolClientInst, NULL, NULL, tDHCPv6ServerPoolClientObj, tDHCPv6ServerPoolClientParams, NULL, BBFDM_BOTH}, -{"Option", &DMWRITE, addObjDHCPv6ServerPoolOption, delObjDHCPv6ServerPoolOption, NULL, browseDHCPv6ServerPoolOptionInst, NULL, NULL, NULL, tDHCPv6ServerPoolOptionParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Client", &DMREAD, NULL, NULL, NULL, browseDHCPv6ServerPoolClientInst, NULL, NULL, NULL, tDHCPv6ServerPoolClientObj, tDHCPv6ServerPoolClientParams, NULL, BBFDM_BOTH}, +{"Option", &DMWRITE, addObjDHCPv6ServerPoolOption, delObjDHCPv6ServerPoolOption, NULL, browseDHCPv6ServerPoolOptionInst, NULL, NULL, NULL, NULL, tDHCPv6ServerPoolOptionParams, NULL, BBFDM_BOTH}, {0} }; @@ -144,10 +144,10 @@ DMLEAF tDHCPv6ServerPoolParams[] = { /* *** Device.DHCPv6.Server.Pool.{i}.Client.{i}. *** */ DMOBJ tDHCPv6ServerPoolClientObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"IPv6Address", &DMREAD, NULL, NULL, NULL, browseDHCPv6ServerPoolClientIPv6AddressInst, NULL, NULL, NULL, tDHCPv6ServerPoolClientIPv6AddressParams, NULL, BBFDM_BOTH}, -{"IPv6Prefix", &DMREAD, NULL, NULL, NULL, browseDHCPv6ServerPoolClientIPv6PrefixInst, NULL, NULL, NULL, tDHCPv6ServerPoolClientIPv6PrefixParams, NULL, BBFDM_BOTH}, -{"Option", &DMREAD, NULL, NULL, NULL, browseDHCPv6ServerPoolClientOptionInst, NULL, NULL, NULL, tDHCPv6ServerPoolClientOptionParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"IPv6Address", &DMREAD, NULL, NULL, NULL, browseDHCPv6ServerPoolClientIPv6AddressInst, NULL, NULL, NULL, NULL, tDHCPv6ServerPoolClientIPv6AddressParams, NULL, BBFDM_BOTH}, +{"IPv6Prefix", &DMREAD, NULL, NULL, NULL, browseDHCPv6ServerPoolClientIPv6PrefixInst, NULL, NULL, NULL, NULL, tDHCPv6ServerPoolClientIPv6PrefixParams, NULL, BBFDM_BOTH}, +{"Option", &DMREAD, NULL, NULL, NULL, browseDHCPv6ServerPoolClientOptionInst, NULL, NULL, NULL, NULL, tDHCPv6ServerPoolClientOptionParams, NULL, BBFDM_BOTH}, {0} }; diff --git a/dmtree/tr181/dns.c b/dmtree/tr181/dns.c index 7a05b36e..67cec3da 100644 --- a/dmtree/tr181/dns.c +++ b/dmtree/tr181/dns.c @@ -18,10 +18,10 @@ /* *** Device.DNS. *** */ DMOBJ tDNSObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Client", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tDNSClientObj, tDNSClientParams, NULL, BBFDM_BOTH}, -{"Relay", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tDNSRelayObj, tDNSRelayParams, NULL, BBFDM_BOTH}, -{"Diagnostics", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tDNSDiagnosticsObj, NULL, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Client", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDNSClientObj, tDNSClientParams, NULL, BBFDM_BOTH}, +{"Relay", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDNSRelayObj, tDNSRelayParams, NULL, BBFDM_BOTH}, +{"Diagnostics", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDNSDiagnosticsObj, NULL, NULL, BBFDM_BOTH}, {0} }; @@ -33,8 +33,8 @@ DMLEAF tDNSParams[] = { /* *** Device.DNS.Client. *** */ DMOBJ tDNSClientObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Server", &DMWRITE, add_client_server, delete_client_server, NULL, browseServerInst, NULL, NULL, NULL, tDNSClientServerParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Server", &DMWRITE, add_client_server, delete_client_server, NULL, browseServerInst, NULL, NULL, NULL, NULL, tDNSClientServerParams, NULL, BBFDM_BOTH}, {0} }; @@ -60,8 +60,8 @@ DMLEAF tDNSClientServerParams[] = { /* *** Device.DNS.Relay. *** */ DMOBJ tDNSRelayObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Forwarding", &DMWRITE, add_relay_forwarding, delete_relay_forwarding, NULL, browseRelayForwardingInst, NULL, NULL, NULL, tDNSRelayForwardingParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Forwarding", &DMWRITE, add_relay_forwarding, delete_relay_forwarding, NULL, browseRelayForwardingInst, NULL, NULL, NULL, NULL, tDNSRelayForwardingParams, NULL, BBFDM_BOTH}, {0} }; @@ -87,15 +87,15 @@ DMLEAF tDNSRelayForwardingParams[] = { /* *** Device.DNS.Diagnostics. *** */ DMOBJ tDNSDiagnosticsObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"NSLookupDiagnostics", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tDNSDiagnosticsNSLookupDiagnosticsObj, tDNSDiagnosticsNSLookupDiagnosticsParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"NSLookupDiagnostics", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDNSDiagnosticsNSLookupDiagnosticsObj, tDNSDiagnosticsNSLookupDiagnosticsParams, NULL, BBFDM_BOTH}, {0} }; /* *** Device.DNS.Diagnostics.NSLookupDiagnostics. *** */ DMOBJ tDNSDiagnosticsNSLookupDiagnosticsObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Result", &DMREAD, NULL, NULL, NULL, browseResultInst, NULL, NULL, NULL, tDNSDiagnosticsNSLookupDiagnosticsResultParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Result", &DMREAD, NULL, NULL, NULL, browseResultInst, NULL, NULL, NULL, NULL, tDNSDiagnosticsNSLookupDiagnosticsResultParams, NULL, BBFDM_BOTH}, {0} }; diff --git a/dmtree/tr181/dsl.c b/dmtree/tr181/dsl.c index 33c88f5f..e4451728 100644 --- a/dmtree/tr181/dsl.c +++ b/dmtree/tr181/dsl.c @@ -23,9 +23,9 @@ /* *** Device.DSL. *** */ DMOBJ tDSLObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Line", &DMREAD, NULL, NULL, NULL, browseDSLLineInst, NULL, NULL, tDSLLineObj, tDSLLineParams, get_dsl_line_linker, BBFDM_BOTH}, -{"Channel", &DMREAD, NULL, NULL, NULL, browseDSLChannelInst, NULL, NULL, tDSLChannelObj, tDSLChannelParams, get_dsl_channel_linker, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Line", &DMREAD, NULL, NULL, NULL, browseDSLLineInst, NULL, NULL, NULL, tDSLLineObj, tDSLLineParams, get_dsl_line_linker, BBFDM_BOTH}, +{"Channel", &DMREAD, NULL, NULL, NULL, browseDSLChannelInst, NULL, NULL, NULL, tDSLChannelObj, tDSLChannelParams, get_dsl_channel_linker, BBFDM_BOTH}, {0} }; @@ -38,8 +38,8 @@ DMLEAF tDSLParams[] = { /* *** Device.DSL.Line.{i}. *** */ DMOBJ tDSLLineObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Stats", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tDSLLineStatsObj, tDSLLineStatsParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Stats", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDSLLineStatsObj, tDSLLineStatsParams, NULL, BBFDM_BOTH}, {0} }; @@ -98,12 +98,12 @@ DMLEAF tDSLLineParams[] = { /* *** Device.DSL.Line.{i}.Stats. *** */ DMOBJ tDSLLineStatsObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Total", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDSLLineStatsTotalParams, NULL, BBFDM_BOTH}, -{"Showtime", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDSLLineStatsShowtimeParams, NULL, BBFDM_BOTH}, -{"LastShowtime", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDSLLineStatsLastShowtimeParams, NULL, BBFDM_BOTH}, -{"CurrentDay", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDSLLineStatsCurrentDayParams, NULL, BBFDM_BOTH}, -{"QuarterHour", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDSLLineStatsQuarterHourParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Total", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDSLLineStatsTotalParams, NULL, BBFDM_BOTH}, +{"Showtime", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDSLLineStatsShowtimeParams, NULL, BBFDM_BOTH}, +{"LastShowtime", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDSLLineStatsLastShowtimeParams, NULL, BBFDM_BOTH}, +{"CurrentDay", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDSLLineStatsCurrentDayParams, NULL, BBFDM_BOTH}, +{"QuarterHour", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDSLLineStatsQuarterHourParams, NULL, BBFDM_BOTH}, {0} }; @@ -159,8 +159,8 @@ DMLEAF tDSLLineStatsQuarterHourParams[] = { /* *** Device.DSL.Channel.{i}. *** */ DMOBJ tDSLChannelObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Stats", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tDSLChannelStatsObj, tDSLChannelStatsParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Stats", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDSLChannelStatsObj, tDSLChannelStatsParams, NULL, BBFDM_BOTH}, {0} }; @@ -191,12 +191,12 @@ DMLEAF tDSLChannelParams[] = { /* *** Device.DSL.Channel.{i}.Stats. *** */ DMOBJ tDSLChannelStatsObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Total", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDSLChannelStatsTotalParams, NULL, BBFDM_BOTH}, -{"Showtime", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDSLChannelStatsShowtimeParams, NULL, BBFDM_BOTH}, -{"LastShowtime", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDSLChannelStatsLastShowtimeParams, NULL, BBFDM_BOTH}, -{"CurrentDay", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDSLChannelStatsCurrentDayParams, NULL, BBFDM_BOTH}, -{"QuarterHour", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDSLChannelStatsQuarterHourParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Total", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDSLChannelStatsTotalParams, NULL, BBFDM_BOTH}, +{"Showtime", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDSLChannelStatsShowtimeParams, NULL, BBFDM_BOTH}, +{"LastShowtime", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDSLChannelStatsLastShowtimeParams, NULL, BBFDM_BOTH}, +{"CurrentDay", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDSLChannelStatsCurrentDayParams, NULL, BBFDM_BOTH}, +{"QuarterHour", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tDSLChannelStatsQuarterHourParams, NULL, BBFDM_BOTH}, {0} }; diff --git a/dmtree/tr181/ethernet.c b/dmtree/tr181/ethernet.c index 97321117..80ca1b73 100644 --- a/dmtree/tr181/ethernet.c +++ b/dmtree/tr181/ethernet.c @@ -25,10 +25,10 @@ char *wan_ifname = NULL; /* *** Device.Ethernet. *** */ DMOBJ tEthernetObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Interface", &DMREAD, NULL, NULL, NULL, browseEthernetInterfaceInst, NULL, NULL, tEthernetInterfaceObj, tEthernetInterfaceParams, get_linker_interface, BBFDM_BOTH}, -{"Link", &DMWRITE, addObjEthernetLink, delObjEthernetLink, NULL, browseEthernetLinkInst, NULL, NULL, tEthernetLinkObj, tEthernetLinkParams, get_linker_link, BBFDM_BOTH}, -{"VLANTermination", &DMWRITE, addObjEthernetVLANTermination, delObjEthernetVLANTermination, NULL, browseEthernetVLANTerminationInst, NULL, NULL, tEthernetVLANTerminationObj, tEthernetVLANTerminationParams, get_linker_vlan_term, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Interface", &DMREAD, NULL, NULL, NULL, browseEthernetInterfaceInst, NULL, NULL, NULL, tEthernetInterfaceObj, tEthernetInterfaceParams, get_linker_interface, BBFDM_BOTH}, +{"Link", &DMWRITE, addObjEthernetLink, delObjEthernetLink, NULL, browseEthernetLinkInst, NULL, NULL, NULL, tEthernetLinkObj, tEthernetLinkParams, get_linker_link, BBFDM_BOTH}, +{"VLANTermination", &DMWRITE, addObjEthernetVLANTermination, delObjEthernetVLANTermination, NULL, browseEthernetVLANTerminationInst, NULL, NULL, NULL, tEthernetVLANTerminationObj, tEthernetVLANTerminationParams, get_linker_vlan_term, BBFDM_BOTH}, {0} }; @@ -42,8 +42,8 @@ DMLEAF tEthernetParams[] = { /* *** Device.Ethernet.Interface.{i}. *** */ DMOBJ tEthernetInterfaceObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Stats", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tEthernetInterfaceStatsParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Stats", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tEthernetInterfaceStatsParams, NULL, BBFDM_BOTH}, {0} }; @@ -87,8 +87,8 @@ DMLEAF tEthernetInterfaceStatsParams[] = { /* *** Device.Ethernet.Link.{i}. *** */ DMOBJ tEthernetLinkObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Stats", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tEthernetLinkStatsParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Stats", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tEthernetLinkStatsParams, NULL, BBFDM_BOTH}, {0} }; @@ -127,8 +127,8 @@ DMLEAF tEthernetLinkStatsParams[] = { /* *** Device.Ethernet.VLANTermination.{i}. *** */ DMOBJ tEthernetVLANTerminationObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Stats", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tEthernetVLANTerminationStatsParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Stats", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tEthernetVLANTerminationStatsParams, NULL, BBFDM_BOTH}, {0} }; diff --git a/dmtree/tr181/firewall.c b/dmtree/tr181/firewall.c index 4e692cac..d80bdef3 100644 --- a/dmtree/tr181/firewall.c +++ b/dmtree/tr181/firewall.c @@ -16,9 +16,9 @@ /* *** Device.Firewall. *** */ DMOBJ tFirewallObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Level", &DMREAD, NULL, NULL, NULL, browseLevelInst, NULL, NULL, NULL, tFirewallLevelParams, NULL, BBFDM_BOTH}, -{"Chain", &DMREAD, NULL, NULL, NULL, browseChainInst, NULL, NULL, tFirewallChainObj, tFirewallChainParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Level", &DMREAD, NULL, NULL, NULL, browseLevelInst, NULL, NULL, NULL, NULL, tFirewallLevelParams, NULL, BBFDM_BOTH}, +{"Chain", &DMREAD, NULL, NULL, NULL, browseChainInst, NULL, NULL, NULL, tFirewallChainObj, tFirewallChainParams, NULL, BBFDM_BOTH}, {0} }; @@ -45,8 +45,8 @@ DMLEAF tFirewallLevelParams[] = { /* *** Device.Firewall.Chain.{i}. *** */ DMOBJ tFirewallChainObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Rule", &DMWRITE, add_firewall_rule, delete_firewall_rule, NULL, browseRuleInst, NULL, NULL, tFirewallChainRuleObj, tFirewallChainRuleParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Rule", &DMWRITE, add_firewall_rule, delete_firewall_rule, NULL, browseRuleInst, NULL, NULL, NULL, tFirewallChainRuleObj, tFirewallChainRuleParams, NULL, BBFDM_BOTH}, {0} }; @@ -61,8 +61,8 @@ DMLEAF tFirewallChainParams[] = { /* *** Device.Firewall.Chain.{i}.Rule.{i}. *** */ DMOBJ tFirewallChainRuleObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{CUSTOM_PREFIX"TimeSpan", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tTimeSpanParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{CUSTOM_PREFIX"TimeSpan", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tTimeSpanParams, NULL, BBFDM_BOTH}, {0} }; diff --git a/dmtree/tr181/hosts.c b/dmtree/tr181/hosts.c index 5e6d32b1..db4182c6 100644 --- a/dmtree/tr181/hosts.c +++ b/dmtree/tr181/hosts.c @@ -22,8 +22,8 @@ /* *** Device.Hosts. *** */ DMOBJ tHostsObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Host", &DMREAD, NULL, NULL, NULL, browsehostInst, NULL, NULL, NULL, tHostsHostParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Host", &DMREAD, NULL, NULL, NULL, browsehostInst, NULL, NULL, NULL, NULL, tHostsHostParams, NULL, BBFDM_BOTH}, {0} }; diff --git a/dmtree/tr181/ip.c b/dmtree/tr181/ip.c index 7231cba1..07fec83c 100644 --- a/dmtree/tr181/ip.c +++ b/dmtree/tr181/ip.c @@ -29,10 +29,10 @@ struct dm_forced_inform_s IPv6INFRM = {0, get_ipv6_finform}; /* *** Device.IP. *** */ DMOBJ tIPObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Interface", &DMWRITE, add_ip_interface, delete_ip_interface, NULL, browseIPIfaceInst, NULL, NULL, tInterfaceObj, tIPintParams, get_linker_ip_interface, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Interface", &DMWRITE, add_ip_interface, delete_ip_interface, NULL, browseIPIfaceInst, NULL, NULL, NULL, tInterfaceObj, tIPintParams, get_linker_ip_interface, BBFDM_BOTH}, #ifdef BBF_TR143 -{"Diagnostics", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tIPDiagnosticsObj, tIPDiagnosticsParams, NULL, BBFDM_BOTH}, +{"Diagnostics", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tIPDiagnosticsObj, tIPDiagnosticsParams, NULL, BBFDM_BOTH}, #endif {0} }; @@ -52,12 +52,12 @@ DMLEAF tIPParams[] = { /* *** Device.IP.Interface. *** */ DMOBJ tInterfaceObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"IPv4Address", &DMWRITE, add_ipv4, delete_ipv4, NULL, browseIfaceIPv4Inst, NULL, NULL, NULL, tIPv4Params, NULL, BBFDM_BOTH}, -{"IPv6Address", &DMWRITE, add_ipv6, delete_ipv6, NULL, browseIfaceIPv6Inst, NULL, NULL, NULL, tIPv6Params, NULL, BBFDM_BOTH}, -{"IPv6Prefix", &DMWRITE, add_ipv6_prefix, delete_ipv6_prefix, NULL, browseIfaceIPv6PrefixInst, NULL, NULL, NULL, tIPv6PrefixParams, get_linker_ipv6_prefix, BBFDM_BOTH}, -{"Stats", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tIPInterfaceStatsParams, NULL, BBFDM_BOTH}, -{"TWAMPReflector", &DMWRITE, addObjIPInterfaceTWAMPReflector, delObjIPInterfaceTWAMPReflector, NULL, browseIPInterfaceTWAMPReflectorInst, NULL, NULL, NULL, tIPInterfaceTWAMPReflectorParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"IPv4Address", &DMWRITE, add_ipv4, delete_ipv4, NULL, browseIfaceIPv4Inst, NULL, NULL, NULL, NULL, tIPv4Params, NULL, BBFDM_BOTH}, +{"IPv6Address", &DMWRITE, add_ipv6, delete_ipv6, NULL, browseIfaceIPv6Inst, NULL, NULL, NULL, NULL, tIPv6Params, NULL, BBFDM_BOTH}, +{"IPv6Prefix", &DMWRITE, add_ipv6_prefix, delete_ipv6_prefix, NULL, browseIfaceIPv6PrefixInst, NULL, NULL, NULL, NULL, tIPv6PrefixParams, get_linker_ipv6_prefix, BBFDM_BOTH}, +{"Stats", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tIPInterfaceStatsParams, NULL, BBFDM_BOTH}, +{"TWAMPReflector", &DMWRITE, addObjIPInterfaceTWAMPReflector, delObjIPInterfaceTWAMPReflector, NULL, browseIPInterfaceTWAMPReflectorInst, NULL, NULL, NULL, NULL, tIPInterfaceTWAMPReflectorParams, NULL, BBFDM_BOTH}, {0} }; diff --git a/dmtree/tr181/nat.c b/dmtree/tr181/nat.c index f7589b6f..8807fbfb 100644 --- a/dmtree/tr181/nat.c +++ b/dmtree/tr181/nat.c @@ -22,9 +22,9 @@ /* *** Device.NAT. *** */ DMOBJ tNATObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"InterfaceSetting", &DMWRITE, add_NAT_InterfaceSetting, delete_NAT_InterfaceSetting, NULL, browseInterfaceSettingInst, NULL, NULL, NULL, tNATInterfaceSettingParams, NULL, BBFDM_BOTH}, -{"PortMapping", &DMWRITE, add_NAT_PortMapping, delete_NAT_PortMapping, NULL, browsePortMappingInst, NULL, NULL, NULL, tNATPortMappingParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"InterfaceSetting", &DMWRITE, add_NAT_InterfaceSetting, delete_NAT_InterfaceSetting, NULL, browseInterfaceSettingInst, NULL, NULL, NULL, NULL, tNATInterfaceSettingParams, NULL, BBFDM_BOTH}, +{"PortMapping", &DMWRITE, add_NAT_PortMapping, delete_NAT_PortMapping, NULL, browsePortMappingInst, NULL, NULL, NULL, NULL, tNATPortMappingParams, NULL, BBFDM_BOTH}, {0} }; diff --git a/dmtree/tr181/ppp.c b/dmtree/tr181/ppp.c index 131ff617..b78025f8 100644 --- a/dmtree/tr181/ppp.c +++ b/dmtree/tr181/ppp.c @@ -22,8 +22,8 @@ /* *** Device.PPP. *** */ DMOBJ tPPPObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Interface", &DMWRITE, add_ppp_interface, delete_ppp_interface, NULL, browseInterfaceInst, NULL, NULL, tPPPInterfaceObj, tPPPInterfaceParams, get_linker_ppp_interface, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Interface", &DMWRITE, add_ppp_interface, delete_ppp_interface, NULL, browseInterfaceInst, NULL, NULL, NULL, tPPPInterfaceObj, tPPPInterfaceParams, get_linker_ppp_interface, BBFDM_BOTH}, {0} }; @@ -35,9 +35,9 @@ DMLEAF tPPPParams[] = { /* *** Device.PPP.Interface.{i}. *** */ DMOBJ tPPPInterfaceObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"PPPoE", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tPPPInterfacePPPoEParams, NULL, BBFDM_BOTH}, -{"Stats", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tPPPInterfaceStatsParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"PPPoE", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tPPPInterfacePPPoEParams, NULL, BBFDM_BOTH}, +{"Stats", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tPPPInterfaceStatsParams, NULL, BBFDM_BOTH}, {0} }; @@ -58,7 +58,7 @@ DMLEAF tPPPInterfaceParams[] = { /* *** Device.PPP.Interface.{i}.PPPoE. *** */ DMLEAF tPPPInterfacePPPoEParams[] = { - /* PARAM, permission, type, getvalue, setvalue, forced_inform, notification, bbfdm_type*/ +/* PARAM, permission, type, getvalue, setvalue, forced_inform, notification, bbfdm_type*/ {"SessionID", &DMREAD, DMT_UNINT, get_PPPInterfacePPPoE_SessionID, NULL, NULL, NULL, BBFDM_BOTH}, {"ACName", &DMWRITE, DMT_STRING, get_PPPInterfacePPPoE_ACName, set_PPPInterfacePPPoE_ACName, NULL, NULL, BBFDM_BOTH}, {"ServiceName", &DMWRITE, DMT_STRING, get_PPPInterfacePPPoE_ServiceName, set_PPPInterfacePPPoE_ServiceName, NULL, NULL, BBFDM_BOTH}, diff --git a/dmtree/tr181/ptm.c b/dmtree/tr181/ptm.c index 6c4368e7..eb68651d 100644 --- a/dmtree/tr181/ptm.c +++ b/dmtree/tr181/ptm.c @@ -21,15 +21,15 @@ /* *** Device.PTM. *** */ DMOBJ tPTMObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Link", &DMWRITE, add_ptm_link, delete_ptm_link, NULL, browsePtmLinkInst, NULL, NULL, tPTMLinkObj, tPTMLinkParams, get_ptm_linker, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Link", &DMWRITE, add_ptm_link, delete_ptm_link, NULL, browsePtmLinkInst, NULL, NULL, NULL, tPTMLinkObj, tPTMLinkParams, get_ptm_linker, BBFDM_BOTH}, {0} }; /* *** Device.PTM.Link.{i}. *** */ DMOBJ tPTMLinkObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Stats", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tPTMLinkStatsParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Stats", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tPTMLinkStatsParams, NULL, BBFDM_BOTH}, {0} }; diff --git a/dmtree/tr181/qos.c b/dmtree/tr181/qos.c index 53540930..cf983351 100644 --- a/dmtree/tr181/qos.c +++ b/dmtree/tr181/qos.c @@ -17,14 +17,14 @@ /* *** Device.QoS. *** */ DMOBJ tQoSObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Classification", &DMWRITE, addObjQoSClassification, delObjQoSClassification, NULL, browseQoSClassificationInst, NULL, NULL, NULL, tQoSClassificationParams, NULL, BBFDM_BOTH}, -{"App", &DMWRITE, addObjQoSApp, delObjQoSApp, NULL, browseQoSAppInst, NULL, NULL, NULL, tQoSAppParams, NULL, BBFDM_BOTH}, -{"Flow", &DMWRITE, addObjQoSFlow, delObjQoSFlow, NULL, browseQoSFlowInst, NULL, NULL, NULL, tQoSFlowParams, NULL, BBFDM_BOTH}, -{"Policer", &DMWRITE, addObjQoSPolicer, delObjQoSPolicer, NULL, browseQoSPolicerInst, NULL, NULL, NULL, tQoSPolicerParams, NULL, BBFDM_BOTH}, -{"Queue", &DMWRITE, addObjQoSQueue, delObjQoSQueue, NULL, browseQoSQueueInst, NULL, NULL, NULL, tQoSQueueParams, get_linker_qos_queue, BBFDM_BOTH}, -{"QueueStats", &DMWRITE, addObjQoSQueueStats, delObjQoSQueueStats, NULL, browseQoSQueueStatsInst, NULL, NULL, NULL, tQoSQueueStatsParams, NULL, BBFDM_BOTH}, -{"Shaper", &DMWRITE, addObjQoSShaper, delObjQoSShaper, NULL, browseQoSShaperInst, NULL, NULL, NULL, tQoSShaperParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Classification", &DMWRITE, addObjQoSClassification, delObjQoSClassification, NULL, browseQoSClassificationInst, NULL, NULL, NULL, NULL, tQoSClassificationParams, NULL, BBFDM_BOTH}, +{"App", &DMWRITE, addObjQoSApp, delObjQoSApp, NULL, browseQoSAppInst, NULL, NULL, NULL, NULL, tQoSAppParams, NULL, BBFDM_BOTH}, +{"Flow", &DMWRITE, addObjQoSFlow, delObjQoSFlow, NULL, browseQoSFlowInst, NULL, NULL, NULL, NULL, tQoSFlowParams, NULL, BBFDM_BOTH}, +{"Policer", &DMWRITE, addObjQoSPolicer, delObjQoSPolicer, NULL, browseQoSPolicerInst, NULL, NULL, NULL, NULL, tQoSPolicerParams, NULL, BBFDM_BOTH}, +{"Queue", &DMWRITE, addObjQoSQueue, delObjQoSQueue, NULL, browseQoSQueueInst, NULL, NULL, NULL, NULL, tQoSQueueParams, get_linker_qos_queue, BBFDM_BOTH}, +{"QueueStats", &DMWRITE, addObjQoSQueueStats, delObjQoSQueueStats, NULL, browseQoSQueueStatsInst, NULL, NULL, NULL, NULL, tQoSQueueStatsParams, NULL, BBFDM_BOTH}, +{"Shaper", &DMWRITE, addObjQoSShaper, delObjQoSShaper, NULL, browseQoSShaperInst, NULL, NULL, NULL, NULL, tQoSShaperParams, NULL, BBFDM_BOTH}, {0} }; diff --git a/dmtree/tr181/routing.c b/dmtree/tr181/routing.c index 7780d6eb..084fcf46 100644 --- a/dmtree/tr181/routing.c +++ b/dmtree/tr181/routing.c @@ -30,9 +30,9 @@ enum enum_route_type { /* *** Device.Routing. *** */ DMOBJ tRoutingObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Router", &DMREAD, NULL, NULL, NULL, browseRouterInst, NULL, NULL, tRoutingRouterObj, tRoutingRouterParams, NULL, BBFDM_BOTH}, -{"RouteInformation", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tRoutingRouteInformationObj, tRoutingRouteInformationParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Router", &DMREAD, NULL, NULL, NULL, browseRouterInst, NULL, NULL, NULL, tRoutingRouterObj, tRoutingRouterParams, NULL, BBFDM_BOTH}, +{"RouteInformation", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tRoutingRouteInformationObj, tRoutingRouteInformationParams, NULL, BBFDM_BOTH}, {0} }; @@ -44,9 +44,9 @@ DMLEAF tRoutingParams[] = { /* *** Device.Routing.Router.{i}. *** */ DMOBJ tRoutingRouterObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"IPv4Forwarding", &DMWRITE, add_ipv4forwarding, delete_ipv4forwarding, NULL, browseIPv4ForwardingInst, NULL, NULL, NULL, tRoutingRouterIPv4ForwardingParams, NULL, BBFDM_BOTH}, -{"IPv6Forwarding", &DMWRITE, add_ipv6Forwarding, delete_ipv6Forwarding, NULL, browseIPv6ForwardingInst, NULL, NULL, NULL, tRoutingRouterIPv6ForwardingParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"IPv4Forwarding", &DMWRITE, add_ipv4forwarding, delete_ipv4forwarding, NULL, browseIPv4ForwardingInst, NULL, NULL, NULL, NULL, tRoutingRouterIPv4ForwardingParams, NULL, BBFDM_BOTH}, +{"IPv6Forwarding", &DMWRITE, add_ipv6Forwarding, delete_ipv6Forwarding, NULL, browseIPv6ForwardingInst, NULL, NULL, NULL, NULL, tRoutingRouterIPv6ForwardingParams, NULL, BBFDM_BOTH}, {0} }; @@ -95,8 +95,8 @@ DMLEAF tRoutingRouterIPv6ForwardingParams[] = { /* *** Device.Routing.RouteInformation. *** */ DMOBJ tRoutingRouteInformationObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"InterfaceSetting", &DMREAD, NULL, NULL, NULL, browseRoutingRouteInformationInterfaceSettingInst, NULL, NULL, NULL, tRoutingRouteInformationInterfaceSettingParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"InterfaceSetting", &DMREAD, NULL, NULL, NULL, browseRoutingRouteInformationInterfaceSettingInst, NULL, NULL, NULL, NULL, tRoutingRouteInformationInterfaceSettingParams, NULL, BBFDM_BOTH}, {0} }; diff --git a/dmtree/tr181/softwaremodules.c b/dmtree/tr181/softwaremodules.c index 1c656937..ed56d937 100644 --- a/dmtree/tr181/softwaremodules.c +++ b/dmtree/tr181/softwaremodules.c @@ -20,8 +20,8 @@ /* *** Device.SoftwareModules. *** */ DMOBJ tSoftwareModulesObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"DeploymentUnit", &DMREAD, NULL, NULL, NULL, browsesoftwaremodules_deploymentunitInst, NULL, NULL, NULL, tSoftwareModulesDeploymentUnitParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"DeploymentUnit", &DMREAD, NULL, NULL, NULL, browsesoftwaremodules_deploymentunitInst, NULL, NULL, NULL, NULL, tSoftwareModulesDeploymentUnitParams, NULL, BBFDM_BOTH}, {0} }; diff --git a/dmtree/tr181/upnp.c b/dmtree/tr181/upnp.c index cae1fd14..e5f476f9 100644 --- a/dmtree/tr181/upnp.c +++ b/dmtree/tr181/upnp.c @@ -20,8 +20,8 @@ /* *** Device.UPnP. *** */ DMOBJ tUPnPObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Device", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tUPnPDeviceParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Device", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tUPnPDeviceParams, NULL, BBFDM_BOTH}, {0} }; diff --git a/dmtree/tr181/usb.c b/dmtree/tr181/usb.c index 0dede806..ca87d75a 100644 --- a/dmtree/tr181/usb.c +++ b/dmtree/tr181/usb.c @@ -15,10 +15,10 @@ /* *** Device.USB. *** */ DMOBJ tUSBObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Interface", &DMREAD, NULL, NULL, NULL, browseUSBInterfaceInst, NULL, NULL, tUSBInterfaceObj, tUSBInterfaceParams, NULL, BBFDM_BOTH}, -{"Port", &DMREAD, NULL, NULL, NULL, browseUSBPortInst, NULL, NULL, NULL, tUSBPortParams, get_linker_usb_port, BBFDM_BOTH}, -{"USBHosts", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tUSBUSBHostsObj, tUSBUSBHostsParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Interface", &DMREAD, NULL, NULL, NULL, browseUSBInterfaceInst, NULL, NULL, NULL, tUSBInterfaceObj, tUSBInterfaceParams, NULL, BBFDM_BOTH}, +{"Port", &DMREAD, NULL, NULL, NULL, browseUSBPortInst, NULL, NULL, NULL, NULL, tUSBPortParams, get_linker_usb_port, BBFDM_BOTH}, +{"USBHosts", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tUSBUSBHostsObj, tUSBUSBHostsParams, NULL, BBFDM_BOTH}, {0} }; @@ -31,8 +31,8 @@ DMLEAF tUSBParams[] = { /* *** Device.USB.Interface.{i}. *** */ DMOBJ tUSBInterfaceObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Stats", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tUSBInterfaceStatsParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Stats", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tUSBInterfaceStatsParams, NULL, BBFDM_BOTH}, {0} }; @@ -87,8 +87,8 @@ DMLEAF tUSBPortParams[] = { /* *** Device.USB.USBHosts. *** */ DMOBJ tUSBUSBHostsObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Host", &DMREAD, NULL, NULL, NULL, browseUSBUSBHostsHostInst, NULL, NULL, tUSBUSBHostsHostObj, tUSBUSBHostsHostParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Host", &DMREAD, NULL, NULL, NULL, browseUSBUSBHostsHostInst, NULL, NULL, NULL, tUSBUSBHostsHostObj, tUSBUSBHostsHostParams, NULL, BBFDM_BOTH}, {0} }; @@ -100,8 +100,8 @@ DMLEAF tUSBUSBHostsParams[] = { /* *** Device.USB.USBHosts.Host.{i}. *** */ DMOBJ tUSBUSBHostsHostObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Device", &DMREAD, NULL, NULL, NULL, browseUSBUSBHostsHostDeviceInst, NULL, NULL, tUSBUSBHostsHostDeviceObj, tUSBUSBHostsHostDeviceParams, get_linker_usb_host_device, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Device", &DMREAD, NULL, NULL, NULL, browseUSBUSBHostsHostDeviceInst, NULL, NULL, NULL, tUSBUSBHostsHostDeviceObj, tUSBUSBHostsHostDeviceParams, get_linker_usb_host_device, BBFDM_BOTH}, {0} }; @@ -120,8 +120,8 @@ DMLEAF tUSBUSBHostsHostParams[] = { /* *** Device.USB.USBHosts.Host.{i}.Device.{i}. *** */ DMOBJ tUSBUSBHostsHostDeviceObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Configuration", &DMREAD, NULL, NULL, NULL, browseUSBUSBHostsHostDeviceConfigurationInst, NULL, NULL, tUSBUSBHostsHostDeviceConfigurationObj, tUSBUSBHostsHostDeviceConfigurationParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Configuration", &DMREAD, NULL, NULL, NULL, browseUSBUSBHostsHostDeviceConfigurationInst, NULL, NULL, NULL, tUSBUSBHostsHostDeviceConfigurationObj, tUSBUSBHostsHostDeviceConfigurationParams, NULL, BBFDM_BOTH}, {0} }; @@ -151,8 +151,8 @@ DMLEAF tUSBUSBHostsHostDeviceParams[] = { /* *** Device.USB.USBHosts.Host.{i}.Device.{i}.Configuration.{i}. *** */ DMOBJ tUSBUSBHostsHostDeviceConfigurationObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Interface", &DMREAD, NULL, NULL, NULL, browseUSBUSBHostsHostDeviceConfigurationInterfaceInst, NULL, NULL, NULL, tUSBUSBHostsHostDeviceConfigurationInterfaceParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Interface", &DMREAD, NULL, NULL, NULL, browseUSBUSBHostsHostDeviceConfigurationInterfaceInst, NULL, NULL, NULL, NULL, tUSBUSBHostsHostDeviceConfigurationInterfaceParams, NULL, BBFDM_BOTH}, {0} }; @@ -209,7 +209,7 @@ int browseUSBInterfaceInst(struct dmctx *dmctx, DMNODE *parent_node, void *prev_ { DIR *dir; struct dirent *ent; - char *netfolderpath, *iface_name, *iface_path, *statistics_path, *port_link, *v, *instnbr, *instance; + char *netfolderpath, *iface_name, *iface_path, *statistics_path, *port_link, *v, *instnbr = NULL, *instance = NULL; size_t length; char **foldersplit; struct uci_section *s; @@ -249,7 +249,7 @@ int browseUSBInterfaceInst(struct dmctx *dmctx, DMNODE *parent_node, void *prev_ int browseUSBPortInst(struct dmctx *dmctx, DMNODE *parent_node, void *prev_data, char *prev_instance) { int ret1, ret2; - char *folderpath, *instnbr, *instance, *v; + char *folderpath, *instnbr = NULL, *instance = NULL, *v; struct uci_section *s; struct usb_port port= {}; LIST_HEAD(dup_list); @@ -280,7 +280,7 @@ int browseUSBUSBHostsHostInst(struct dmctx *dmctx, DMNODE *parent_node, void *pr struct dirent *ent; LIST_HEAD(dup_list); struct sysfs_dmsection *p; - char *instance, *instnbr; + char *instance = NULL, *instnbr = NULL; struct usb_port port= {}; check_create_dmmap_package("dmmap_usb"); @@ -378,7 +378,7 @@ int browseUSBUSBHostsHostDeviceInst(struct dmctx *dmctx, DMNODE *parent_node, vo struct dirent *ent; LIST_HEAD(dup_list); struct sysfs_dmsection *p; - char *instance, *instnbr; + char *instance = NULL, *instnbr = NULL; struct usb_port port= {}; struct usb_port *prev_port= (struct usb_port *)prev_data; check_create_dmmap_package("dmmap_usb"); @@ -423,7 +423,7 @@ int browseUSBUSBHostsHostDeviceConfigurationInterfaceInst(struct dmctx *dmctx, D struct usb_port *usb_dev= (struct usb_port*)prev_data; struct usb_port port= {}; int ret1, ret2; - char *sysfs_rep_path, *v, *instance, *instnbr = NULL; + char *sysfs_rep_path, *v, *instance = NULL, *instnbr = NULL; struct uci_section *dmmap_sect; ret1= regcomp(®ex1, "^[0-9][0-9]*-[0-9]*[0-9]:[0-9][0-9]*\.[0-9]*[0-9]$", 0); ret2= regcomp(®ex2, "^[0-9][0-9]*-[0-9]*[0-9]\.[0-9]*[0-9]:[0-9][0-9]*\.[0-9]*[0-9]$", 0); diff --git a/dmtree/tr181/userinterface.c b/dmtree/tr181/userinterface.c index 760a9ca3..df4b5eae 100644 --- a/dmtree/tr181/userinterface.c +++ b/dmtree/tr181/userinterface.c @@ -22,8 +22,8 @@ /* *** Device.UserInterface. *** */ DMOBJ tUserInterfaceObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"RemoteAccess", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tUserInterfaceRemoteAccessParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"RemoteAccess", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tUserInterfaceRemoteAccessParams, NULL, BBFDM_BOTH}, {0} }; diff --git a/dmtree/tr181/users.c b/dmtree/tr181/users.c index c4f44bb7..324fa58d 100644 --- a/dmtree/tr181/users.c +++ b/dmtree/tr181/users.c @@ -15,8 +15,8 @@ /* *** Device.Users. *** */ DMOBJ tUsersObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"User", &DMWRITE, add_users_user, delete_users_user, NULL, browseUserInst, NULL, NULL, NULL, tUsersUserParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"User", &DMWRITE, add_users_user, delete_users_user, NULL, browseUserInst, NULL, NULL, NULL, NULL, tUsersUserParams, NULL, BBFDM_BOTH}, {0} }; diff --git a/dmtree/tr181/wifi.c b/dmtree/tr181/wifi.c index 20ce9937..0e16e54c 100644 --- a/dmtree/tr181/wifi.c +++ b/dmtree/tr181/wifi.c @@ -25,12 +25,12 @@ /* *** Device.WiFi. *** */ DMOBJ tWiFiObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Radio", &DMREAD, NULL, NULL, NULL, browseWifiRadioInst, NULL, NULL, tWiFiRadioObj, tWiFiRadioParams, get_linker_Wifi_Radio, BBFDM_BOTH}, -{"SSID", &DMWRITE, add_wifi_ssid, delete_wifi_ssid, NULL, browseWifiSsidInst, NULL, NULL, tWiFiSSIDObj, tWiFiSSIDParams, get_linker_Wifi_Ssid, BBFDM_BOTH}, -{"AccessPoint", &DMREAD, NULL, NULL, NULL, browseWifiAccessPointInst, NULL, NULL, tWiFiAccessPointObj, tWiFiAccessPointParams, NULL, BBFDM_BOTH}, -{"NeighboringWiFiDiagnostic", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, tWiFiNeighboringWiFiDiagnosticObj, tWiFiNeighboringWiFiDiagnosticParams, NULL, BBFDM_BOTH}, -{"EndPoint", &DMWRITE, addObjWiFiEndPoint, delObjWiFiEndPoint, NULL, browseWiFiEndPointInst, NULL, NULL, tWiFiEndPointObj, tWiFiEndPointParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Radio", &DMREAD, NULL, NULL, NULL, browseWifiRadioInst, NULL, NULL, NULL, tWiFiRadioObj, tWiFiRadioParams, get_linker_Wifi_Radio, BBFDM_BOTH}, +{"SSID", &DMWRITE, add_wifi_ssid, delete_wifi_ssid, NULL, browseWifiSsidInst, NULL, NULL, NULL, tWiFiSSIDObj, tWiFiSSIDParams, get_linker_Wifi_Ssid, BBFDM_BOTH}, +{"AccessPoint", &DMREAD, NULL, NULL, NULL, browseWifiAccessPointInst, NULL, NULL, NULL, tWiFiAccessPointObj, tWiFiAccessPointParams, NULL, BBFDM_BOTH}, +{"NeighboringWiFiDiagnostic", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tWiFiNeighboringWiFiDiagnosticObj, tWiFiNeighboringWiFiDiagnosticParams, NULL, BBFDM_BOTH}, +{"EndPoint", &DMWRITE, addObjWiFiEndPoint, delObjWiFiEndPoint, NULL, browseWiFiEndPointInst, NULL, NULL, NULL, tWiFiEndPointObj, tWiFiEndPointParams, NULL, BBFDM_BOTH}, {0} }; @@ -46,8 +46,8 @@ DMLEAF tWiFiParams[] = { /* *** Device.WiFi.Radio.{i}. *** */ DMOBJ tWiFiRadioObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Stats", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tWiFiRadioStatsParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Stats", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tWiFiRadioStatsParams, NULL, BBFDM_BOTH}, {0} }; @@ -104,8 +104,8 @@ DMLEAF tWiFiRadioStatsParams[] = { /* *** Device.WiFi.NeighboringWiFiDiagnostic. *** */ DMOBJ tWiFiNeighboringWiFiDiagnosticObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Result", &DMREAD, NULL, NULL, NULL, browseWifiNeighboringWiFiDiagnosticResultInst, NULL, NULL, NULL, tWiFiNeighboringWiFiDiagnosticResultParams, NULL, BBFDM_CWMP}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Result", &DMREAD, NULL, NULL, NULL, browseWifiNeighboringWiFiDiagnosticResultInst, NULL, NULL, NULL, NULL, tWiFiNeighboringWiFiDiagnosticResultParams, NULL, BBFDM_CWMP}, {0} }; @@ -130,8 +130,8 @@ DMLEAF tWiFiNeighboringWiFiDiagnosticResultParams[] = { /* *** Device.WiFi.SSID.{i}. *** */ DMOBJ tWiFiSSIDObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Stats", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tWiFiSSIDStatsParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Stats", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tWiFiSSIDStatsParams, NULL, BBFDM_BOTH}, {0} }; @@ -170,12 +170,12 @@ DMLEAF tWiFiSSIDStatsParams[] = { /* *** Device.WiFi.AccessPoint.{i}. *** */ DMOBJ tWiFiAccessPointObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Security", &DMWRITE, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tWiFiAccessPointSecurityParams, NULL, BBFDM_BOTH}, -{"AssociatedDevice", &DMREAD, NULL, NULL, NULL, browse_wifi_associated_device, NULL, NULL, tWiFiAccessPointAssociatedDeviceObj, tWiFiAccessPointAssociatedDeviceParams, get_linker_associated_device, BBFDM_BOTH}, -{"WPS", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tWiFiAccessPointWPSParams, NULL, BBFDM_BOTH}, -{"Accounting", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tWiFiAccessPointAccountingParams, NULL, BBFDM_BOTH}, -{CUSTOM_PREFIX"IEEE80211r", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tWiFiAcessPointIEEE80211rParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Security", &DMWRITE, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tWiFiAccessPointSecurityParams, NULL, BBFDM_BOTH}, +{"AssociatedDevice", &DMREAD, NULL, NULL, NULL, browse_wifi_associated_device, NULL, NULL, NULL, tWiFiAccessPointAssociatedDeviceObj, tWiFiAccessPointAssociatedDeviceParams, get_linker_associated_device, BBFDM_BOTH}, +{"WPS", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tWiFiAccessPointWPSParams, NULL, BBFDM_BOTH}, +{"Accounting", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tWiFiAccessPointAccountingParams, NULL, BBFDM_BOTH}, +{CUSTOM_PREFIX"IEEE80211r", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tWiFiAcessPointIEEE80211rParams, NULL, BBFDM_BOTH}, {0} }; @@ -230,8 +230,8 @@ DMLEAF tWiFiAccessPointWPSParams[] = { /* *** Device.WiFi.AccessPoint.{i}.AssociatedDevice.{i}. *** */ DMOBJ tWiFiAccessPointAssociatedDeviceObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Stats", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tWiFiAccessPointAssociatedDeviceStatsParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Stats", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tWiFiAccessPointAssociatedDeviceStatsParams, NULL, BBFDM_BOTH}, {0} }; @@ -286,11 +286,11 @@ DMLEAF tWiFiAcessPointIEEE80211rParams[] = { /* *** Device.WiFi.EndPoint.{i}. *** */ DMOBJ tWiFiEndPointObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Stats", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tWiFiEndPointStatsParams, NULL, BBFDM_BOTH}, -{"Security", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tWiFiEndPointSecurityParams, NULL, BBFDM_BOTH}, -{"Profile", &DMREAD, NULL, NULL, NULL, browseWiFiEndPointProfileInst, NULL, NULL, tWiFiEndPointProfileObj, tWiFiEndPointProfileParams, NULL, BBFDM_BOTH}, -{"WPS", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tWiFiEndPointWPSParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Stats", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tWiFiEndPointStatsParams, NULL, BBFDM_BOTH}, +{"Security", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tWiFiEndPointSecurityParams, NULL, BBFDM_BOTH}, +{"Profile", &DMREAD, NULL, NULL, NULL, browseWiFiEndPointProfileInst, NULL, NULL, NULL, tWiFiEndPointProfileObj, tWiFiEndPointProfileParams, NULL, BBFDM_BOTH}, +{"WPS", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tWiFiEndPointWPSParams, NULL, BBFDM_BOTH}, {0} }; @@ -324,8 +324,8 @@ DMLEAF tWiFiEndPointSecurityParams[] = { /* *** Device.WiFi.EndPoint.{i}.Profile.{i}. *** */ DMOBJ tWiFiEndPointProfileObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Security", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tWiFiEndPointProfileSecurityParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Security", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tWiFiEndPointProfileSecurityParams, NULL, BBFDM_BOTH}, {0} }; diff --git a/dmtree/tr181/x_iopsys_eu_ipacccfg.c b/dmtree/tr181/x_iopsys_eu_ipacccfg.c index 6b3a09dc..75e698a9 100644 --- a/dmtree/tr181/x_iopsys_eu_ipacccfg.c +++ b/dmtree/tr181/x_iopsys_eu_ipacccfg.c @@ -20,9 +20,9 @@ /*** DMROOT.X_IOPSYS_EU_IpAccCfg. ***/ DMOBJ tSe_IpAccObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{CUSTOM_PREFIX"IpAccListCfgObj", &DMWRITE, add_ipacccfg_rule, delete_ipacccfg_rule, NULL, browseAccListInst, NULL, NULL, NULL, tSe_IpAccCfgParam, NULL, BBFDM_BOTH}, -{CUSTOM_PREFIX"PortForwarding", &DMWRITE, add_ipacccfg_port_forwarding, delete_ipacccfg_port_forwarding, NULL, browseport_forwardingInst, NULL, NULL, NULL, tSe_PortForwardingParam, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{CUSTOM_PREFIX"IpAccListCfgObj", &DMWRITE, add_ipacccfg_rule, delete_ipacccfg_rule, NULL, browseAccListInst, NULL, NULL, NULL, NULL, tSe_IpAccCfgParam, NULL, BBFDM_BOTH}, +{CUSTOM_PREFIX"PortForwarding", &DMWRITE, add_ipacccfg_port_forwarding, delete_ipacccfg_port_forwarding, NULL, browseport_forwardingInst, NULL, NULL, NULL, NULL, tSe_PortForwardingParam, NULL, BBFDM_BOTH}, {0} }; diff --git a/dmtree/tr181/x_iopsys_eu_owsd.c b/dmtree/tr181/x_iopsys_eu_owsd.c index b985a03a..bc756fbe 100644 --- a/dmtree/tr181/x_iopsys_eu_owsd.c +++ b/dmtree/tr181/x_iopsys_eu_owsd.c @@ -28,9 +28,9 @@ DMLEAF XIopsysEuOwsdParams[] = { }; DMOBJ XIopsysEuOwsdObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{CUSTOM_PREFIX"UbusProxy", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, UbusProxyParams, NULL, BBFDM_BOTH}, -{CUSTOM_PREFIX"ListenObj", &DMWRITE, add_owsd_listen, delete_owsd_listen_instance, NULL, browseXIopsysEuOwsdListenObj, NULL, NULL, NULL, X_IOPSYS_EU_ListenObjParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{CUSTOM_PREFIX"UbusProxy", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, UbusProxyParams, NULL, BBFDM_BOTH}, +{CUSTOM_PREFIX"ListenObj", &DMWRITE, add_owsd_listen, delete_owsd_listen_instance, NULL, browseXIopsysEuOwsdListenObj, NULL, NULL, NULL, NULL, X_IOPSYS_EU_ListenObjParams, NULL, BBFDM_BOTH}, {0} }; diff --git a/dmtree/tr181/x_iopsys_eu_wifilife.c b/dmtree/tr181/x_iopsys_eu_wifilife.c index ed73269a..21cff491 100644 --- a/dmtree/tr181/x_iopsys_eu_wifilife.c +++ b/dmtree/tr181/x_iopsys_eu_wifilife.c @@ -18,8 +18,8 @@ /*** DMROOT.X_IOPSYS_EU_WiFiLife. ****/ DMOBJ X_IOPSYS_EU_WiFiLifeObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Steering", &DMREAD, NULL, NULL, NULL, browseWifiLifeSteeringObj, NULL, NULL, NULL, WiFiLifeSteeringParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Steering", &DMREAD, NULL, NULL, NULL, browseWifiLifeSteeringObj, NULL, NULL, NULL, NULL, WiFiLifeSteeringParams, NULL, BBFDM_BOTH}, {0} }; diff --git a/dmtree/tr181/xmpp.c b/dmtree/tr181/xmpp.c index 21228bdc..54ecf00f 100644 --- a/dmtree/tr181/xmpp.c +++ b/dmtree/tr181/xmpp.c @@ -20,8 +20,8 @@ /* *** Device.XMPP. *** */ DMOBJ tXMPPObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Connection", &DMWRITE, add_xmpp_connection, delete_xmpp_connection, NULL, browsexmpp_connectionInst, NULL, NULL, tXMPPConnectionObj, tXMPPConnectionParams, get_xmpp_connection_linker, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Connection", &DMWRITE, add_xmpp_connection, delete_xmpp_connection, NULL, browsexmpp_connectionInst, NULL, NULL, NULL, tXMPPConnectionObj, tXMPPConnectionParams, get_xmpp_connection_linker, BBFDM_BOTH}, {0} }; @@ -34,8 +34,8 @@ DMLEAF tXMPPParams[] = { /* *** Device.XMPP.Connection.{i}. *** */ DMOBJ tXMPPConnectionObj[] = { -/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextobj, leaf, linker, bbfdm_type*/ -{"Server", &DMREAD, NULL, NULL, NULL, browsexmpp_connection_serverInst, NULL, NULL, NULL, tXMPPConnectionServerParams, NULL, BBFDM_BOTH}, +/* OBJ, permission, addobj, delobj, checkobj, browseinstobj, forced_inform, notification, nextjsonobj, nextobj, leaf, linker, bbfdm_type*/ +{"Server", &DMREAD, NULL, NULL, NULL, browsexmpp_connection_serverInst, NULL, NULL, NULL, NULL, tXMPPConnectionServerParams, NULL, BBFDM_BOTH}, {0} };