mirror of
https://dev.iopsys.eu/bbf/icwmp.git
synced 2026-03-05 00:41:29 +01:00
Ticket refs #14137: Unable to retrieve "ErrorsSent", "ErrorsReceived", "DiscardPacketsSent", "DiscardPacketsReceived" parameters for Radios and Ethernet Interfaces via ACS
This commit is contained in:
parent
1546cf5cbe
commit
cc552c8ef2
4 changed files with 92 additions and 1 deletions
|
|
@ -54,6 +54,10 @@ DMLEAF tEthernetStatParams[] = {
|
|||
{"BytesReceived", &DMREAD, DMT_UNINT, get_eth_port_stats_rx_bytes, NULL, NULL, NULL},
|
||||
{"PacketsSent", &DMREAD, DMT_UNINT, get_eth_port_stats_tx_packets, NULL, NULL, NULL},
|
||||
{"PacketsReceived", &DMREAD, DMT_UNINT, get_eth_port_stats_rx_packets, NULL, NULL, NULL},
|
||||
{"ErrorsSent", &DMREAD, DMT_UNINT, get_eth_port_stats_tx_errors, NULL, NULL, NULL},
|
||||
{"ErrorsReceived", &DMREAD, DMT_UNINT, get_eth_port_stats_rx_errors, NULL, NULL, NULL},
|
||||
{"DiscardPacketsSent", &DMREAD, DMT_UNINT, get_eth_port_stats_tx_discardpackets, NULL, NULL, NULL},
|
||||
{"DiscardPacketsReceived", &DMREAD, DMT_UNINT, get_eth_port_stats_rx_discardpackets, NULL, NULL, NULL},
|
||||
{0}
|
||||
};
|
||||
|
||||
|
|
@ -332,6 +336,46 @@ int get_eth_port_stats_rx_packets(char *refparam, struct dmctx *ctx, void *data,
|
|||
return 0;
|
||||
}
|
||||
|
||||
int get_eth_port_stats_tx_errors(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
|
||||
{
|
||||
json_object *res;
|
||||
|
||||
dmubus_call("network.device", "status", UBUS_ARGS{{"name", ((struct eth_port_args *)data)->ifname, String}}, 1, &res);
|
||||
DM_ASSERT(res, *value = "");
|
||||
*value = dmjson_get_value(res, 2, "statistics", "tx_errors");
|
||||
return 0;
|
||||
}
|
||||
|
||||
int get_eth_port_stats_rx_errors(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
|
||||
{
|
||||
json_object *res;
|
||||
|
||||
dmubus_call("network.device", "status", UBUS_ARGS{{"name", ((struct eth_port_args *)data)->ifname, String}}, 1, &res);
|
||||
DM_ASSERT(res, *value = "");
|
||||
*value = dmjson_get_value(res, 2, "statistics", "rx_errors");
|
||||
return 0;
|
||||
}
|
||||
|
||||
int get_eth_port_stats_tx_discardpackets(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
|
||||
{
|
||||
json_object *res;
|
||||
|
||||
dmubus_call("network.device", "status", UBUS_ARGS{{"name", ((struct eth_port_args *)data)->ifname, String}}, 1, &res);
|
||||
DM_ASSERT(res, *value = "");
|
||||
*value = dmjson_get_value(res, 2, "statistics", "tx_dropped");
|
||||
return 0;
|
||||
}
|
||||
|
||||
int get_eth_port_stats_rx_discardpackets(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
|
||||
{
|
||||
json_object *res;
|
||||
|
||||
dmubus_call("network.device", "status", UBUS_ARGS{{"name", ((struct eth_port_args *)data)->ifname, String}}, 1, &res);
|
||||
DM_ASSERT(res, *value = "");
|
||||
*value = dmjson_get_value(res, 2, "statistics", "rx_dropped");
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*************************************************************
|
||||
* ENTRY METHOD
|
||||
/*************************************************************/
|
||||
|
|
|
|||
|
|
@ -33,6 +33,10 @@ int get_eth_port_stats_tx_bytes(char *refparam, struct dmctx *ctx, void *data, c
|
|||
int get_eth_port_stats_rx_bytes(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value);
|
||||
int get_eth_port_stats_tx_packets(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value);
|
||||
int get_eth_port_stats_rx_packets(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value);
|
||||
int get_eth_port_stats_tx_errors(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value);
|
||||
int get_eth_port_stats_rx_errors(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value);
|
||||
int get_eth_port_stats_tx_discardpackets(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value);
|
||||
int get_eth_port_stats_rx_discardpackets(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value);
|
||||
|
||||
int set_eth_port_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action);
|
||||
int set_eth_port_enable(char *refparam, struct dmctx *ctx, void *data, char *instance, char *value, int action);
|
||||
|
|
|
|||
|
|
@ -69,6 +69,10 @@ DMLEAF tWifiRadioStatsParams[] = {
|
|||
{"BytesReceived", &DMREAD, DMT_UNINT, get_radio_statistics_rx_bytes, NULL, NULL, NULL},
|
||||
{"PacketsSent", &DMREAD, DMT_UNINT, get_radio_statistics_tx_packets, NULL, NULL, NULL},
|
||||
{"PacketsReceived", &DMREAD, DMT_UNINT, get_radio_statistics_rx_packets, NULL, NULL, NULL},
|
||||
{"ErrorsSent", &DMREAD, DMT_UNINT, get_radio_statistics_tx_errors, NULL, NULL, NULL},
|
||||
{"ErrorsReceived", &DMREAD, DMT_UNINT, get_radio_statistics_rx_errors, NULL, NULL, NULL},
|
||||
{"DiscardPacketsSent", &DMREAD, DMT_UNINT, get_radio_statistics_tx_discardpackets, NULL, NULL, NULL},
|
||||
{"DiscardPacketsReceived", &DMREAD, DMT_UNINT, get_radio_statistics_rx_discardpackets, NULL, NULL, NULL},
|
||||
{0}
|
||||
};
|
||||
|
||||
|
|
@ -613,7 +617,6 @@ int set_radio_auto_channel_enable(char *refparam, struct dmctx *ctx, void *data,
|
|||
int get_radio_statistics_tx_bytes(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
|
||||
{
|
||||
json_object *res;
|
||||
|
||||
dmubus_call("network.device", "status", UBUS_ARGS{{"name", section_name(((struct wifi_radio_args *)data)->wifi_radio_sec), String}}, 1, &res);
|
||||
DM_ASSERT(res, *value = "");
|
||||
*value = dmjson_get_value(res, 2, "statistics", "tx_bytes");
|
||||
|
|
@ -647,6 +650,42 @@ int get_radio_statistics_rx_packets(char *refparam, struct dmctx *ctx, void *dat
|
|||
return 0;
|
||||
}
|
||||
|
||||
int get_radio_statistics_tx_errors(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
|
||||
{
|
||||
json_object *res;
|
||||
dmubus_call("network.device", "status", UBUS_ARGS{{"name", section_name(((struct wifi_radio_args *)data)->wifi_radio_sec), String}}, 1, &res);
|
||||
DM_ASSERT(res, *value = "");
|
||||
*value = dmjson_get_value(res, 2, "statistics", "tx_errors");
|
||||
return 0;
|
||||
}
|
||||
|
||||
int get_radio_statistics_rx_errors(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
|
||||
{
|
||||
json_object *res;
|
||||
dmubus_call("network.device", "status", UBUS_ARGS{{"name", section_name(((struct wifi_radio_args *)data)->wifi_radio_sec), String}}, 1, &res);
|
||||
DM_ASSERT(res, *value = "");
|
||||
*value = dmjson_get_value(res, 2, "statistics", "rx_errors");
|
||||
return 0;
|
||||
}
|
||||
|
||||
int get_radio_statistics_tx_discardpackets(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
|
||||
{
|
||||
json_object *res;
|
||||
dmubus_call("network.device", "status", UBUS_ARGS{{"name", section_name(((struct wifi_radio_args *)data)->wifi_radio_sec), String}}, 1, &res);
|
||||
DM_ASSERT(res, *value = "");
|
||||
*value = dmjson_get_value(res, 2, "statistics", "tx_dropped");
|
||||
return 0;
|
||||
}
|
||||
|
||||
int get_radio_statistics_rx_discardpackets(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
|
||||
{
|
||||
json_object *res;
|
||||
dmubus_call("network.device", "status", UBUS_ARGS{{"name", section_name(((struct wifi_radio_args *)data)->wifi_radio_sec), String}}, 1, &res);
|
||||
DM_ASSERT(res, *value = "");
|
||||
*value = dmjson_get_value(res, 2, "statistics", "rx_dropped");
|
||||
return 0;
|
||||
}
|
||||
|
||||
int get_ssid_statistics_tx_bytes(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
|
||||
{
|
||||
json_object *res;
|
||||
|
|
|
|||
|
|
@ -78,6 +78,10 @@ int get_radio_statistics_tx_bytes(char *refparam, struct dmctx *ctx, void *data,
|
|||
int get_radio_statistics_rx_bytes(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value);
|
||||
int get_radio_statistics_tx_packets(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value);
|
||||
int get_radio_statistics_rx_packets(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value);
|
||||
int get_radio_statistics_tx_errors(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value);
|
||||
int get_radio_statistics_rx_errors(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value);
|
||||
int get_radio_statistics_tx_discardpackets(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value);
|
||||
int get_radio_statistics_rx_discardpackets(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value);
|
||||
int get_ssid_alias(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value);
|
||||
int get_wifi_enable(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value);
|
||||
int get_wifi_status(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue