Socket interface for C027Interface. Implements the NetworkSocketAPI
Dependencies: C027_Support
Dependents: HelloC027Interface U_Blox_DeviceConnector U_Blox_DeviceConnector U-Blox_Client
Fork of LWIPInterface by
Diff: C027Interface.cpp
- Revision:
- 17:3f1e33e638a4
- Parent:
- 16:eaf31bd133f0
- Child:
- 18:d2ad48926718
diff -r eaf31bd133f0 -r 3f1e33e638a4 C027Interface.cpp --- a/C027Interface.cpp Thu Feb 02 16:17:35 2017 +0000 +++ b/C027Interface.cpp Thu Feb 02 21:16:38 2017 +0000 @@ -25,7 +25,20 @@ strcpy(_pin, simpin); } -int C027Interface::connect(const char *apn, const char *username, const char *password) +nsapi_error_t C027Interface::set_credentials(const char *apn, const char *username, const char *password) +{ + memset(_apn, 0, sizeof(_apn)); + strncpy(_apn, apn, sizeof(apn)); + + memset(_username, 0, sizeof(_username)); + strncpy(_username, username, sizeof(_username)); + + memset(_password, 0, sizeof(_password)); + strncpy(_password, password, sizeof(_password)); + return 0; +} + +nsapi_error_t C027Interface::connect() { // create the modem _mdm = new MDMSerial; @@ -53,7 +66,7 @@ if (mdmOk) { // join the internet connection - MDMParser::IP ip = _mdm->join(apn, username, password); + MDMParser::IP ip = _mdm->join(_apn, _username, _password); _ip_address.set_ip_bytes(&ip, NSAPI_IPv4); mdmOk = (ip != NOIP); } @@ -61,6 +74,13 @@ return mdmOk ? 0 : NSAPI_ERROR_DEVICE_ERROR; } +nsapi_error_t C027Interface::connect(const char *apn, const char *username, const char *password) +{ + + set_credentials(apn, username, password); + return connect(); +} + int C027Interface::disconnect() { if (!_mdm->disconnect()) { @@ -137,7 +157,7 @@ return 0; } -int C027Interface::socket_accept(void **handle, void *server) +nsapi_error_t C027Interface::socket_accept(nsapi_socket_t server, nsapi_socket_t *handle, SocketAddress *address) { return NSAPI_ERROR_UNSUPPORTED; }