To do: - add WPA support to Linux Wireless Extensions - add support for other drivers - implement GUI for WPA Supplicant/Xsupplicant/iwconfig/iwlist (easy to use configuration and network stats, etc.) - add support for opportunistic PMKSA caching - hostap: try other roaming modes NOTE: current mode (manual roaming) does not really roam at all.. Firmware did not notice the current AP disappearing.. - EAP-MSCHAPv2: add support for password changing - add support for WPA with ap_scan=0 (update selected cipher etc. based on AssocInfo; make sure these match with configuration) - add driver interface for using wpa_supplicant with wired interface (or a separate program using EAPOL library) - wpa_supplicant.conf g+rw so that frontend can change wpa_supplicant.conf and RECONFIG wpa_supplicant (?) (or wpa_supplicant changes .conf and ctrl interface gets support for changing config?) - optional security separation (build time option): run EAPOL state machines as non-root (need to add something like socketpair between privileged root process and non-root handler; send EAPOL packets between processes and send keying data from non-root -> privileged) EAPOL-Key processing (WPA & WEP keys) could be in privileged part at least in the beginning; some parts might end up being moved to non-root part eventually - consider closing smart card / PCSC connection when EAP-SIM/EAP-AKA authentication has been completed (cache scard data based on serial#(?) and try to optimize next connection if the same card is present for next auth) - EAP-AKA: AT_CHECKCODE - EAP-SIM/AKA: AT_RESULT_IND - abort auth if EAP method initialization fails and there no other accepted methods (i.e., do not send NAK for the same method that just failed) - on disconnect event, could try to associate with another AP if one is present in scan results; would need to update scan results periodically.. - add flag scan_requested and only try to re-associate if this is set when new scan results are received; this would allow background scans without triggering re-assoc.. - if driver/hw is not WPA2 capable, must remove WPA_PROTO_RSN flag from ssid->proto fields to avoid detecting downgrade attacks when the driver is not reporting RSN IE, but msg 3/4 has one - read CA certs from PFX file - EAP-SIM/AKA: if SIM reader initialization fails, do not start authentication - Cisco AP and non-zero keyidx for unicast -> map to broadcast (actually, this already works with driver_ndis; so maybe just change driver_*.c to do the mapping for drivers that cannot handle non-zero keyidx for unicast) - IEEE 802.1X and key update with driver_ndis?? wpa_supplicant did not seem to see unencrypted EAPOL-Key frames at all.. - update developer.txt to match with current implementation (driver API updates, EAP methods) - driver_wext.c and driver that does not support WPA -> fix plaintext, WEP, and IEEE 802.1X operation (e.g., use capabilities to report no support for WPA)