- netconfig_vconf_get_int(VCONFKEY_NETWORK_WIFI_PKT_TOTAL_SNT, &val);
- prev_tx = (guint64)val;
-
- netconfig_vconf_get_int(VCONFKEY_NETWORK_WIFI_PKT_TOTAL_RCV, &val);
- prev_rx = (guint64)val;
-
- total_tx = prev_tx + cur_tx;
- total_rx = prev_rx + cur_rx;
-
- netconfig_set_vconf_int(VCONFKEY_NETWORK_WIFI_PKT_TOTAL_SNT, (int)total_tx);
- netconfig_set_vconf_int(VCONFKEY_NETWORK_WIFI_PKT_TOTAL_RCV, (int)total_rx);
-}
-
-static void wifi_statistics_update_state(wifi_state_notifier_s *notifier,
- char *service, wifi_service_state_e state, void *user_data)
-{
- guint64 tx = 0, rx = 0;
- guint64 last_tx = 0, last_rx = 0;
- int val = 0;
- static wifi_service_state_e prev_state = NETCONFIG_WIFI_UNKNOWN;
-
- if (prev_state == NETCONFIG_WIFI_UNKNOWN) {
- netconfig_set_vconf_int(VCONFKEY_NETWORK_WIFI_PKT_LAST_SNT, 0);
- netconfig_set_vconf_int(VCONFKEY_NETWORK_WIFI_PKT_LAST_RCV, 0);
-
- prev_state = NETCONFIG_WIFI_IDLE;
- return;
- }
-
- if (netconfig_wifi_get_bytes_statistics(&tx, &rx) != TRUE)
- return;
-
- if (state == NETCONFIG_WIFI_CONNECTED) {
- last_tx = tx;
- last_rx = rx;
- } else {
- if (prev_state != NETCONFIG_WIFI_CONNECTED)
- return;
-
- netconfig_vconf_get_int(VCONFKEY_NETWORK_WIFI_PKT_LAST_SNT, &val);
- last_tx = (guint64)val;
-
- netconfig_vconf_get_int(VCONFKEY_NETWORK_WIFI_PKT_LAST_RCV, &val);
- last_rx = (guint64)val;
-
- last_tx = tx < last_tx ? 0 : tx - last_tx;
- last_rx = rx < last_rx ? 0 : rx - last_rx;
- }
-
- netconfig_set_vconf_int(VCONFKEY_NETWORK_WIFI_PKT_LAST_SNT, (int)last_tx);
- netconfig_set_vconf_int(VCONFKEY_NETWORK_WIFI_PKT_LAST_RCV, (int)last_rx);
-
- prev_state = state;