mirror of
https://dev.iopsys.eu/bbf/bbfdm.git
synced 2025-12-10 07:44:39 +01:00
Ticket refs #3228: QEMU - ICWMP is segfaulting
This commit is contained in:
parent
bfe14a431d
commit
df6c467077
19 changed files with 46 additions and 46 deletions
|
|
@ -2142,7 +2142,7 @@ static int browseIPDiagnosticsTraceRouteRouteHopsInst(struct dmctx *dmctx, DMNOD
|
|||
char *instance, *idx_last = NULL;
|
||||
|
||||
uci_foreach_sections_state("cwmp", "RouteHops", s) {
|
||||
instance = handle_update_instance(2, dmctx, &idx_last, update_instance_alias, 3, (void *)s, "routehop_instance", "routehop_alias");
|
||||
instance = handle_update_instance(1, dmctx, &idx_last, update_instance_alias, 3, (void *)s, "routehop_instance", "routehop_alias");
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)s, instance) == DM_STOP)
|
||||
break;
|
||||
}
|
||||
|
|
@ -2155,7 +2155,7 @@ static int browseIPDiagnosticsDownloadDiagnosticsPerConnectionResultInst(struct
|
|||
char *instance, *idx_last = NULL;
|
||||
|
||||
uci_foreach_sections_state("cwmp", "DownloadPerConnection", s) {
|
||||
instance = handle_update_instance(2, dmctx, &idx_last, update_instance_alias, 3, (void *)s, "perconnection_instance", "perconnection_alias");
|
||||
instance = handle_update_instance(1, dmctx, &idx_last, update_instance_alias, 3, (void *)s, "perconnection_instance", "perconnection_alias");
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)s, instance) == DM_STOP)
|
||||
break;
|
||||
}
|
||||
|
|
@ -2168,7 +2168,7 @@ static int browseIPDiagnosticsUploadDiagnosticsPerConnectionResultInst(struct dm
|
|||
char *instance, *idx_last = NULL;
|
||||
|
||||
uci_foreach_sections_state("cwmp", "UploadPerConnection", s) {
|
||||
instance = handle_update_instance(2, dmctx, &idx_last, update_instance_alias, 3, (void *)s, "perconnection_instance", "perconnection_alias");
|
||||
instance = handle_update_instance(1, dmctx, &idx_last, update_instance_alias, 3, (void *)s, "perconnection_instance", "perconnection_alias");
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)s, instance) == DM_STOP)
|
||||
break;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ static int browseBulkDataProfileParameterInst(struct dmctx *dmctx, DMNODE *paren
|
|||
dmuci_get_value_by_section_string(s, "profile_id", &profile_id);
|
||||
if(strcmp(profile_id, prev_profile_id) != 0)
|
||||
continue;
|
||||
profile_parameter = handle_update_instance(1, dmctx, &profile_parameter_last, update_instance_alias, 3, s, "parameter_instance", "parameter_alias");
|
||||
profile_parameter = handle_update_instance(2, dmctx, &profile_parameter_last, update_instance_alias, 3, s, "parameter_instance", "parameter_alias");
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)s, profile_parameter) == DM_STOP)
|
||||
break;
|
||||
}
|
||||
|
|
@ -56,7 +56,7 @@ static int browseBulkDataProfileHTTPRequestURIParameterInst(struct dmctx *dmctx,
|
|||
dmuci_get_value_by_section_string(s, "profile_id", &profile_id);
|
||||
if(strcmp(profile_id, prev_profile_id) != 0)
|
||||
continue;
|
||||
profile_http_request_uri_parameter = handle_update_instance(1, dmctx, &profile_http_request_uri_parameter_last, update_instance_alias, 3, s, "requesturiparameter_instance", "requesturiparameter_alias");
|
||||
profile_http_request_uri_parameter = handle_update_instance(2, dmctx, &profile_http_request_uri_parameter_last, update_instance_alias, 3, s, "requesturiparameter_instance", "requesturiparameter_alias");
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)s, profile_http_request_uri_parameter) == DM_STOP)
|
||||
break;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -66,7 +66,7 @@ static int browseSoftwareModulesDeploymentUnitInst(struct dmctx *dmctx, DMNODE *
|
|||
dmubus_call("swmodules", "du_list", UBUS_ARGS{}, 0, &res);
|
||||
if (res) {
|
||||
dmjson_foreach_obj_in_array(res, arrobj, du_obj, j, 1, "deployment_unit") {
|
||||
idx = handle_update_instance(2, dmctx, &idx_last, update_instance_without_section, 1, ++id);
|
||||
idx = handle_update_instance(1, dmctx, &idx_last, update_instance_without_section, 1, ++id);
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)du_obj, idx) == DM_STOP)
|
||||
break;
|
||||
}
|
||||
|
|
@ -83,7 +83,7 @@ static int browseSoftwareModulesExecutionUnitInst(struct dmctx *dmctx, DMNODE *p
|
|||
dmubus_call("swmodules", "eu_list", UBUS_ARGS{}, 0, &res);
|
||||
if (res) {
|
||||
dmjson_foreach_obj_in_array(res, arrobj, du_obj, j, 1, "execution_unit") {
|
||||
idx = handle_update_instance(2, dmctx, &idx_last, update_instance_without_section, 1, ++id);
|
||||
idx = handle_update_instance(1, dmctx, &idx_last, update_instance_without_section, 1, ++id);
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)du_obj, idx) == DM_STOP)
|
||||
break;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2165,7 +2165,7 @@ static int browseBridgingBridgePortInst(struct dmctx *dmctx, DMNODE *parent_node
|
|||
get_bridge_port_device_section(s, &deviceport_s);
|
||||
dmuci_get_value_by_section_string(s, "device", &device);
|
||||
init_bridge_port_args(&curr_bridge_port_args, deviceport_s, s, br_args->bridge_sec, device, br_args->br_inst);
|
||||
port_inst = handle_update_instance(1, dmctx, &port_last, update_instance_alias_bbfdm, 3, s, "bridge_port_instance", "bridge_port_alias");
|
||||
port_inst = handle_update_instance(2, dmctx, &port_last, update_instance_alias_bbfdm, 3, s, "bridge_port_instance", "bridge_port_alias");
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)&curr_bridge_port_args, port_inst) == DM_STOP)
|
||||
break;
|
||||
}
|
||||
|
|
@ -2183,7 +2183,7 @@ static int browseBridgingBridgeVLANInst(struct dmctx *dmctx, DMNODE *parent_node
|
|||
dmmap_synchronizeBridgingBridgeVLAN(dmctx, parent_node, prev_data, prev_instance);
|
||||
uci_path_foreach_option_eq(bbfdm, "dmmap_bridge_vlan", "bridge_vlan", "br_inst", br_args->br_inst, s) {
|
||||
init_bridge_vlan_args(&curr_bridge_vlan_args, s, br_args->bridge_sec, br_args->br_inst);
|
||||
vlan_inst = handle_update_instance(1, dmctx, &vlan_last, update_instance_alias_bbfdm, 3, s, "bridge_vlan_instance", "bridge_vlan_alias");
|
||||
vlan_inst = handle_update_instance(2, dmctx, &vlan_last, update_instance_alias_bbfdm, 3, s, "bridge_vlan_instance", "bridge_vlan_alias");
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)&curr_bridge_vlan_args, vlan_inst) == DM_STOP)
|
||||
break;
|
||||
}
|
||||
|
|
@ -2202,7 +2202,7 @@ static int browseBridgingBridgeVLANPortInst(struct dmctx *dmctx, DMNODE *parent_
|
|||
uci_path_foreach_option_eq(bbfdm, "dmmap_bridge_vlanport", "bridge_vlanport", "br_inst", br_args->br_inst, s) {
|
||||
get_bridge_vlanport_device_section(s, &device_s);
|
||||
init_bridge_vlanport_args(&curr_bridge_vlanport_args, device_s, s, br_args->bridge_sec, br_args->br_inst);
|
||||
vlanport_inst = handle_update_instance(1, dmctx, &vlanport_last, update_instance_alias_bbfdm, 3, s, "bridge_vlanport_instance", "bridge_vlanport_alias");
|
||||
vlanport_inst = handle_update_instance(2, dmctx, &vlanport_last, update_instance_alias_bbfdm, 3, s, "bridge_vlanport_instance", "bridge_vlanport_alias");
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)&curr_bridge_vlanport_args, vlanport_inst) == DM_STOP)
|
||||
break;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -198,7 +198,7 @@ int os__browseProcessEntriesInst(struct dmctx *dmctx, DMNODE *parent_node, void
|
|||
dmubus_call("router.system", "processes", UBUS_ARGS{}, 0, &res);
|
||||
if (res) {
|
||||
dmjson_foreach_obj_in_array(res, arrobj, processes, i, 1, "processes") {
|
||||
idx = handle_update_instance(2, dmctx, &idx_last, update_instance_without_section, 1, ++id);
|
||||
idx = handle_update_instance(1, dmctx, &idx_last, update_instance_without_section, 1, ++id);
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)processes, idx) == DM_STOP)
|
||||
break;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2612,7 +2612,7 @@ static int browseDhcpClientIPv4Inst(struct dmctx *dmctx, DMNODE *parent_node, vo
|
|||
{
|
||||
char *idx, *idx_last = NULL;
|
||||
|
||||
idx = handle_update_instance(2, dmctx, &idx_last, update_instance_without_section, 1, 1);
|
||||
idx = handle_update_instance(3, dmctx, &idx_last, update_instance_without_section, 1, 1);
|
||||
DM_LINK_INST_OBJ(dmctx, parent_node, prev_data, idx);
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -2725,7 +2725,7 @@ static int browseDHCPv4ClientSentOptionInst(struct dmctx *dmctx, DMNODE *parent_
|
|||
dhcp_client_opt_args.value= dmstrdup(v2);
|
||||
dhcp_client_opt_args.opt_sect= dmmap_sect;
|
||||
|
||||
instance = handle_update_instance(1, dmctx, &instnbr, update_instance_alias_bbfdm, 3, dmmap_sect, "bbf_dhcpv4_sentopt_instance", "bbf_dhcpv4_sentopt_alias");
|
||||
instance = handle_update_instance(2, dmctx, &instnbr, update_instance_alias_bbfdm, 3, dmmap_sect, "bbf_dhcpv4_sentopt_instance", "bbf_dhcpv4_sentopt_alias");
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, &dhcp_client_opt_args, instance) == DM_STOP)
|
||||
break;
|
||||
}
|
||||
|
|
@ -2760,7 +2760,7 @@ static int browseDHCPv4ClientReqOptionInst(struct dmctx *dmctx, DMNODE *parent_n
|
|||
dhcp_client_opt_args.value = dmstrdup("");
|
||||
dhcp_client_opt_args.opt_sect = dmmap_sect;
|
||||
|
||||
instance = handle_update_instance(1, dmctx, &instnbr, update_instance_alias_bbfdm, 3, dmmap_sect, "bbf_dhcpv4_reqtopt_instance", "bbf_dhcpv4_reqtopt_alias");
|
||||
instance = handle_update_instance(2, dmctx, &instnbr, update_instance_alias_bbfdm, 3, dmmap_sect, "bbf_dhcpv4_reqtopt_instance", "bbf_dhcpv4_reqtopt_alias");
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, &dhcp_client_opt_args, instance) == DM_STOP)
|
||||
break;
|
||||
}
|
||||
|
|
@ -2808,7 +2808,7 @@ static int browseDHCPv4ServerPoolOptionInst(struct dmctx *dmctx, DMNODE *parent_
|
|||
dhcp_client_opt_args.option_tag = dmstrdup(v1);
|
||||
dhcp_client_opt_args.value = dmstrdup(v2);
|
||||
dhcp_client_opt_args.opt_sect = dmmap_sect;
|
||||
instance = handle_update_instance(1, dmctx, &instnbr, update_instance_alias_bbfdm, 3, dmmap_sect, "bbf_dhcpv4_servpool_option_instance", "bbf_dhcpv4_servpool_option_alias");
|
||||
instance = handle_update_instance(2, dmctx, &instnbr, update_instance_alias_bbfdm, 3, dmmap_sect, "bbf_dhcpv4_servpool_option_instance", "bbf_dhcpv4_servpool_option_alias");
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, &dhcp_client_opt_args, instance) == DM_STOP)
|
||||
break;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -189,7 +189,7 @@ static int browseDHCPv6ServerPoolClientInst(struct dmctx *dmctx, DMNODE *parent_
|
|||
if (!jobj) break;
|
||||
init_dhcpv6_client_args(&curr_dhcp_client_args, jobj, NULL, i);
|
||||
i++;
|
||||
idx = handle_update_instance(2, dmctx, &idx_last, update_instance_without_section, 1, i);
|
||||
idx = handle_update_instance(1, dmctx, &idx_last, update_instance_without_section, 1, i);
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)&curr_dhcp_client_args, idx) == DM_STOP)
|
||||
break;
|
||||
}
|
||||
|
|
@ -259,7 +259,7 @@ static int browseDHCPv6ServerPoolClientIPv6AddressInst(struct dmctx *dmctx, DMNO
|
|||
break;
|
||||
init_dhcpv6_client_args(&curr_dhcv6_address_args, dhcpv6_serv_pool_client->client, address_obj, i);
|
||||
i++;
|
||||
idx = handle_update_instance(2, dmctx, &idx_last, update_instance_without_section, 1, i);
|
||||
idx = handle_update_instance(3, dmctx, &idx_last, update_instance_without_section, 1, i);
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)&curr_dhcv6_address_args, idx) == DM_STOP)
|
||||
break;
|
||||
}
|
||||
|
|
@ -281,7 +281,7 @@ static int browseDHCPv6ServerPoolClientIPv6PrefixInst(struct dmctx *dmctx, DMNOD
|
|||
break;
|
||||
init_dhcpv6_client_args(&curr_dhcv6_address_args, dhcpv6_serv_pool_client->client, address_obj, i);
|
||||
i++;
|
||||
idx = handle_update_instance(2, dmctx, &idx_last, update_instance_without_section, 1, i);
|
||||
idx = handle_update_instance(3, dmctx, &idx_last, update_instance_without_section, 1, i);
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)&curr_dhcv6_address_args, idx) == DM_STOP)
|
||||
break;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -145,7 +145,7 @@ static int browseResultInst(struct dmctx *dmctx, DMNODE *parent_node, void *prev
|
|||
char *instance, *idx_last = NULL;
|
||||
|
||||
uci_foreach_sections_state("cwmp", "NSLookupResult", s) {
|
||||
instance = handle_update_instance(2, dmctx, &idx_last, update_instance_alias, 3, (void *)s, "nslookup_res_instance", "nslookup_res_alias");
|
||||
instance = handle_update_instance(1, dmctx, &idx_last, update_instance_alias, 3, (void *)s, "nslookup_res_instance", "nslookup_res_alias");
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)s, instance) == DM_STOP)
|
||||
break;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -48,7 +48,7 @@ static int browseRuleInst(struct dmctx *dmctx, DMNODE *parent_node, void *prev_d
|
|||
|
||||
synchronize_specific_config_sections_with_dmmap("firewall", "rule", "dmmap_firewall", &dup_list);
|
||||
list_for_each_entry(p, &dup_list, list) {
|
||||
instance = handle_update_instance(1, dmctx, &instnbr, update_instance_alias, 3, p->dmmap_section, "firewall_chain_rule_instance", "firewall_chain_rule_alias");
|
||||
instance = handle_update_instance(2, dmctx, &instnbr, update_instance_alias, 3, p->dmmap_section, "firewall_chain_rule_instance", "firewall_chain_rule_alias");
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)p->config_section, instance) == DM_STOP)
|
||||
break;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -52,7 +52,7 @@ static int browseGRETunnelInterfaceInst(struct dmctx *dmctx, DMNODE *parent_node
|
|||
list_for_each_entry(p, &dup_list, list) {
|
||||
if ((s = has_tunnel_interface_route(section_name(p->config_section))) == NULL)
|
||||
continue;
|
||||
greiface_inst = handle_update_instance(1, dmctx, &greiface_inst_last, update_instance_alias, 3, p->dmmap_section, "greiface_instance", "greiface_alias");
|
||||
greiface_inst = handle_update_instance(2, dmctx, &greiface_inst_last, update_instance_alias, 3, p->dmmap_section, "greiface_instance", "greiface_alias");
|
||||
p->additional_attribute= dm->config_section;
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)p, greiface_inst) == DM_STOP)
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@ int os__browseHostsHostIPv4AddressInst(struct dmctx *dmctx, DMNODE *parent_node,
|
|||
int id = 0, i = 0;
|
||||
|
||||
dmjson_foreach_value_in_array(host_obj, ip_arr, ipv4addr, i, 1, "ipv4addr") {
|
||||
idx = handle_update_instance(1, dmctx, &idx_last, update_instance_without_section, 1, ++id);
|
||||
idx = handle_update_instance(2, dmctx, &idx_last, update_instance_without_section, 1, ++id);
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)ipv4addr, idx) == DM_STOP)
|
||||
break;
|
||||
}
|
||||
|
|
@ -55,7 +55,7 @@ int os__browseHostsHostIPv6AddressInst(struct dmctx *dmctx, DMNODE *parent_node,
|
|||
int id = 0, i = 0;
|
||||
|
||||
dmjson_foreach_value_in_array(host_obj, ip_arr, ipv6addr, i, 1, "ipv6addr") {
|
||||
idx = handle_update_instance(1, dmctx, &idx_last, update_instance_without_section, 1, ++id);
|
||||
idx = handle_update_instance(2, dmctx, &idx_last, update_instance_without_section, 1, ++id);
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)ipv6addr, idx) == DM_STOP)
|
||||
break;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1966,7 +1966,7 @@ static int browseIfaceIPv6Inst(struct dmctx *dmctx, DMNODE *parent_node, void *p
|
|||
snprintf(buf, sizeof(buf), "%d", entries);
|
||||
s = update_dmmap_network_ipv6(buf, section_name(((struct ip_args *)prev_data)->ip_sec));
|
||||
init_ipv6_args(&curr_ipv6_args, ((struct ip_args *)prev_data)->ip_sec, ipv6addr, ipv6mask, ipv6_preferred, ipv6_valid);
|
||||
ipv6_int = handle_update_instance(1, dmctx, &ipv6_int_last, update_instance_alias, 3, s, "ipv6_instance", "ipv6_alias");
|
||||
ipv6_int = handle_update_instance(2, dmctx, &ipv6_int_last, update_instance_alias, 3, s, "ipv6_instance", "ipv6_alias");
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)&curr_ipv6_args, ipv6_int) == DM_STOP)
|
||||
goto end;
|
||||
} else
|
||||
|
|
@ -1976,7 +1976,7 @@ static int browseIfaceIPv6Inst(struct dmctx *dmctx, DMNODE *parent_node, void *p
|
|||
browse:
|
||||
s = update_dmmap_network_ipv6("1", section_name(((struct ip_args *)prev_data)->ip_sec));
|
||||
init_ipv6_args(&curr_ipv6_args, ((struct ip_args *)prev_data)->ip_sec, ipv6addr, ipv6mask, ipv6_preferred, ipv6_valid);
|
||||
ipv6_int = handle_update_instance(1, dmctx, &ipv6_int_last, update_instance_alias, 3, s, "ipv6_instance", "ipv6_alias");
|
||||
ipv6_int = handle_update_instance(2, dmctx, &ipv6_int_last, update_instance_alias, 3, s, "ipv6_instance", "ipv6_alias");
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)&curr_ipv6_args, ipv6_int) == DM_STOP)
|
||||
goto end;
|
||||
}
|
||||
|
|
@ -2034,7 +2034,7 @@ static int browseIfaceIPv6PrefixInst(struct dmctx *dmctx, DMNODE *parent_node, v
|
|||
snprintf(buf, sizeof(buf), "%d", entries);
|
||||
s = update_dmmap_network_ipv6prefix(buf, section_name(((struct ip_args *)prev_data)->ip_sec));
|
||||
init_ipv6prefix_args(&curr_ipv6prefix_args, ((struct ip_args *)prev_data)->ip_sec, ipv6prefixaddr, ipv6prefixmask, ipv6prefix_preferred, ipv6prefix_valid);
|
||||
ipv6prefix_int = handle_update_instance(1, dmctx, &ipv6prefix_int_last, update_instance_alias, 3, s, "ipv6prefix_instance", "ipv6prefix_alias");
|
||||
ipv6prefix_int = handle_update_instance(2, dmctx, &ipv6prefix_int_last, update_instance_alias, 3, s, "ipv6prefix_instance", "ipv6prefix_alias");
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)&curr_ipv6prefix_args, ipv6prefix_int) == DM_STOP)
|
||||
goto end;
|
||||
} else
|
||||
|
|
@ -2044,7 +2044,7 @@ static int browseIfaceIPv6PrefixInst(struct dmctx *dmctx, DMNODE *parent_node, v
|
|||
browse:
|
||||
s = update_dmmap_network_ipv6prefix("1", section_name(((struct ip_args *)prev_data)->ip_sec));
|
||||
init_ipv6prefix_args(&curr_ipv6prefix_args, ((struct ip_args *)prev_data)->ip_sec, ipv6prefixaddr, ipv6prefixmask, ipv6prefix_preferred, ipv6prefix_valid);
|
||||
ipv6prefix_int = handle_update_instance(1, dmctx, &ipv6prefix_int_last, update_instance_alias, 3, s, "ipv6prefix_instance", "ipv6prefix_alias");
|
||||
ipv6prefix_int = handle_update_instance(2, dmctx, &ipv6prefix_int_last, update_instance_alias, 3, s, "ipv6prefix_instance", "ipv6prefix_alias");
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)&curr_ipv6prefix_args, ipv6prefix_int) == DM_STOP)
|
||||
goto end;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1218,7 +1218,7 @@ static int browseIPv4ForwardingInst(struct dmctx *dmctx, DMNODE *parent_node, vo
|
|||
synchronize_specific_config_sections_with_dmmap("network", "route", "dmmap_route_forwarding", &dup_list);
|
||||
list_for_each_entry(p, &dup_list, list) {
|
||||
init_args_ipv4forward(&curr_routefwdargs, p->config_section, "1", ROUTE_STATIC);
|
||||
iroute = handle_update_instance(1, dmctx, &iroute_last, forwarding_update_instance_alias_bbfdm, 4, p->dmmap_section, "routeinstance", "routealias", &find_max);
|
||||
iroute = handle_update_instance(2, dmctx, &iroute_last, forwarding_update_instance_alias_bbfdm, 4, p->dmmap_section, "routeinstance", "routealias", &find_max);
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)&curr_routefwdargs, iroute) == DM_STOP)
|
||||
goto end;
|
||||
}
|
||||
|
|
@ -1226,7 +1226,7 @@ static int browseIPv4ForwardingInst(struct dmctx *dmctx, DMNODE *parent_node, vo
|
|||
synchronize_specific_config_sections_with_dmmap("network", "route_disabled", "dmmap_route_forwarding", &dup_list);
|
||||
list_for_each_entry(p, &dup_list, list) {
|
||||
init_args_ipv4forward(&curr_routefwdargs, p->config_section, "1", ROUTE_DISABLED);
|
||||
iroute = handle_update_instance(1, dmctx, &iroute_last, forwarding_update_instance_alias_bbfdm, 4, p->dmmap_section, "routeinstance", "routealias", &find_max);
|
||||
iroute = handle_update_instance(2, dmctx, &iroute_last, forwarding_update_instance_alias_bbfdm, 4, p->dmmap_section, "routeinstance", "routealias", &find_max);
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)&curr_routefwdargs, iroute) == DM_STOP)
|
||||
goto end;
|
||||
}
|
||||
|
|
@ -1234,7 +1234,7 @@ static int browseIPv4ForwardingInst(struct dmctx *dmctx, DMNODE *parent_node, vo
|
|||
dmmap_synchronizeRoutingRouterIPv4Forwarding(dmctx, NULL, NULL, NULL);
|
||||
uci_path_foreach_sections(bbfdm, "dmmap_route_forwarding", "route_dynamic", ss) {
|
||||
init_args_ipv4forward(&curr_routefwdargs, ss, "0", ROUTE_DYNAMIC);
|
||||
iroute = handle_update_instance(1, dmctx, &iroute_last, forwarding_update_instance_alias_bbfdm, 4, ss, "routeinstance", "routealias", &find_max);
|
||||
iroute = handle_update_instance(2, dmctx, &iroute_last, forwarding_update_instance_alias_bbfdm, 4, ss, "routeinstance", "routealias", &find_max);
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)&curr_routefwdargs, iroute) == DM_STOP)
|
||||
goto end;
|
||||
}
|
||||
|
|
@ -1255,7 +1255,7 @@ static int browseIPv6ForwardingInst(struct dmctx *dmctx, DMNODE *parent_node, vo
|
|||
synchronize_specific_config_sections_with_dmmap("network", "route6", "dmmap_route_forwarding", &dup_list);
|
||||
list_for_each_entry(p, &dup_list, list) {
|
||||
init_args_ipv6forward(&curr_route6fwdargs, p->config_section, "1", ROUTE_STATIC);
|
||||
iroute = handle_update_instance(1, dmctx, &iroute_last, forwarding6_update_instance_alias_bbfdm, 4, p->dmmap_section, "route6instance", "route6alias", &find_max);
|
||||
iroute = handle_update_instance(2, dmctx, &iroute_last, forwarding6_update_instance_alias_bbfdm, 4, p->dmmap_section, "route6instance", "route6alias", &find_max);
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)&curr_route6fwdargs, iroute) == DM_STOP)
|
||||
goto end;
|
||||
}
|
||||
|
|
@ -1263,7 +1263,7 @@ static int browseIPv6ForwardingInst(struct dmctx *dmctx, DMNODE *parent_node, vo
|
|||
dmmap_synchronizeRoutingRouterIPv6Forwarding(dmctx, NULL, NULL, NULL);
|
||||
uci_path_foreach_sections(bbfdm, "dmmap_route_forwarding", "route6_dynamic", ss) {
|
||||
init_args_ipv6forward(&curr_route6fwdargs, ss, "0", ROUTE_DYNAMIC);
|
||||
iroute = handle_update_instance(1, dmctx, &iroute_last, forwarding6_update_instance_alias_bbfdm, 4, ss, "route6instance", "route6alias", &find_max);
|
||||
iroute = handle_update_instance(2, dmctx, &iroute_last, forwarding6_update_instance_alias_bbfdm, 4, ss, "route6instance", "route6alias", &find_max);
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)&curr_route6fwdargs, iroute) == DM_STOP)
|
||||
goto end;
|
||||
}
|
||||
|
|
@ -1287,7 +1287,7 @@ static int browseRoutingRouteInformationInterfaceSettingInst(struct dmctx *dmctx
|
|||
route_obj = dmjson_select_obj_in_array_idx(res, entries, 1, "route");
|
||||
if(route_obj) {
|
||||
entries++;
|
||||
idx = handle_update_instance(3, dmctx, &idx_last, update_instance_without_section, 1, ++id);
|
||||
idx = handle_update_instance(1, dmctx, &idx_last, update_instance_without_section, 1, ++id);
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)route_obj, idx) == DM_STOP)
|
||||
break;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -318,7 +318,7 @@ static int browseUSBUSBHostsHostDeviceInst(struct dmctx *dmctx, DMNODE *parent_n
|
|||
DMUCI_SET_VALUE_BY_SECTION(bbfdm, p->dm, "usb_host_device_parent_host_instance", parent_host_instance);
|
||||
}
|
||||
port.dmsect= prev_port->dmsect;
|
||||
instance = handle_update_instance(1, dmctx, &instnbr, update_instance_alias_bbfdm, 3, p->dm, "usb_host_device_instance", "usb_host_device_alias");
|
||||
instance = handle_update_instance(2, dmctx, &instnbr, update_instance_alias_bbfdm, 3, p->dm, "usb_host_device_instance", "usb_host_device_alias");
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, &port, instance) == DM_STOP)
|
||||
break;
|
||||
}
|
||||
|
|
@ -344,7 +344,7 @@ static int browseUSBUSBHostsHostDeviceConfigurationInst(struct dmctx *dmctx, DMN
|
|||
DMUCI_SET_VALUE_BY_SECTION(bbfdm, s, "usb_parent_device", usb_dev->folder_path);
|
||||
|
||||
init_usb_port(s, usb_dev->folder_name, usb_dev->folder_path, &port);
|
||||
handle_update_instance(1, dmctx, &instnbr, update_instance_alias, 3, s, "usb_device_conf_instance", "usb_device_conf_alias");
|
||||
handle_update_instance(3, dmctx, &instnbr, update_instance_alias, 3, s, "usb_device_conf_instance", "usb_device_conf_alias");
|
||||
DM_LINK_INST_OBJ(dmctx, parent_node, &port, "1");
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -374,7 +374,7 @@ static int browseUSBUSBHostsHostDeviceConfigurationInterfaceInst(struct dmctx *d
|
|||
}
|
||||
|
||||
init_usb_port(dmmap_sect, ent->d_name, sysfs_rep_path, &port);
|
||||
instance = handle_update_instance(1, dmctx, &instnbr, update_instance_alias_bbfdm, 3, dmmap_sect, "usb_device_conf_iface_instance", "usb_device_conf_iface_alias");
|
||||
instance = handle_update_instance(4, dmctx, &instnbr, update_instance_alias_bbfdm, 3, dmmap_sect, "usb_device_conf_iface_instance", "usb_device_conf_iface_alias");
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, &port, instance) == DM_STOP)
|
||||
break;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -538,7 +538,7 @@ int os__browseWifiNeighboringWiFiDiagnosticResultInst(struct dmctx *dmctx, DMNOD
|
|||
dmubus_call(object, "scanresults", UBUS_ARGS{}, 0, &res);
|
||||
if (res) {
|
||||
dmjson_foreach_obj_in_array(res, arrobj, accesspoints, i, 1, "accesspoints") {
|
||||
idx = handle_update_instance(3, dmctx, &idx_last, update_instance_without_section, 1, ++id);
|
||||
idx = handle_update_instance(1, dmctx, &idx_last, update_instance_without_section, 1, ++id);
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)accesspoints, idx) == DM_STOP)
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -626,7 +626,7 @@ int os__browse_wifi_associated_device(struct dmctx *dmctx, DMNODE *parent_node,
|
|||
dmubus_call(object, "stations", UBUS_ARGS{}, 0, &res);
|
||||
if (res) {
|
||||
dmjson_foreach_obj_in_array(res, arrobj, stations, i, 1, "stations") {
|
||||
idx = handle_update_instance(3, dmctx, &idx_last, update_instance_without_section, 1, ++id);
|
||||
idx = handle_update_instance(2, dmctx, &idx_last, update_instance_without_section, 1, ++id);
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)stations, idx) == DM_STOP)
|
||||
return 0;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2246,7 +2246,7 @@ static int browseWiFiEndPointProfileInst(struct dmctx *dmctx, DMNODE *parent_nod
|
|||
if(!s)
|
||||
dmuci_add_section_bbfdm("dmmap_wireless", "ep_profile", &s, &v);
|
||||
DMUCI_SET_VALUE_BY_SECTION(bbfdm, s, "ep_key", ep_instance);
|
||||
handle_update_instance(1, dmctx, &instnbr, update_instance_alias, 3, s, "ep_profile_instance", "ep_profile_alias");
|
||||
handle_update_instance(2, dmctx, &instnbr, update_instance_alias, 3, s, "ep_profile_instance", "ep_profile_alias");
|
||||
|
||||
DM_LINK_INST_OBJ(dmctx, parent_node, ep_args->wifi_enp_sec, "1");
|
||||
return 0;
|
||||
|
|
|
|||
|
|
@ -303,7 +303,7 @@ static int browse_igmps_filter_inst(struct dmctx *dmctx, DMNODE *parent_node, vo
|
|||
if (!p->config_section)
|
||||
break;
|
||||
|
||||
inst = handle_update_instance(1, dmctx, &inst_last, update_instance_alias, 3,
|
||||
inst = handle_update_instance(2, dmctx, &inst_last, update_instance_alias, 3,
|
||||
p->dmmap_section, "filter_instance", "filter_alias");
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)p->config_section, inst) == DM_STOP)
|
||||
break;
|
||||
|
|
@ -754,7 +754,7 @@ static int browse_igmpp_interface_inst(struct dmctx *dmctx, DMNODE *parent_node,
|
|||
if (!p->config_section)
|
||||
break;
|
||||
|
||||
inst = handle_update_instance(1, dmctx, &inst_last, update_instance_alias, 3,
|
||||
inst = handle_update_instance(2, dmctx, &inst_last, update_instance_alias, 3,
|
||||
p->dmmap_section, "iface_instance", "iface_alias");
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)p->config_section, inst) == DM_STOP)
|
||||
break;
|
||||
|
|
@ -839,7 +839,7 @@ static int browse_igmpp_filter_inst(struct dmctx *dmctx, DMNODE *parent_node, vo
|
|||
if (!p->config_section)
|
||||
break;
|
||||
|
||||
inst = handle_update_instance(1, dmctx, &inst_last, update_instance_alias, 3,
|
||||
inst = handle_update_instance(2, dmctx, &inst_last, update_instance_alias, 3,
|
||||
p->dmmap_section, "filter_instance", "filter_alias");
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)p->config_section, inst) == DM_STOP)
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -303,7 +303,7 @@ static int browse_mlds_filter_inst(struct dmctx *dmctx, DMNODE *parent_node, voi
|
|||
if (!p->config_section)
|
||||
break;
|
||||
|
||||
inst = handle_update_instance(1, dmctx, &inst_last, update_instance_alias, 3,
|
||||
inst = handle_update_instance(2, dmctx, &inst_last, update_instance_alias, 3,
|
||||
p->dmmap_section, "filter_instance", "filter_alias");
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)p->config_section, inst) == DM_STOP)
|
||||
break;
|
||||
|
|
@ -754,7 +754,7 @@ static int browse_mldp_interface_inst(struct dmctx *dmctx, DMNODE *parent_node,
|
|||
if (!p->config_section)
|
||||
break;
|
||||
|
||||
inst = handle_update_instance(1, dmctx, &inst_last, update_instance_alias, 3,
|
||||
inst = handle_update_instance(2, dmctx, &inst_last, update_instance_alias, 3,
|
||||
p->dmmap_section, "iface_instance", "iface_alias");
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)p->config_section, inst) == DM_STOP)
|
||||
break;
|
||||
|
|
@ -839,7 +839,7 @@ static int browse_mldp_filter_inst(struct dmctx *dmctx, DMNODE *parent_node, voi
|
|||
if (!p->config_section)
|
||||
break;
|
||||
|
||||
inst = handle_update_instance(1, dmctx, &inst_last, update_instance_alias, 3,
|
||||
inst = handle_update_instance(2, dmctx, &inst_last, update_instance_alias, 3,
|
||||
p->dmmap_section, "filter_instance", "filter_alias");
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)p->config_section, inst) == DM_STOP)
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -536,7 +536,7 @@ static int browsexmpp_connection_serverInst(struct dmctx *dmctx, DMNODE *parent_
|
|||
|
||||
dmuci_get_value_by_section_string(connsection, "connection_instance", &prev_connection_instance);
|
||||
uci_foreach_option_eq("cwmp_xmpp", "xmpp_connection_server", "id_connection", prev_connection_instance, s) {
|
||||
iconnectionserver = handle_update_instance(1, dmctx, &iconnectionserver_last, update_instance_alias, 3, s, "connection_server_instance", "connection_server_instance_alias");
|
||||
iconnectionserver = handle_update_instance(2, dmctx, &iconnectionserver_last, update_instance_alias, 3, s, "connection_server_instance", "connection_server_instance_alias");
|
||||
if (DM_LINK_INST_OBJ(dmctx, parent_node, (void *)s, iconnectionserver) == DM_STOP)
|
||||
break;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue