Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1f808801 authored by San Mehat's avatar San Mehat Committed by The Android Open Source Project
Browse files

am d0290ead: nexus: Fix SupplicantStatus decoding

Merge commit 'd0290ead'

* commit 'd0290ead':
  nexus: Fix SupplicantStatus decoding
  nexus: Less verbosity in TiwlanEventListener for now
parents f9764da0 d0290ead
Loading
Loading
Loading
Loading
+26 −7
Original line number Diff line number Diff line
@@ -17,7 +17,7 @@
#include <stdlib.h>
#include <string.h>

#define LOG_TAG "SupplicantState"
#define LOG_TAG "SupplicantStatus"
#include <cutils/log.h>

#include "SupplicantStatus.h"
@@ -52,18 +52,37 @@ SupplicantStatus *SupplicantStatus::createStatus(char *data, int len) {
    char *next = data;
    char *line;
    while((line = strsep(&next, "\n"))) {
        char *token = strsep(&next, "=");
        char *value = strsep(&next, "=");

        char *line_next =  line;
        char *token = strsep(&line_next, "=");
        char *value = strsep(&line_next, "=");
        if (!strcmp(token, "bssid"))
            bssid = strdup(value);
        else if (!strcmp(token, "ssid"))
            ssid = strdup(value);
        else if (!strcmp(token, "id"))
            id = atoi(value);
        else if (!strcmp(token, "wpa_state"))
            state = atoi(value);
        else if (!strcmp(token, "wpa_state")) {
            if (!strcmp(value, "DISCONNECTED"))
                state = SupplicantState::DISCONNECTED;
            else if (!strcmp(value, "INACTIVE"))
                state = SupplicantState::INACTIVE;
            else if (!strcmp(value, "SCANNING"))
                state = SupplicantState::SCANNING;
            else if (!strcmp(value, "ASSOCIATING"))
                state = SupplicantState::ASSOCIATING;
            else if (!strcmp(value, "ASSOCIATED"))
                state = SupplicantState::ASSOCIATED;
            else if (!strcmp(value, "FOURWAY_HANDSHAKE"))
                state = SupplicantState::FOURWAY_HANDSHAKE;
            else if (!strcmp(value, "GROUP_HANDSHAKE"))
                state = SupplicantState::GROUP_HANDSHAKE;
            else if (!strcmp(value, "COMPLETED"))
                state = SupplicantState::COMPLETED;
            else if (!strcmp(value, "IDLE"))
                state = SupplicantState::IDLE;
            else 
                LOGE("Unknown supplicant state '%s'", value);
        } else
            LOGD("Ignoring unsupported status token '%s'", token);
    }

+4 −4
Original line number Diff line number Diff line
@@ -45,13 +45,13 @@ bool TiwlanEventListener::onDataAvailable(SocketClient *cli) {
    if (data->event_type == IPC_EVENT_LINK_SPEED) {
        uint32_t *spd = (uint32_t *) data->buffer;
        *spd /= 2;
        LOGD("Link speed = %u MB/s", *spd);
//        LOGD("Link speed = %u MB/s", *spd);
    } else if (data->event_type == IPC_EVENT_LOW_SNR) {
        LOGD("Low signal/noise ratio");
        LOGW("Low signal/noise ratio");
    } else if (data->event_type == IPC_EVENT_LOW_RSSI) {
        LOGD("Low RSSI");
        LOGW("Low RSSI");
    } else {
        LOGD("Dropping unhandled driver event %d", data->event_type);
//        LOGD("Dropping unhandled driver event %d", data->event_type);
    }

    // TODO: Tell WifiController about the event