Hosts: Align with new topology output

This commit is contained in:
Amin Ben Ramdhane 2022-04-12 13:19:29 +01:00
parent 49113b0630
commit 2ab34bd42d
2 changed files with 18 additions and 4 deletions

View file

@ -103,8 +103,10 @@ static int get_HostsHost_DHCPClient(char *refparam, struct dmctx *ctx, void *dat
static int get_HostsHost_AssociatedDevice(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
char *linker = dmjson_get_value((json_object *)data, 1, "macaddr");
char *linker = dmjson_get_value((json_object *)data, 1, "link_macaddr");
adm_entry_get_linker_param(ctx, "Device.WiFi.AccessPoint.", linker, value);
if (!(*value) || (*value)[0] == 0)
adm_entry_get_linker_param(ctx, "Device.WiFi.DataElements.Network.Device.", linker, value);
return 0;
}
@ -112,9 +114,15 @@ static int get_HostsHost_Layer1Interface(char *refparam, struct dmctx *ctx, void
{
char *linker = dmjson_get_value((json_object *)data, 1, "device");
char *type = dmjson_get_value((json_object *)data, 1, "interface_type");
if (DM_LSTRCMP(type, "Wi-Fi") == 0)
if (DM_LSTRCMP(type, "Wi-Fi") == 0) {
adm_entry_get_linker_param(ctx, "Device.WiFi.Radio.", linker, value);
else
if (!(*value) || (*value)[0] == 0) {
char *device = dmjson_get_value((json_object *)data, 1, "parent_device");
struct uci_section *iface_s = get_dup_section_in_config_opt("wireless", "wifi-iface", "ifname", device);
dmuci_get_value_by_section_string(iface_s, "device", &linker);
adm_entry_get_linker_param(ctx, "Device.WiFi.Radio.", linker, value);
}
} else
adm_entry_get_linker_param(ctx, "Device.Ethernet.Interface.", linker, value);
return 0;
}

View file

@ -80,6 +80,12 @@ static int get_linker_wfdata_Device(char *refparam, struct dmctx *dmctx, void *d
return 0;
}
static int get_linker_wfdata_BSS_STA(char *refparam, struct dmctx *dmctx, void *data, char *instance, char **linker)
{
*linker = data ? dmjson_get_value((json_object *)data, 1, "MACAddress") : "";
return 0;
}
/**************************************************************************
* INIT
***************************************************************************/
@ -7163,7 +7169,7 @@ DMOBJ tWiFiDataElementsNetworkDeviceRadioBSSObj[] = {
/* OBJ, permission, addobj, delobj, checkdep, browseinstobj, nextdynamicobj, dynamicleaf, nextobj, leaf, linker, bbfdm_type, uniqueKeys, version*/
// {"QMDescriptor", &DMREAD, NULL, NULL, NULL, browseWiFiDataElementsNetworkDeviceRadioBSSQMDescriptorInst, NULL, NULL, NULL, tWiFiDataElementsNetworkDeviceRadioBSSQMDescriptorParams, NULL, BBFDM_BOTH, LIST_KEY{"ClientMAC", NULL}, "2.15"},
{"MultiAPSteering", &DMREAD, NULL, NULL, NULL, NULL, NULL, NULL, NULL, tWiFiDataElementsNetworkDeviceRadioBSSMultiAPSteeringParams, NULL, BBFDM_BOTH, NULL, "2.15"},
{"STA", &DMREAD, NULL, NULL, NULL, browseWiFiDataElementsNetworkDeviceRadioBSSSTAInst, NULL, NULL, tWiFiDataElementsNetworkDeviceRadioBSSSTAObj, tWiFiDataElementsNetworkDeviceRadioBSSSTAParams, NULL, BBFDM_BOTH, LIST_KEY{"MACAddress", NULL}, "2.13"},
{"STA", &DMREAD, NULL, NULL, NULL, browseWiFiDataElementsNetworkDeviceRadioBSSSTAInst, NULL, NULL, tWiFiDataElementsNetworkDeviceRadioBSSSTAObj, tWiFiDataElementsNetworkDeviceRadioBSSSTAParams, get_linker_wfdata_BSS_STA, BBFDM_BOTH, LIST_KEY{"MACAddress", NULL}, "2.13"},
{0}
};