My fork
Dependencies: WncControllerK64F
Fork of WNCInterface by
Diff: Socket/Socket.cpp
- Revision:
- 7:fded23f50479
- Parent:
- 1:e511ea8d39d5
- Child:
- 9:9f0578ff157a
--- a/Socket/Socket.cpp Wed Sep 28 00:17:57 2016 +0000 +++ b/Socket/Socket.cpp Thu Oct 06 21:17:18 2016 +0000 @@ -48,7 +48,10 @@ int Socket::init(int timeout) { _timeout = timeout; - return (WNCInterface::_pwnc->getWncNetworkingStats(&WNCInterface::myNetStats))? 0:-1; + M_LOCK; + int ret = WNCInterface::_pwnc->getWncNetworkingStats(&WNCInterface::myNetStats)? 0:-1; + M_ULOCK; + return ret; } // @@ -67,7 +70,7 @@ rslt = std::sscanf(url, "%3u.%3u.%3u.%3u", (unsigned int*)&address[0], (unsigned int*)&address[1], (unsigned int*)&address[2], (unsigned int*)&address[3]); - + M_LOCK; if (rslt == 4) rslt = WNCInterface::_pwnc->setIpAddr(0,url); else @@ -77,6 +80,7 @@ _sock_type = type; //resolved the URL indicate socket 0 is open rslt = WNCInterface::_pwnc->openSocket(0, port, (_sock_type==SOCK_STREAM)? 1:0, _timeout); } + M_ULOCK; return rslt; } @@ -92,8 +96,10 @@ if( WNCInterface::_pwnc->getWncStatus() == FATAL_FLAG ) FATAL_WNC_ERROR(fail); - - return !WNCInterface::_pwnc->closeSocket(0); + M_LOCK; + int ret = !WNCInterface::_pwnc->closeSocket(0); + M_ULOCK; + return ret; } void Socket::set_blocking(bool blocking, unsigned int timeout) { @@ -102,9 +108,10 @@ if( WNCInterface::_pwnc->getWncStatus() == FATAL_FLAG ) FATAL_WNC_ERROR(void); - + M_LOCK; WNCInterface::_pwnc->setReadRetryWait(0, 0); WNCInterface::_pwnc->setReadRetries(0, 0); + M_ULOCK; }