1. 程式人生 > >WIFI_仿手機寫wifi應用程式_WDS

WIFI_仿手機寫wifi應用程式_WDS

2-1.1_15節_使用WIFI網絡卡6_仿手機寫wifi操作程式
==============================

1. 仿手機寫一個WIFI操作程式,作為STA,有這幾個功能:
a. 自動掃描WIFI熱點
b. 點選某個WIFI熱點後會去連線它, 必要(非open的)時讓你輸入密碼
c. 曾經連線過的WIFI熱點會保留它的密碼等資訊, 以後會自動連線

2.wpa_supplicant(service) <======== wpa_cli(client)   wpa_cli通過socket去連線wpa_supplicant
依照wpa_cli,給wpa_supplicant發各種命令,比如:
scan
add_network
set_network
select_network
save_config

$ wpa_cli
> status 檢視連線狀態,有AP的熱點名等
> scan 掃描AP
> scan_results 掃描的結果
> add_network 連線熱點
...
> quiet

$ wpa_cli status
$ wpa_cli scan
$ wpa_cli scan_results
$ wpa_cli add_network

3.當執行wpa_supplicant時就會在/var/run/wpa_supplicant/下建立檔案wlan0
ls /var/run/wpa_supplicant/ -l
srwxrwx--- 1 0 0 0 Nov 22 2013 wlan0
之後wpa_cli和wpa_supplicant之間就可以通過這個socket檔案進行通訊


wpa_cli.c中的wpa_cli_open_connection()就是去開啟這個socket檔案,通過wpa_request()向wpa_supplicant傳送請求命令得到結果。
Linux下是通過send()發的,Windows下是通過Writefile()發的

4.從Uboot中拷貝過來parse_line() main_loop()中的。