GainSpan Wi-Fi library see: http://mbed.org/users/gsfan/notebook/gainspan_wifi/
Dependents: GSwifi_httpd GSwifi_websocket GSwifi_tcpclient GSwifi_tcpserver ... more
Fork of GSwifi by
GainSpan Wi-Fi library
The GS1011 is an ultra low power 802.11b wireless module from GainSpan.
see: http://mbed.org/users/gsfan/notebook/gainspan_wifi/
ゲインスパン Wi-Fi モジュール ライブラリ
ゲインスパン社の低電力 Wi-Fiモジュール(無線LAN) GS1011 シリーズ用のライブラリです。
解説: http://mbed.org/users/gsfan/notebook/gainspan_wifi/
Diff: GSwifi.cpp
- Revision:
- 31:0abdc584823d
- Parent:
- 29:1c4419512941
- Child:
- 33:b5a5a1e6325f
diff -r f3e9053d9b46 -r 0abdc584823d GSwifi.cpp --- a/GSwifi.cpp Tue Feb 26 03:31:20 2013 +0000 +++ b/GSwifi.cpp Tue Feb 26 06:05:11 2013 +0000 @@ -500,11 +500,11 @@ _reconnect_count = 0; _sec = sec; if (ssid) { - if (!_ssid) _ssid = new char[sizeof(ssid) + 1]; + if (!_ssid) _ssid = new char[strlen(ssid) + 1]; strcpy(_ssid, ssid); } if (pass) { - if (!_pass) _pass = new char[sizeof(pass) + 1]; + if (!_pass) _pass = new char[strlen(pass) + 1]; strcpy(_pass, pass); } } @@ -923,6 +923,7 @@ strncmp(buf, "Disassociated", 13) == 0 || strncmp(buf, "Disassociation Event", 20) == 0 || strncmp(buf, "UnExpected Warm Boot", 20) == 0 || + strncmp(buf, "APP Reset-APP SW Reset", 22) == 0 || strncmp(buf, "APP Reset-Wlan Except", 21) == 0 ) { _connect = false; for (i = 0; i < 16; i ++) { @@ -961,7 +962,7 @@ break; case GSRES_WPS: if (_gs_flg == 0 && strncmp(buf, "SSID=", 5) == 0) { - if (!_ssid) _ssid = new char[sizeof(strlen(&buf[5])) + 1]; + if (!_ssid) _ssid = new char[strlen(&buf[5]) + 1]; strcpy(_ssid, &buf[5]); _gs_flg ++; } else @@ -969,7 +970,7 @@ _gs_flg ++; } else if (_gs_flg == 2 && strncmp(buf, "PASSPHRASE=", 11) == 0) { - if (!_pass) _pass = new char[sizeof(strlen(&buf[11])) + 1]; + if (!_pass) _pass = new char[strlen(&buf[11]) + 1]; strcpy(_pass, &buf[11]); _gs_flg = -1; } @@ -1020,7 +1021,7 @@ } break; case GSRES_HTTP: - if (buf[0] >= '0' && buf[0] <= 'F') { + if (buf[0] >= '0' && buf[0] <= 'F' && buf[1] == 0) { _cid = x2i(buf[0]); _gs_flg = -1; }