1252190Srpaulo/* 2252190Srpaulo * Common driver-related functions 3252190Srpaulo * Copyright (c) 2003-2011, Jouni Malinen <j@w1.fi> 4252190Srpaulo * 5252190Srpaulo * This software may be distributed under the terms of the BSD license. 6252190Srpaulo * See README for more details. 7252190Srpaulo */ 8252190Srpaulo 9252190Srpaulo#include "includes.h" 10252190Srpaulo#include "utils/common.h" 11252190Srpaulo#include "driver.h" 12252190Srpaulo 13252190Srpaulovoid wpa_scan_results_free(struct wpa_scan_results *res) 14252190Srpaulo{ 15252190Srpaulo size_t i; 16252190Srpaulo 17252190Srpaulo if (res == NULL) 18252190Srpaulo return; 19252190Srpaulo 20252190Srpaulo for (i = 0; i < res->num; i++) 21252190Srpaulo os_free(res->res[i]); 22252190Srpaulo os_free(res->res); 23252190Srpaulo os_free(res); 24252190Srpaulo} 25252190Srpaulo 26252190Srpaulo 27252190Srpauloconst char * event_to_string(enum wpa_event_type event) 28252190Srpaulo{ 29252190Srpaulo#define E2S(n) case EVENT_ ## n: return #n 30252190Srpaulo switch (event) { 31252190Srpaulo E2S(ASSOC); 32252190Srpaulo E2S(DISASSOC); 33252190Srpaulo E2S(MICHAEL_MIC_FAILURE); 34252190Srpaulo E2S(SCAN_RESULTS); 35252190Srpaulo E2S(ASSOCINFO); 36252190Srpaulo E2S(INTERFACE_STATUS); 37252190Srpaulo E2S(PMKID_CANDIDATE); 38252190Srpaulo E2S(STKSTART); 39252190Srpaulo E2S(TDLS); 40252190Srpaulo E2S(FT_RESPONSE); 41252190Srpaulo E2S(IBSS_RSN_START); 42252190Srpaulo E2S(AUTH); 43252190Srpaulo E2S(DEAUTH); 44252190Srpaulo E2S(ASSOC_REJECT); 45252190Srpaulo E2S(AUTH_TIMED_OUT); 46252190Srpaulo E2S(ASSOC_TIMED_OUT); 47252190Srpaulo E2S(FT_RRB_RX); 48252190Srpaulo E2S(WPS_BUTTON_PUSHED); 49252190Srpaulo E2S(TX_STATUS); 50252190Srpaulo E2S(RX_FROM_UNKNOWN); 51252190Srpaulo E2S(RX_MGMT); 52252190Srpaulo E2S(RX_ACTION); 53252190Srpaulo E2S(REMAIN_ON_CHANNEL); 54252190Srpaulo E2S(CANCEL_REMAIN_ON_CHANNEL); 55252190Srpaulo E2S(MLME_RX); 56252190Srpaulo E2S(RX_PROBE_REQ); 57252190Srpaulo E2S(NEW_STA); 58252190Srpaulo E2S(EAPOL_RX); 59252190Srpaulo E2S(SIGNAL_CHANGE); 60252190Srpaulo E2S(INTERFACE_ENABLED); 61252190Srpaulo E2S(INTERFACE_DISABLED); 62252190Srpaulo E2S(CHANNEL_LIST_CHANGED); 63252190Srpaulo E2S(INTERFACE_UNAVAILABLE); 64252190Srpaulo E2S(BEST_CHANNEL); 65252190Srpaulo E2S(UNPROT_DEAUTH); 66252190Srpaulo E2S(UNPROT_DISASSOC); 67252190Srpaulo E2S(STATION_LOW_ACK); 68252190Srpaulo E2S(P2P_DEV_FOUND); 69252190Srpaulo E2S(P2P_GO_NEG_REQ_RX); 70252190Srpaulo E2S(P2P_GO_NEG_COMPLETED); 71252190Srpaulo E2S(P2P_PROV_DISC_REQUEST); 72252190Srpaulo E2S(P2P_PROV_DISC_RESPONSE); 73252190Srpaulo E2S(P2P_SD_REQUEST); 74252190Srpaulo E2S(P2P_SD_RESPONSE); 75252190Srpaulo E2S(IBSS_PEER_LOST); 76252190Srpaulo E2S(DRIVER_GTK_REKEY); 77252190Srpaulo E2S(SCHED_SCAN_STOPPED); 78252190Srpaulo E2S(DRIVER_CLIENT_POLL_OK); 79252190Srpaulo E2S(EAPOL_TX_STATUS); 80252190Srpaulo E2S(CH_SWITCH); 81252190Srpaulo E2S(WNM); 82252190Srpaulo } 83252190Srpaulo 84252190Srpaulo return "UNKNOWN"; 85252190Srpaulo#undef E2S 86252190Srpaulo} 87