Feature #10073: Update alias handling

This commit is contained in:
Amin Ben Romdhane 2023-08-02 21:06:04 +00:00
parent 309c2c1b2d
commit 58fab6623f
35 changed files with 340 additions and 892 deletions

View file

@ -81,6 +81,16 @@ int bbf_uci_delete_section_by_section(struct uci_section *s, char *option, char
return dmuci_delete_by_section(s, option, value);
}
int bbf_uci_get_section_name(char *sec_name, char **value)
{
return dmuci_get_section_name(sec_name, value);
}
int bbf_uci_set_section_name(char *sec_name, char *str, size_t size)
{
return dmuci_set_section_name(sec_name, str, size);
}
struct uci_section *bbf_uci_walk_section(char *package, char *type, void *arg1, void *arg2, int cmp, int (*filter)(struct uci_section *s, void *value), struct uci_section *prev_section, int walk)
{
return dmuci_walk_section(package, type, arg1, arg2, cmp, filter, prev_section, walk);
@ -178,6 +188,36 @@ void bbf_find_dmmap_section_by_option(char *dmmap_package, char *section_type, c
return get_dmmap_section_of_config_section_eq(dmmap_package, section_type, option_name, option_value, dmmap_section);
}
int bbf_get_alias(struct dmctx *ctx, struct uci_section *s, char *option_name, char *instance, char **value)
{
if (!ctx || !s || !option_name || !instance || !value)
return -1;
dmuci_get_value_by_section_string(s, option_name, value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
}
int bbf_set_alias(struct dmctx *ctx, struct uci_section *s, char *option_name, char *instance, char *value)
{
if (!ctx || !s || !option_name || !instance || !value)
return -1;
switch (ctx->setaction) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section(s, option_name, value);
break;
}
return 0;
}
__attribute__ ((deprecated)) int bbf_validate_string(char *value, int min_length, int max_length, char *enumeration[], char *pattern[])
{
struct dmctx ctx = {0};

View file

@ -218,11 +218,11 @@ typedef struct dmnode {
} DMNODE;
enum operate_ret_status {
CMD_SUCCESS,
CMD_INVALID_ARGUMENTS,
CMD_FAIL,
CMD_NOT_FOUND,
__STATUS_MAX,
CMD_SUCCESS __attribute__ ((deprecated)),
CMD_INVALID_ARGUMENTS __attribute__ ((deprecated)),
CMD_FAIL __attribute__ ((deprecated)),
CMD_NOT_FOUND __attribute__ ((deprecated)),
__STATUS_MAX __attribute__ ((deprecated)),
};
typedef struct {

View file

@ -281,6 +281,8 @@ int bbfdm_validate_unsignedLong_list(struct dmctx *ctx, char *value, int min_ite
int bbfdm_validate_long_list(struct dmctx *ctx, char *value, int min_item, int max_item, int max_size, struct range_args r_args[], int r_args_size);
int bbfdm_validate_string_list(struct dmctx *ctx, char *value, int min_item, int max_item, int max_size, int min, int max, char *enumeration[], char *pattern[]);
int bbfdm_validate_hexBinary_list(struct dmctx *ctx, char *value, int min_item, int max_item, int max_size, struct range_args r_args[], int r_args_size);
int bbf_get_alias(struct dmctx *ctx, struct uci_section *s, char *option_name, char *instance, char **value);
int bbf_set_alias(struct dmctx *ctx, struct uci_section *s, char *option_name, char *instance, char *value);
char *base64_decode(const char *src);
void string_to_mac(const char *str, size_t str_len, char *out, size_t out_len);
bool folder_exists(const char *path);

View file

@ -580,9 +580,6 @@ int dmuci_rename_section(char *package, char *section, char *value)
{
struct uci_ptr ptr = {0};
if (special_char_exits(value))
return -1;
if (dmuci_lookup_ptr(uci_ctx, &ptr, package, section, NULL, value))
return -1;
@ -778,9 +775,6 @@ int dmuci_rename_section_by_section(struct uci_section *s, char *value)
{
struct uci_ptr up = {0};
if (special_char_exits(value))
return -1;
if (dmuci_lookup_ptr_by_section(uci_ctx, &up, s, NULL, value) == -1)
return -1;
@ -935,3 +929,45 @@ bool dmuci_string_to_boolean(char *value)
return false;
}
int dmuci_get_section_name(char *sec_name, char **value)
{
if (!sec_name)
return -1;
int len = DM_STRLEN(sec_name);
if (len == 0)
return 0;
if (len > 2 && sec_name[0] == '4' && sec_name[1] == '0') {
char res[256] = {0};
convert_hex_to_string(sec_name + 2, res, sizeof(res));
*value = dmstrdup(res);
} else {
*value = dmstrdup(sec_name);
}
return 0;
}
int dmuci_set_section_name(char *sec_name, char *str, size_t size)
{
if (!sec_name || !str || size == 0)
return -1;
if (special_char_exits(sec_name)) {
if (size < 2)
return -1;
// section_name in hex should start with "40" as a prefix to indicate that the section name will be encoded
str[0] = '4';
str[1] = '0';
convert_string_to_hex(sec_name, str + 2, size - 2);
} else {
snprintf(str, size, "%s", sec_name);
}
return 0;
}

View file

@ -390,6 +390,8 @@ int db_get_value_string(char *package, char *section, char *option, char **value
int dmuci_get_option_value_string_varstate(char *package, char *section, char *option, char **value);
int dmuci_set_value_varstate(char *package, char *section, char *option, char *value);
int dmuci_get_section_name(char *sec_name, char **value);
int dmuci_set_section_name(char *sec_name, char *str, size_t size);
bool dmuci_string_to_boolean(char *value);
#endif

View file

@ -289,6 +289,34 @@ int bbf_uci_set_value_by_section(struct uci_section *s, char *option, char *valu
**************************************************************************/
int bbf_uci_delete_section_by_section(struct uci_section *s, char *option, char *value);
/*********************************************************************//**
**
** bbf_uci_get_section_name
**
** This API is used to get the section name either as a hexbin value if it contains special characters, or the same name as defined
**
** \param sec_name - section name
** \param value - pointer to where the value will be stored
**
** \return 0 if the operation is successful, -1 otherwise
**
**************************************************************************/
int bbf_uci_get_section_name(char *sec_name, char **value);
/*********************************************************************//**
**
** bbf_uci_set_section_name
**
** This API is used to set the section name either as a hexbin value if it contains special characters, or the same name as defined
**
** \param sec_name - section name
** \param value - pointer to where the value will be stored
**
** \return 0 if the operation is successful, -1 otherwise
**
**************************************************************************/
int bbf_uci_set_section_name(char *sec_name, char *str, size_t size);
struct uci_section *bbf_uci_walk_section(char *package, char *type, void *arg1, void *arg2, int cmp, int (*filter)(struct uci_section *s, void *value), struct uci_section *prev_section, int walk);
@ -522,6 +550,40 @@ void bbf_find_dmmap_section(char *dmmap_package, char *section_type, char *secti
**************************************************************************/
void bbf_find_dmmap_section_by_option(char *dmmap_package, char *section_type, char *option_name, char *option_value, struct uci_section **dmmap_section);
/*********************************************************************//**
**
** bbf_get_alias
**
** This API is used to get the Alias parameter value based on s and option_name
**
** \param ctx - bbf context
** \param s - uci section from where will get Alias value
** \param option_name - option name
** \param instance - instance value
** \param value - pointer to where the value will be stored
**
** \return 0 if operation is successful, -1 otherwise
**
**************************************************************************/
int bbf_get_alias(struct dmctx *ctx, struct uci_section *s, char *option_name, char *instance, char **value);
/*********************************************************************//**
**
** bbf_set_alias
**
** This API is used to set the Alias parameter value
**
** \param ctx - bbf context
** \param s - uci section to where will save Alias value
** \param option_name - option name
** \param instance - instance value
** \param value - the value to be set
**
** \return 0 if operation is successful, -1 otherwise
**
**************************************************************************/
int bbf_set_alias(struct dmctx *ctx, struct uci_section *s, char *option_name, char *instance, char *value);
/*********************************************************************//**
**
** bbfdm_validate_string
@ -751,6 +813,18 @@ int bbfdm_validate_long_list(struct dmctx *ctx, char *value, int min_item, int m
**************************************************************************/
int bbfdm_validate_hexBinary_list(struct dmctx *ctx, char *value, int min_item, int max_item, int max_size, struct range_args r_args[], int r_args_size);
/*********************************************************************//**
**
** bbfdm_set_fault_message
**
** This API is used to define fault message
**
** \param ctx - bbf context
** \param format - message to define
**
**************************************************************************/
void bbfdm_set_fault_message(struct dmctx *ctx, const char *format, ...);
/**********************
*

View file

@ -251,9 +251,12 @@ static void resolve_all_symbols(struct dmctx *ctx, void *data, char *instance, c
for (pch = strtok_r(buf_key, ".", &pchr); pch != NULL; pch = strtok_r(NULL, ".", &pchr)) {
if (strcmp(pch, "@Name") == 0)
pos += snprintf(&new_key[pos], key_len - pos, "%s.", data ? section_name((struct uci_section *)data) : "");
else if (strcmp(pch, "@Value") == 0)
if (strcmp(pch, "@Name") == 0) {
char *sec_name = NULL;
dmuci_get_section_name(section_name((struct uci_section *)data), &sec_name);
pos += snprintf(&new_key[pos], key_len - pos, "%s.", sec_name ? sec_name : "");
} else if (strcmp(pch, "@Value") == 0)
pos += snprintf(&new_key[pos], key_len - pos, "%s.", value);
else if (strcmp(pch, (json_version == JSON_VERSION_1) ? "@index" : "@i-1") == 0)
pos += snprintf(&new_key[pos], key_len - pos, "%ld.", instance ? DM_STRTOL(instance)-1 : 1);
@ -672,7 +675,7 @@ static char *uci_get_value(json_object *mapping_obj, int json_version, char *ref
if (data && file && type && opt_temp) {
if (strcmp(opt_temp, "@Name") == 0) {
dmasprintf(&value, "%s", section_name((struct uci_section *)data));
dmuci_get_section_name(section_name((struct uci_section *)data), &value);
} else {
char uci_type[32] = {0};
@ -813,7 +816,7 @@ static char *uci_v1_get_value(json_object *mapping_obj, char *refparam, struct d
if (key) {
if (strcmp(json_object_get_string(key), "@Name") == 0) {
dmasprintf(&value, "%s", section_name((struct uci_section *)data));
dmuci_get_section_name(section_name((struct uci_section *)data), &value);
} else {
dmuci_get_value_by_section_string((struct uci_section *)data, json_object_get_string(key), &value);
}
@ -1315,18 +1318,22 @@ static int uci_set_value(json_object *mapping_obj, int json_version, char *refpa
if (strcmp(opt_temp, "@Name") == 0) {
struct uci_section *dmmap_section = NULL;
char sec_name[256] = {0};
char buf[64] = {0};
if (dmuci_set_section_name(value, sec_name, sizeof(sec_name)))
return -1;
snprintf(buf, sizeof(buf), "dmmap_%s", json_object_get_string(file));
get_dmmap_section_of_config_section(buf, json_object_get_string(type), section_name((struct uci_section *)data), &dmmap_section);
if (!dmmap_section)
return -1;
if (dmuci_set_value_by_section(dmmap_section, "section_name", value))
if (dmuci_set_value_by_section(dmmap_section, "section_name", sec_name))
return -1;
if ((res = dmuci_rename_section_by_section((struct uci_section *)data, value)))
res = dmuci_rename_section(json_object_get_string(file), uci_type, value);
if ((res = dmuci_rename_section_by_section((struct uci_section *)data, sec_name)))
res = dmuci_rename_section(json_object_get_string(file), uci_type, sec_name);
return res;
}

View file

@ -368,24 +368,12 @@ static int get_atm_status(char *refparam, struct dmctx *ctx, void *data, char *i
/*#Device.ATM.Link.{i}.Alias!UCI:dmmap_dsl/atm-device,@i-1/atmlinkalias*/
static int get_atm_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string((((struct atm_args *)data)->sections)->dmmap_section, "atmlinkalias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, (((struct atm_args *)data)->sections)->dmmap_section, "atmlinkalias", instance, value);
}
static int set_atm_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
return 0;
case VALUESET:
dmuci_set_value_by_section((((struct atm_args *)data)->sections)->dmmap_section, "atmlinkalias", value);
return 0;
}
return 0;
return bbf_set_alias(ctx, (((struct atm_args *)data)->sections)->dmmap_section, "atmlinkalias", instance, value);
}
/**********************************************************************************************************************************

View file

@ -1660,24 +1660,12 @@ static int get_BridgingBridge_Status(char *refparam, struct dmctx *ctx, void *da
/*#Device.Bridging.Bridge.{i}.Alias!UCI:dmmap_bridge/device,@i-1/bridge_alias*/
static int get_BridgingBridge_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct bridge_args *)data)->bridge_dmmap_sec, "bridge_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct bridge_args *)data)->bridge_dmmap_sec, "bridge_alias", instance, value);
}
static int set_BridgingBridge_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
return 0;
case VALUESET:
dmuci_set_value_by_section(((struct bridge_args *)data)->bridge_dmmap_sec, "bridge_alias", value);
return 0;
}
return 0;
return bbf_set_alias(ctx, ((struct bridge_args *)data)->bridge_dmmap_sec, "bridge_alias", instance, value);
}
static int get_BridgingBridge_Standard(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
@ -1945,32 +1933,12 @@ static int get_BridgingBridgePort_Status(char *refparam, struct dmctx *ctx, void
static int get_BridgingBridgePort_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
struct bridge_port_args *args = (struct bridge_port_args *)data;
dmuci_get_value_by_section_string(args->bridge_port_dmmap_sec, "bridge_port_alias", value);
if ((*value)[0] == '\0') {
if (!args->is_management_port)
dmuci_get_value_by_section_string(args->bridge_port_sec, "name", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
}
return 0;
return bbf_get_alias(ctx, ((struct bridge_port_args *)data)->bridge_port_dmmap_sec, "bridge_port_alias", instance, value);
}
static int set_BridgingBridgePort_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
struct bridge_port_args *args = (struct bridge_port_args *)data;
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
return 0;
case VALUESET:
dmuci_set_value_by_section(args->bridge_port_dmmap_sec, "bridge_port_alias", value);
return 0;
}
return 0;
return bbf_set_alias(ctx, ((struct bridge_port_args *)data)->bridge_port_dmmap_sec, "bridge_port_alias", instance, value);
}
static int get_BridgingBridgePort_Name(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
@ -2476,24 +2444,12 @@ static int set_BridgingBridgeVLAN_Enable(char *refparam, struct dmctx *ctx, void
static int get_BridgingBridgeVLAN_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct bridge_vlan_args *)data)->bridge_vlan_sec, "bridge_vlan_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct bridge_vlan_args *)data)->bridge_vlan_sec, "bridge_vlan_alias", instance, value);
}
static int set_BridgingBridgeVLAN_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
return 0;
case VALUESET:
dmuci_set_value_by_section(((struct bridge_vlan_args *)data)->bridge_vlan_sec, "bridge_vlan_alias", value);
return 0;
}
return 0;
return bbf_set_alias(ctx, ((struct bridge_vlan_args *)data)->bridge_vlan_sec, "bridge_vlan_alias", instance, value);
}
static int get_BridgingBridgeVLAN_Name(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
@ -2614,24 +2570,12 @@ static int set_BridgingBridgeVLANPort_Enable(char *refparam, struct dmctx *ctx,
static int get_BridgingBridgeVLANPort_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct bridge_vlanport_args *)data)->bridge_vlanport_dmmap_sec, "bridge_vlanport_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct bridge_vlanport_args *)data)->bridge_vlanport_dmmap_sec, "bridge_vlanport_alias", instance, value);
}
static int set_BridgingBridgeVLANPort_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section(((struct bridge_vlanport_args *)data)->bridge_vlanport_dmmap_sec, "bridge_vlanport_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, ((struct bridge_vlanport_args *)data)->bridge_vlanport_dmmap_sec, "bridge_vlanport_alias", instance, value);
}
static int get_BridgingBridgeVLANPort_VLAN(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
@ -2915,10 +2859,7 @@ static int get_BridgingBridgeProviderBridge_Status(char *refparam, struct dmctx
static int get_BridgingBridgeProviderBridge_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct provider_bridge_args *)data)->provider_bridge_sec, "provider_bridge_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct provider_bridge_args *)data)->provider_bridge_sec, "provider_bridge_alias", instance, value);
}
static int set_BridgingBridgeProviderBridge_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)

View file

@ -845,46 +845,22 @@ static int get_vcf_desc(char *refparam, struct dmctx *ctx, void *data, char *ins
static int get_vcf_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string((struct uci_section *)data, "vcf_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, (struct uci_section *)data, "vcf_alias", instance, value);
}
static int set_vcf_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
return 0;
case VALUESET:
dmuci_set_value_by_section((struct uci_section *)data, "vcf_alias", value);
return 0;
}
return 0;
return bbf_set_alias(ctx, (struct uci_section *)data, "vcf_alias", instance, value);
}
static int get_vlf_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct dmmap_dup *)data)->dmmap_section, "vlf_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "vlf_alias", instance, value);
}
static int set_vlf_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
return 0;
case VALUESET:
dmuci_set_value_by_section(((struct dmmap_dup *)data)->dmmap_section, "vlf_alias", value);
return 0;
}
return 0;
return bbf_set_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "vlf_alias", instance, value);
}
static int get_vlf_name(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)

View file

@ -1384,24 +1384,12 @@ static int get_DHCPv4ServerPool_Status(char *refparam, struct dmctx *ctx, void *
/*#Device.DHCPv4.Server.Pool.{i}.Alias!UCI:dmmap_dhcp/dhcp,@i-1/dhcp_alias*/
static int get_DHCPv4ServerPool_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string((((struct dhcp_args *)data)->sections)->dmmap_section, "dhcp_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, (((struct dhcp_args *)data)->sections)->dmmap_section, "dhcp_alias", instance, value);
}
static int set_DHCPv4ServerPool_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
return 0;
case VALUESET:
dmuci_set_value_by_section_bbfdm((((struct dhcp_args *)data)->sections)->dmmap_section, "dhcp_alias", value);
return 0;
}
return 0;
return bbf_set_alias(ctx, (((struct dhcp_args *)data)->sections)->dmmap_section, "dhcp_alias", instance, value);
}
static int get_DHCPv4ServerPool_Order(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
@ -1913,10 +1901,7 @@ static int set_DHCPv4ServerPoolStaticAddress_Enable(char *refparam, struct dmctx
/*#Device.DHCPv4.Server.Pool.{i}.StaticAddress.{i}.Alias!UCI:dmmap_dhcp/host,@i-1/dhcp_host_alias*/
static int get_DHCPv4ServerPoolStaticAddress_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string((((struct dhcp_host_args *)data)->host_sections)->dmmap_section, "dhcp_host_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, (((struct dhcp_host_args *)data)->host_sections)->dmmap_section, "dhcp_host_alias", instance, value);
}
static int set_DHCPv4ServerPoolStaticAddress_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
@ -2169,24 +2154,12 @@ static int set_DHCPv4Client_Enable(char *refparam, struct dmctx *ctx, void *data
static int get_DHCPv4Client_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct dhcp_client_args *)data)->dmmap_s, "bbf_dhcpv4client_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct dhcp_client_args *)data)->dmmap_s, "bbf_dhcpv4client_alias", instance, value);
}
static int set_DHCPv4Client_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section(((struct dhcp_client_args *)data)->dmmap_s, "bbf_dhcpv4client_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, ((struct dhcp_client_args *)data)->dmmap_s, "bbf_dhcpv4client_alias", instance, value);
}
static int get_DHCPv4Client_Interface(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
@ -2544,24 +2517,12 @@ static int set_DHCPv4ClientSentOption_Enable(char *refparam, struct dmctx *ctx,
static int get_DHCPv4ClientSentOption_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct dhcp_client_option_args *)data)->dmmap_sect, "bbf_dhcpv4_sentopt_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct dhcp_client_option_args *)data)->dmmap_sect, "bbf_dhcpv4_sentopt_alias", instance, value);
}
static int set_DHCPv4ClientSentOption_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section_bbfdm(((struct dhcp_client_option_args *)data)->dmmap_sect, "bbf_dhcpv4_sentopt_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, ((struct dhcp_client_option_args *)data)->dmmap_sect, "bbf_dhcpv4_sentopt_alias", instance, value);
}
static int get_DHCPv4ClientSentOption_Tag(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
@ -2755,24 +2716,12 @@ static int set_DHCPv4ClientReqOption_Enable(char *refparam, struct dmctx *ctx, v
static int get_DHCPv4ClientReqOption_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct dhcp_client_option_args *)data)->dmmap_sect, "bbf_dhcpv4_reqtopt_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct dhcp_client_option_args *)data)->dmmap_sect, "bbf_dhcpv4_reqtopt_alias", instance, value);
}
static int set_DHCPv4ClientReqOption_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section_bbfdm(((struct dhcp_client_option_args *)data)->dmmap_sect, "bbf_dhcpv4_reqtopt_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, ((struct dhcp_client_option_args *)data)->dmmap_sect, "bbf_dhcpv4_reqtopt_alias", instance, value);
}
static int get_DHCPv4ClientReqOption_Tag(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
@ -2917,24 +2866,12 @@ static int set_DHCPv4ServerPoolOption_Enable(char *refparam, struct dmctx *ctx,
static int get_DHCPv4ServerPoolOption_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct dhcp_client_option_args *)data)->dmmap_sect, "bbf_dhcpv4_servpool_option_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct dhcp_client_option_args *)data)->dmmap_sect, "bbf_dhcpv4_servpool_option_alias", instance, value);
}
static int set_DHCPv4ServerPoolOption_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section_bbfdm(((struct dhcp_client_option_args *)data)->dmmap_sect, "bbf_dhcpv4_servpool_option_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, ((struct dhcp_client_option_args *)data)->dmmap_sect, "bbf_dhcpv4_servpool_option_alias", instance, value);
}
static int get_DHCPv4ServerPoolOption_Tag(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
@ -3135,24 +3072,12 @@ static int get_DHCPv4RelayForwarding_Status(char *refparam, struct dmctx *ctx, v
static int get_DHCPv4RelayForwarding_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct dhcp_client_args *)data)->dmmap_s, "bbf_dhcpv4relay_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct dhcp_client_args *)data)->dmmap_s, "bbf_dhcpv4relay_alias", instance, value);
}
static int set_DHCPv4RelayForwarding_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section(((struct dhcp_client_args *)data)->dmmap_s, "bbf_dhcpv4relay_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, ((struct dhcp_client_args *)data)->dmmap_s, "bbf_dhcpv4relay_alias", instance, value);
}
static int get_DHCPv4RelayForwarding_Interface(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)

View file

@ -503,24 +503,12 @@ static int set_DHCPv6Client_Enable(char *refparam, struct dmctx *ctx, void *data
static int get_DHCPv6Client_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct dhcpv6_client_args *)data)->dmmap_s, "bbf_dhcpv6client_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct dhcpv6_client_args *)data)->dmmap_s, "bbf_dhcpv6client_alias", instance, value);
}
static int set_DHCPv6Client_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section(((struct dhcpv6_client_args *)data)->dmmap_s, "bbf_dhcpv6client_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, ((struct dhcpv6_client_args *)data)->dmmap_s, "bbf_dhcpv6client_alias", instance, value);
}
static int get_DHCPv6Client_Interface(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
@ -816,24 +804,12 @@ static int get_DHCPv6ServerPool_Status(char *refparam, struct dmctx *ctx, void *
/*#Device.DHCPv6.Server.Pool.{i}.Alias!UCI:dmmap_dhcpv6/dhcp,@i-1/dhcpv6_serv_pool_alias*/
static int get_DHCPv6ServerPool_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string((((struct dhcpv6_args *)data)->dhcp_sections)->dmmap_section, "dhcpv6_serv_pool_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, (((struct dhcpv6_args *)data)->dhcp_sections)->dmmap_section, "dhcpv6_serv_pool_alias", instance, value);
}
static int set_DHCPv6ServerPool_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
return 0;
case VALUESET:
dmuci_set_value_by_section_bbfdm((((struct dhcpv6_args *)data)->dhcp_sections)->dmmap_section, "dhcpv6_serv_pool_alias", value);
return 0;
}
return 0;
return bbf_set_alias(ctx, (((struct dhcpv6_args *)data)->dhcp_sections)->dmmap_section, "dhcpv6_serv_pool_alias", instance, value);
}
static int get_DHCPv6ServerPool_Order(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
@ -1196,25 +1172,12 @@ static int set_DHCPv6ServerPoolOption_Enable(char *refparam, struct dmctx *ctx,
static int get_DHCPv6ServerPoolOption_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct dhcpv6_client_option_args *)data)->dmmap_sect, "bbf_dhcpv6_servpool_option_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct dhcpv6_client_option_args *)data)->dmmap_sect, "bbf_dhcpv6_servpool_option_alias", instance, value);
}
static int set_DHCPv6ServerPoolOption_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section_bbfdm(((struct dhcpv6_client_option_args *)data)->dmmap_sect, "bbf_dhcpv6_servpool_option_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, ((struct dhcpv6_client_option_args *)data)->dmmap_sect, "bbf_dhcpv6_servpool_option_alias", instance, value);
}
static int get_DHCPv6ServerPoolOption_Tag(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)

View file

@ -257,10 +257,7 @@ static int get_server_status(char *refparam, struct dmctx *ctx, void *data, char
static int get_server_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string((struct uci_section *)data, "dns_server_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, (struct uci_section *)data, "dns_server_alias", instance, value);
}
static int get_server_dns_server(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
@ -333,10 +330,7 @@ static int get_forwarding_status(char *refparam, struct dmctx *ctx, void *data,
static int get_forwarding_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string((struct uci_section *)data, "dns_server_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, (struct uci_section *)data, "dns_server_alias", instance, value);
}
static int get_forwarding_dns_server(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
@ -482,16 +476,7 @@ static int set_dns_enable(char *refparam, struct dmctx *ctx, void *data, char *i
static int set_server_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section((struct uci_section *)data, "dns_server_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, (struct uci_section *)data, "dns_server_alias", instance, value);
}
static int set_dns_server(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
@ -603,16 +588,7 @@ static int set_relay_enable(char *refparam, struct dmctx *ctx, void *data, char
static int set_forwarding_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section((struct uci_section *)data, "dns_server_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, (struct uci_section *)data, "dns_server_alias", instance, value);
}
static int set_nslookupdiagnostics_diagnostics_state(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)

View file

@ -281,24 +281,12 @@ static int get_DSLLine_Status(char *refparam, struct dmctx *ctx, void *data, cha
static int get_DSLLine_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct dsl_line_args *)data)->line_sec, "dsl_line_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct dsl_line_args *)data)->line_sec, "dsl_line_alias", instance, value);
}
static int set_DSLLine_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section(((struct dsl_line_args *)data)->line_sec, "dsl_line_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, ((struct dsl_line_args *)data)->line_sec, "dsl_line_alias", instance, value);
}
static int get_DSLLine_Name(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
@ -973,24 +961,13 @@ static int get_DSLChannel_Status(char *refparam, struct dmctx *ctx, void *data,
static int get_DSLChannel_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct dsl_channel_args *)data)->channel_sec, "dsl_channel_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct dsl_channel_args *)data)->channel_sec, "dsl_channel_alias", instance, value);
}
static int set_DSLChannel_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section(((struct dsl_channel_args *)data)->channel_sec, "dsl_channel_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, ((struct dsl_channel_args *)data)->channel_sec, "dsl_channel_alias", instance, value);
}
static int get_DSLChannel_Name(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)

View file

@ -503,24 +503,12 @@ static int get_DynamicDNSClient_Status(char *refparam, struct dmctx *ctx, void *
/*#Device.DynamicDNS.Client.{i}.Alias!UCI:dmmap_ddns/service,@i-1/clientalias*/
static int get_DynamicDNSClient_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct dmmap_dup *)data)->dmmap_section, "client_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "client_alias", instance, value);
}
static int set_DynamicDNSClient_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section(((struct dmmap_dup *)data)->dmmap_section, "client_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "client_alias", instance, value);
}
static int get_DynamicDNSClient_LastError(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
@ -875,24 +863,12 @@ static int set_DynamicDNSServer_Name(char *refparam, struct dmctx *ctx, void *da
static int get_DynamicDNSServer_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string((struct uci_section *)data, "server_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, (struct uci_section *)data, "server_alias", instance, value);
}
static int set_DynamicDNSServer_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section((struct uci_section *)data, "server_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, (struct uci_section *)data, "server_alias", instance, value);
}
static int get_DynamicDNSServer_ServiceName(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)

View file

@ -852,24 +852,12 @@ static int get_EthernetLink_Status(char *refparam, struct dmctx *ctx, void *data
static int get_EthernetLink_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string((struct uci_section *)data, "link_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, (struct uci_section *)data, "link_alias", instance, value);
}
static int set_EthernetLink_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section((struct uci_section *)data, "link_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, (struct uci_section *)data, "link_alias", instance, value);
}
static int get_EthernetLink_Name(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
@ -1223,24 +1211,12 @@ static int get_EthernetVLANTermination_Status(char *refparam, struct dmctx *ctx,
/*#Device.Ethernet.VLANTermination.{i}.Alias!UCI:dmmap_network/device,@i-1/vlan_term_alias*/
static int get_EthernetVLANTermination_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct dmmap_dup *)data)->dmmap_section, "vlan_term_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "vlan_term_alias", instance, value);
}
static int set_EthernetVLANTermination_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
return 0;
case VALUESET:
dmuci_set_value_by_section(((struct dmmap_dup *)data)->dmmap_section, "vlan_term_alias", value);
return 0;
}
return 0;
return bbf_set_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "vlan_term_alias", instance, value);
}
static int get_EthernetVLANTermination_Name(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
@ -1581,24 +1557,12 @@ static int get_EthernetRMONStats_Status(char *refparam, struct dmctx *ctx, void
/*#Device.Ethernet.RMONStats.{i}.Alias!UCI:dmmap_eth_rmon/ethport,@i-1/eth_rmon_alias*/
static int get_EthernetRMONStats_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string((((struct eth_rmon_args *)data)->sections)->dmmap_section, "eth_rmon_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, (((struct eth_rmon_args *)data)->sections)->dmmap_section, "eth_rmon_alias", instance, value);
}
static int set_EthernetRMONStats_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section((((struct eth_rmon_args *)data)->sections)->dmmap_section, "eth_rmon_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, (((struct eth_rmon_args *)data)->sections)->dmmap_section, "eth_rmon_alias", instance, value);
}
/*#Device.Ethernet.RMONStats.{i}.Name!UCI:ports/ethport,@i-1/ifname*/

View file

@ -170,24 +170,12 @@ static int get_FASTLine_Status(char *refparam, struct dmctx *ctx, void *data, ch
static int get_FASTLine_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct fast_line_args *)data)->line_sec, "fast_line_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct fast_line_args *)data)->line_sec, "fast_line_alias", instance, value);
}
static int set_FASTLine_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section(((struct fast_line_args *)data)->line_sec, "fast_line_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, ((struct fast_line_args *)data)->line_sec, "fast_line_alias", instance, value);
}
static int get_FASTLine_Name(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)

View file

@ -476,10 +476,7 @@ static int get_firewall_chain_number_of_entries(char *refparam, struct dmctx *ct
static int get_level_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string((struct uci_section *)data, "firewall_level_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, (struct uci_section *)data, "firewall_level_alias", instance, value);
}
static int get_level_name(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
@ -562,10 +559,7 @@ static int get_chain_enable(char *refparam, struct dmctx *ctx, void *data, char
static int get_chain_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string((struct uci_section *)data, "firewall_chain_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, (struct uci_section *)data, "firewall_chain_alias", instance, value);
}
static int get_chain_name(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
@ -1210,16 +1204,7 @@ static int set_firewall_advanced_level(char *refparam, struct dmctx *ctx, void *
static int set_level_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section_bbfdm((struct uci_section *)data, "firewall_level_alias", value);
return 0;
}
return 0;
return bbf_set_alias(ctx, (struct uci_section *)data, "firewall_level_alias", instance, value);
}
static int set_level_name(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
@ -1345,16 +1330,7 @@ static int set_chain_enable(char *refparam, struct dmctx *ctx, void *data, char
static int set_chain_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section_bbfdm((struct uci_section *)data, "firewall_chain_alias", value);
return 0;
}
return 0;
return bbf_set_alias(ctx, (struct uci_section *)data, "firewall_chain_alias", instance, value);
}
static int set_chain_name(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
@ -1429,16 +1405,7 @@ static int set_rule_order(char *refparam, struct dmctx *ctx, void *data, char *i
static int set_rule_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section(((struct rule_sec *)data)->dmmap_section, "firewall_chain_rule_alias", value);
return 0;
}
return 0;
return bbf_set_alias(ctx, ((struct rule_sec *)data)->dmmap_section, "firewall_chain_rule_alias", instance, value);
}
static int set_rule_description(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)

View file

@ -193,24 +193,12 @@ static int get_GRE_TunnelNumberOfEntries(char *refparam, struct dmctx *ctx, void
/*#Device.GRE.Tunnel.{i}.Alias!UCI:dmmap_network/interface,@i-1/gretunnel_alias*/
static int get_GRETunnel_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct dmmap_dup *)data)->dmmap_section, "gretunnel_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "gretunnel_alias", instance, value);
}
static int set_GRETunnel_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section(((struct dmmap_dup *)data)->dmmap_section, "gretunnel_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "gretunnel_alias", instance, value);
}
static int get_GRETunnel_KeepAliveThreshold(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
@ -285,24 +273,12 @@ static int get_GRETunnelStats_ErrorsReceived(char *refparam, struct dmctx *ctx,
/*#Device.GRE.Tunnel.{i}.Interface.{i}.Alias!UCI:dmmap_network/interface,@i-1/greiface_alias*/
static int get_GRETunnelInterface_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct dmmap_dup *)data)->dmmap_section, "greiface_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "greiface_alias", instance, value);
}
static int set_GRETunnelInterface_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section(((struct dmmap_dup *)data)->dmmap_section, "greiface_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "greiface_alias", instance, value);
}
static int get_GRETunnelInterface_Name(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)

View file

@ -399,24 +399,12 @@ static int get_HostsHostWANStats_PacketsReceived(char *refparam, struct dmctx *c
static int get_HostsAccessControl_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct dmmap_dup *)data)->dmmap_section, "access_control_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "access_control_alias", instance, value);
}
static int set_HostsAccessControl_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section(((struct dmmap_dup *)data)->dmmap_section, "access_control_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "access_control_alias", instance, value);
}
static int get_HostsAccessControl_PhysAddress(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
@ -511,24 +499,12 @@ static int get_HostsAccessControl_ScheduleNumberOfEntries(char *refparam, struct
static int get_HostsAccessControlSchedule_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct dmmap_dup *)data)->dmmap_section, "schedule_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "schedule_alias", instance, value);
}
static int set_HostsAccessControlSchedule_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section(((struct dmmap_dup *)data)->dmmap_section, "schedule_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "schedule_alias", instance, value);
}
static int get_HostsAccessControlSchedule_Enable(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)

View file

@ -1603,24 +1603,12 @@ static int get_IPInterfaceIPv4Address_Status(char *refparam, struct dmctx *ctx,
/*#Device.IP.Interface.{i}.IPv4Address.{i}.Alias!UCI:dmmap_network_ipv4/intf_ipv4,@i-1/ipv4_alias*/
static int get_IPInterfaceIPv4Address_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct intf_ip_args *)data)->dmmap_sec, "ipv4_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct intf_ip_args *)data)->dmmap_sec, "ipv4_alias", instance, value);
}
static int set_IPInterfaceIPv4Address_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section(((struct intf_ip_args *)data)->dmmap_sec, "ipv4_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, ((struct intf_ip_args *)data)->dmmap_sec, "ipv4_alias", instance, value);
}
static int get_IPInterfaceIPv4Address_IPAddress(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
@ -1784,24 +1772,12 @@ static int get_IPInterfaceIPv6Address_IPAddressStatus(char *refparam, struct dmc
/*#Device.IP.Interface.{i}.IPv6Address.{i}.Alias!UCI:dmmap_network_ipv6/intf_ipv6,@i-1/ipv6_alias*/
static int get_IPInterfaceIPv6Address_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct intf_ip_args *)data)->dmmap_sec, "ipv6_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct intf_ip_args *)data)->dmmap_sec, "ipv6_alias", instance, value);
}
static int set_IPInterfaceIPv6Address_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section(((struct intf_ip_args *)data)->dmmap_sec, "ipv6_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, ((struct intf_ip_args *)data)->dmmap_sec, "ipv6_alias", instance, value);
}
/*#Device.IP.Interface.{i}.IPv6Address.{i}.IPAddress!UCI:network/interface,@i-1/ip6addr*/
@ -2013,24 +1989,12 @@ static int get_IPInterfaceIPv6Prefix_PrefixStatus(char *refparam, struct dmctx *
/*#Device.IP.Interface.{i}.IPv6Prefix.{i}.Alias!UCI:dmmap_network_ipv6_prefix/intf_ipv6_prefix,@i-1/ipv6_prefix_alias*/
static int get_IPInterfaceIPv6Prefix_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct intf_ip_args *)data)->dmmap_sec, "ipv6_prefix_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct intf_ip_args *)data)->dmmap_sec, "ipv6_prefix_alias", instance, value);
}
static int set_IPInterfaceIPv6Prefix_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section(((struct intf_ip_args *)data)->dmmap_sec, "ipv6_prefix_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, ((struct intf_ip_args *)data)->dmmap_sec, "ipv6_prefix_alias", instance, value);
}
/*#Device.IP.Interface.{i}.IPv6Prefix.{i}.Prefix!UCI:network/interface,@i-1/ip6prefix*/

View file

@ -102,24 +102,12 @@ static int get_MQTT_BrokerNumberOfEntries(char *refparam, struct dmctx *ctx, voi
static int get_MQTTBroker_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct dmmap_dup *)data)->dmmap_section, "listener_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "listener_alias", instance, value);
}
static int set_MQTTBroker_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section(((struct dmmap_dup *)data)->dmmap_section, "listener_alias", value);
return 0;
}
return 0;
return bbf_set_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "listener_alias", instance, value);
}
static int get_MQTTBroker_Enable(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)

View file

@ -217,24 +217,12 @@ static int get_nat_interface_setting_status(char *refparam, struct dmctx *ctx, v
/*#Device.NAT.InterfaceSetting.{i}.Alias!UCI:dmmap_firewall/zone,@i-1/interface_setting_alias*/
static int get_nat_interface_setting_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct dmmap_dup *)data)->dmmap_section, "interface_setting_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "interface_setting_alias", instance, value);
}
static int set_nat_interface_setting_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
return 0;
case VALUESET:
dmuci_set_value_by_section(((struct dmmap_dup *)data)->dmmap_section, "interface_setting_alias", value);
return 0;
}
return 0;
return bbf_set_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "interface_setting_alias", instance, value);
}
static int get_nat_interface_setting_interface(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
@ -325,24 +313,12 @@ static int get_nat_port_mapping_status(char *refparam, struct dmctx *ctx, void *
/*#Device.NAT.PortMapping.{i}.Alias!UCI:dmmap_firewall/redirect,@i-1/port_mapping_alias*/
static int get_nat_port_mapping_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct dmmap_dup *)data)->dmmap_section, "port_mapping_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "port_mapping_alias", instance, value);
}
static int set_nat_port_mapping_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
return 0;
case VALUESET:
dmuci_set_value_by_section(((struct dmmap_dup *)data)->dmmap_section, "port_mapping_alias", value);
return 0;
}
return 0;
return bbf_set_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "port_mapping_alias", instance, value);
}
static int get_nat_port_mapping_interface(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)

View file

@ -233,24 +233,12 @@ static int get_PPPInterface_Status(char *refparam, struct dmctx *ctx, void *data
/*#Device.PPP.Interface.{i}.Alias!UCI:dmmap_network/interface,@i-1/ppp_int_alias*/
static int get_ppp_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct ppp_args *)data)->dmmap_s, "ppp_int_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct ppp_args *)data)->dmmap_s, "ppp_int_alias", instance, value);
}
static int set_ppp_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
return 0;
case VALUESET:
dmuci_set_value_by_section(((struct ppp_args *)data)->dmmap_s, "ppp_int_alias", value);
return 0;
}
return 0;
return bbf_set_alias(ctx, ((struct ppp_args *)data)->dmmap_s, "ppp_int_alias", instance, value);
}
/*#Device.PPP.Interface.{i}.LastChange!UBUS:network.interface/status/interface,@Name/uptime*/

View file

@ -155,24 +155,12 @@ static int get_ptm_status(char *refparam, struct dmctx *ctx, void *data, char *i
/*#Device.PTM.Link.{i}.Alias!UCI:dmmap_dsl/ptm-device,@i-1/ptmlinkalias*/
static int get_ptm_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string((((struct ptm_args *)data)->sections)->dmmap_section, "ptmlinkalias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, (((struct ptm_args *)data)->sections)->dmmap_section, "ptmlinkalias", instance, value);
}
static int set_ptm_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
return 0;
case VALUESET:
dmuci_set_value_by_section((((struct ptm_args *)data)->sections)->dmmap_section, "ptmlinkalias", value);
return 0;
}
return 0;
return bbf_set_alias(ctx, (((struct ptm_args *)data)->sections)->dmmap_section, "ptmlinkalias", instance, value);
}
/*#Device.PTM.Link.{i}.Name!UCI:dsl/ptm-device,@i-1/name*/

View file

@ -666,24 +666,12 @@ static int set_QoSClassification_SourceMask(char *refparam, struct dmctx *ctx, v
static int get_QoSClassification_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct dmmap_dup *)data)->dmmap_section, "classify_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "classify_alias", instance, value);
}
static int set_QoSClassification_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section_bbfdm(((struct dmmap_dup *)data)->dmmap_section, "classify_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "classify_alias", instance, value);
}
static int get_QoSClassification_Interface(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
@ -1347,24 +1335,12 @@ static int get_QoSPolicer_Status(char *refparam, struct dmctx *ctx, void *data,
static int get_QoSPolicer_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct dmmap_dup *)data)->dmmap_section, "policeralias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "policeralias", instance, value);
}
static int set_QoSPolicer_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section_bbfdm(((struct dmmap_dup *)data)->dmmap_section, "policeralias", value);
break;
}
return 0;
return bbf_set_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "policeralias", instance, value);
}
static int get_QoSPolicer_CommittedRate(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
@ -1536,24 +1512,12 @@ static int get_QoSQueue_Status(char *refparam, struct dmctx *ctx, void *data, ch
static int get_QoSQueue_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct dmmap_dup *)data)->dmmap_section, "queuealias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "queuealias", instance, value);
}
static int set_QoSQueue_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section_bbfdm(((struct dmmap_dup *)data)->dmmap_section, "queuealias", value);
break;
}
return 0;
return bbf_set_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "queuealias", instance, value);
}
static int get_QoSQueue_TrafficClasses(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
@ -1720,24 +1684,12 @@ static int get_QoSQueueStats_Status(char *refparam, struct dmctx *ctx, void *dat
static int get_QoSQueueStats_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string((struct uci_section *)data, "alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, (struct uci_section *)data, "alias", instance, value);
}
static int set_QoSQueueStats_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section((struct uci_section *)data, "alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, (struct uci_section *)data, "alias", instance, value);
}
static int get_QoSQueueStats_Queue(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
@ -1883,24 +1835,12 @@ static int get_QoSShaper_Status(char *refparam, struct dmctx *ctx, void *data, c
static int get_QoSShaper_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct dmmap_dup *)data)->dmmap_section, "shaperalias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "shaperalias", instance, value);
}
static int set_QoSShaper_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section_bbfdm(((struct dmmap_dup *)data)->dmmap_section, "shaperalias", value);
break;
}
return 0;
return bbf_set_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "shaperalias", instance, value);
}
static int get_QoSShaper_Interface(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)

View file

@ -256,24 +256,12 @@ static int get_RouterAdvertisementInterfaceSetting_Status(char *refparam, struct
static int get_RouterAdvertisementInterfaceSetting_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct dmmap_dup *)data)->dmmap_section, "radv_intf_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "radv_intf_alias", instance, value);
}
static int set_RouterAdvertisementInterfaceSetting_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section_bbfdm(((struct dmmap_dup *)data)->dmmap_section, "radv_intf_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "radv_intf_alias", instance, value);
}
/*#Device.RouterAdvertisement.InterfaceSetting.{i}.Interface!UCI:dhcp/dhcp,@i-1/interface*/
@ -616,24 +604,12 @@ static int set_RouterAdvertisementInterfaceSettingOption_Enable(char *refparam,
static int get_RouterAdvertisementInterfaceSettingOption_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct radv_option_args *)data)->dmmap_sect, "radv_option_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct radv_option_args *)data)->dmmap_sect, "radv_option_alias", instance, value);
}
static int set_RouterAdvertisementInterfaceSettingOption_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section_bbfdm(((struct radv_option_args *)data)->dmmap_sect, "radv_option_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, ((struct radv_option_args *)data)->dmmap_sect, "radv_option_alias", instance, value);
}
static int get_RouterAdvertisementInterfaceSettingOption_Tag(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)

View file

@ -1065,24 +1065,12 @@ static int get_RoutingRouteInformationInterfaceSetting_RouteLifetime(char *refpa
**************************************************************/
static int get_RoutingRouter_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string((struct uci_section *)data, "router_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, (struct uci_section *)data, "router_alias", instance, value);
}
static int set_RoutingRouter_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
return 0;
case VALUESET:
dmuci_set_value_by_section((struct uci_section *)data, "router_alias", value);
return 0;
}
return 0;
return bbf_set_alias(ctx, (struct uci_section *)data, "router_alias", instance, value);
}
static int get_router_ipv4forwarding_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)

View file

@ -602,24 +602,12 @@ static int set_ssh_server_enable(char *refparam, struct dmctx *ctx, void *data,
static int get_ssh_server_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct dmmap_ssh *)data)->dmmap_section, "server_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct dmmap_ssh *)data)->dmmap_section, "server_alias", instance, value);
}
static int set_ssh_server_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section(((struct dmmap_ssh *)data)->dmmap_section, "server_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, ((struct dmmap_ssh *)data)->dmmap_section, "server_alias", instance, value);
}
static int get_ssh_server_interface(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
@ -860,24 +848,12 @@ static int get_ssh_server_session_port(char *refparam, struct dmctx *ctx, void *
static int get_ssh_key_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string((struct uci_section *)data, "alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, (struct uci_section *)data, "alias", instance, value);
}
static int set_ssh_key_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section((struct uci_section *)data, "alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, (struct uci_section *)data, "alias", instance, value);
}
static int get_ssh_key_pubkey(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)

View file

@ -457,26 +457,12 @@ static int get_USBInterface_Status(char *refparam, struct dmctx *ctx, void *data
static int get_USBInterface_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
struct usb_interface *usbiface= (struct usb_interface *)data;
dmuci_get_value_by_section_string(usbiface->dm_usb_iface, "usb_iface_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct usb_interface *)data)->dm_usb_iface, "usb_iface_alias", instance, value);
}
static int set_USBInterface_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
struct usb_interface *usbiface= (struct usb_interface *)data;
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section_bbfdm(usbiface->dm_usb_iface, "usb_iface_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, ((struct usb_interface *)data)->dm_usb_iface, "usb_iface_alias", instance, value);
}
static int get_USBInterface_Name(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
@ -564,26 +550,12 @@ static int get_USBInterfaceStats_MulticastPacketsReceived(char *refparam, struct
static int get_USBPort_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
struct usb_port* port=(struct usb_port *)data;
dmuci_get_value_by_section_string(port->dm_usb_port, "usb_port_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct usb_port *)data)->dm_usb_port, "usb_port_alias", instance, value);
}
static int set_USBPort_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
struct usb_port* port = (struct usb_port *)data;
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section(port->dm_usb_port, "usb_port_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, ((struct usb_port *)data)->dm_usb_port, "usb_port_alias", instance, value);
}
static int get_USBPort_Name(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
@ -660,26 +632,12 @@ static int get_USBUSBHosts_HostNumberOfEntries(char *refparam, struct dmctx *ctx
static int get_USBUSBHostsHost_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
struct usb_port* port=(struct usb_port *)data;
dmuci_get_value_by_section_string(port->dm_usb_port, "usb_host_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct usb_port *)data)->dm_usb_port, "usb_host_alias", instance, value);
}
static int set_USBUSBHostsHost_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
struct usb_port* port=(struct usb_port *)data;
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section(port->dm_usb_port, "usb_host_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, ((struct usb_port *)data)->dm_usb_port, "usb_host_alias", instance, value);
}
static int get_USBUSBHostsHost_Enable(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)

View file

@ -423,24 +423,12 @@ static int set_http_access_enable(char *refparam, struct dmctx *ctx, void *data,
static int get_http_access_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct dmmap_http *)data)->dmmap_section, "server_alias", value);
if (DM_STRLEN(*value) == 0)
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct dmmap_http *)data)->dmmap_section, "server_alias", instance, value);
}
static int set_http_access_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section(((struct dmmap_http *)data)->dmmap_section, "server_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, ((struct dmmap_http *)data)->dmmap_section, "server_alias", instance, value);
}
static int get_http_access_type(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)

View file

@ -2235,24 +2235,12 @@ static int get_WiFiEndPoint_Status(char *refparam, struct dmctx *ctx, void *data
/*#Device.WiFi.EndPoint.{i}.Alias!UCI:dmmap_wireless/wifi-iface,@i-1/endpointalias*/
static int get_WiFiEndPoint_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string((((struct wifi_enp_args *)data)->sections)->dmmap_section, "endpointalias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, (((struct wifi_enp_args *)data)->sections)->dmmap_section, "endpointalias", instance, value);
}
static int set_WiFiEndPoint_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
return 0;
case VALUESET:
dmuci_set_value_by_section((((struct wifi_enp_args *)data)->sections)->dmmap_section, "endpointalias", value);
return 0;
}
return 0;
return bbf_set_alias(ctx, (((struct wifi_enp_args *)data)->sections)->dmmap_section, "endpointalias", instance, value);
}
static int get_WiFiEndPoint_SSIDReference(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
@ -2633,70 +2621,34 @@ static int get_WiFiEndPointWPS_Status(char *refparam, struct dmctx *ctx, void *d
/*#Device.WiFi.Radio.{i}.Alias!UCI:dmmap_wireless/wifi-device,@i-1/radioalias*/
static int get_radio_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string((((struct wifi_radio_args *)data)->sections)->dmmap_section, "radioalias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, (((struct wifi_radio_args *)data)->sections)->dmmap_section, "radioalias", instance, value);
}
static int set_radio_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
return 0;
case VALUESET:
dmuci_set_value_by_section((((struct wifi_radio_args *)data)->sections)->dmmap_section, "radioalias", value);
return 0;
}
return 0;
return bbf_set_alias(ctx, (((struct wifi_radio_args *)data)->sections)->dmmap_section, "radioalias", instance, value);
}
/*#Device.WiFi.SSID.{i}.Alias!UCI:dmmap_wireless/wifi-iface,@i-1/ssidalias*/
static int get_ssid_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct wifi_ssid_args *)data)->dmmap_s, "ssid_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct wifi_ssid_args *)data)->dmmap_s, "ssid_alias", instance, value);
}
static int set_ssid_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
return 0;
case VALUESET:
dmuci_set_value_by_section(((struct wifi_ssid_args *)data)->dmmap_s, "ssid_alias", value);
return 0;
}
return 0;
return bbf_set_alias(ctx, ((struct wifi_ssid_args *)data)->dmmap_s, "ssid_alias", instance, value);
}
/*#Device.WiFi.AccessPoint.{i}.Alias!UCI:dmmap_wireless/wifi-iface,@i-1/ap_alias*/
static int get_access_point_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string((((struct wifi_acp_args *)data)->sections)->dmmap_section, "ap_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, (((struct wifi_acp_args *)data)->sections)->dmmap_section, "ap_alias", instance, value);
}
static int set_access_point_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
return 0;
case VALUESET:
dmuci_set_value_by_section((((struct wifi_acp_args *)data)->sections)->dmmap_section, "ap_alias", value);
return 0;
}
return 0;
return bbf_set_alias(ctx, (((struct wifi_acp_args *)data)->sections)->dmmap_section, "ap_alias", instance, value);
}
static int get_ssid_lower_layer(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)

View file

@ -127,24 +127,12 @@ static int get_EthernetMACVLAN_Status(char *refparam, struct dmctx *ctx, void *d
static int get_EthernetMACVLAN_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct dmmap_dup *)data)->dmmap_section, "mac_vlan_alias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "mac_vlan_alias", instance, value);
}
static int set_EthernetMACVLAN_Alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
break;
case VALUESET:
dmuci_set_value_by_section(((struct dmmap_dup *)data)->dmmap_section, "mac_vlan_alias", value);
break;
}
return 0;
return bbf_set_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "mac_vlan_alias", instance, value);
}
static int get_EthernetMACVLAN_Name(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)

View file

@ -80,24 +80,12 @@ int delete_dropbear_instance(char *refparam, struct dmctx *ctx, void *data, char
**************************************************************/
static int get_x_test_com_dropbear_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_value_by_section_string(((struct dmmap_dup *)data)->dmmap_section, "dropbearalias", value);
if ((*value)[0] == '\0')
dmasprintf(value, "cpe-%s", instance);
return 0;
return bbf_get_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "dropbearalias", instance, value);
}
static int set_x_test_com_dropbear_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action)
{
switch (action) {
case VALUECHECK:
if (bbfdm_validate_string(ctx, value, -1, 64, NULL, NULL))
return FAULT_9007;
return 0;
case VALUESET:
dmuci_set_value_by_section(((struct dmmap_dup *)data)->dmmap_section, "dropbearalias", value);
return 0;
}
return 0;
return bbf_set_alias(ctx, ((struct dmmap_dup *)data)->dmmap_section, "dropbearalias", instance, value);
}
static int get_x_test_com_dropbear_password_auth(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)

View file

@ -345,6 +345,42 @@ static void test_api_bbfdm_get_set_json_v1_parameter(void **state)
ctx->in_value = "IEEE 802_11AX_5_GHZ";
fault = bbf_entry_method(ctx, BBF_SET_VALUE);
assert_int_equal(fault, FAULT_9008);
// get value ==> expected "0" error
ctx->in_param = "Device.X_IOPSYS_EU_URLFilter.Profile.1.Name";
fault = bbf_entry_method(ctx, BBF_GET_VALUE);
assert_int_equal(fault, 0);
// validate parameter : name, type, value
validate_parameter(ctx, "Device.X_IOPSYS_EU_URLFilter.Profile.1.Name", "homeoffice", "xsd:string");
// set value ==> expected "0" error
ctx->in_param = "Device.X_IOPSYS_EU_URLFilter.Profile.1.Name";
ctx->in_value = "home+office test";
fault = bbf_entry_method(ctx, BBF_SET_VALUE);
assert_int_equal(fault, 0);
// get value ==> expected "0" error
ctx->in_param = "Device.X_IOPSYS_EU_URLFilter.Profile.1.Name";
fault = bbf_entry_method(ctx, BBF_GET_VALUE);
assert_int_equal(fault, 0);
// validate parameter : name, type, value
validate_parameter(ctx, "Device.X_IOPSYS_EU_URLFilter.Profile.1.Name", "home+office test", "xsd:string");
// set value ==> expected "0" error
ctx->in_param = "Device.X_IOPSYS_EU_URLFilter.Profile.1.Name";
ctx->in_value = "office_test";
fault = bbf_entry_method(ctx, BBF_SET_VALUE);
assert_int_equal(fault, 0);
// get value ==> expected "0" error
ctx->in_param = "Device.X_IOPSYS_EU_URLFilter.Profile.1.Name";
fault = bbf_entry_method(ctx, BBF_GET_VALUE);
assert_int_equal(fault, 0);
// validate parameter : name, type, value
validate_parameter(ctx, "Device.X_IOPSYS_EU_URLFilter.Profile.1.Name", "office_test", "xsd:string");
}
static void test_api_bbfdm_get_set_library_parameter(void **state)