mirror of
				https://github.com/eledio-devices/thirdparty-AsyncTCPSock.git
				synced 2025-10-31 08:42:38 +01:00 
			
		
		
		
	Fix for absence of lwip_*_r functions in Arduino ESP 2.0.0-alpha
This commit is contained in:
		| @@ -482,12 +482,12 @@ bool AsyncClient::connect(IPAddress ip, uint16_t port) | |||||||
| #endif | #endif | ||||||
|  |  | ||||||
|     //Serial.printf("DEBUG: connect to %08x port %d using IP... ", ip_addr, port); |     //Serial.printf("DEBUG: connect to %08x port %d using IP... ", ip_addr, port); | ||||||
|     errno = 0; r = lwip_connect_r(sockfd, (struct sockaddr*)&serveraddr, sizeof(serveraddr)); |     errno = 0; r = ::connect(sockfd, (struct sockaddr*)&serveraddr, sizeof(serveraddr)); | ||||||
|     //Serial.printf("r=%d errno=%d\r\n", r, errno); |     //Serial.printf("r=%d errno=%d\r\n", r, errno); | ||||||
|     if (r < 0 && errno != EINPROGRESS) { |     if (r < 0 && errno != EINPROGRESS) { | ||||||
|         //Serial.println("\t(connect failed)"); |         //Serial.println("\t(connect failed)"); | ||||||
|         log_e("connect on fd %d, errno: %d, \"%s\"", sockfd, errno, strerror(errno)); |         log_e("connect on fd %d, errno: %d, \"%s\"", sockfd, errno, strerror(errno)); | ||||||
|         close(sockfd); |         ::close(sockfd); | ||||||
|         return false; |         return false; | ||||||
|     } |     } | ||||||
|  |  | ||||||
| @@ -735,7 +735,7 @@ void AsyncClient::_close(void) | |||||||
|     //Serial.print("AsyncClient::_close: "); Serial.println(_socket); |     //Serial.print("AsyncClient::_close: "); Serial.println(_socket); | ||||||
|     xSemaphoreTakeRecursive(_asyncsock_mutex, (TickType_t)portMAX_DELAY); |     xSemaphoreTakeRecursive(_asyncsock_mutex, (TickType_t)portMAX_DELAY); | ||||||
|     _conn_state = 0; |     _conn_state = 0; | ||||||
|     lwip_close_r(_socket); |     ::close(_socket); | ||||||
|     _socket = -1; |     _socket = -1; | ||||||
|     xSemaphoreGiveRecursive(_asyncsock_mutex); |     xSemaphoreGiveRecursive(_asyncsock_mutex); | ||||||
|  |  | ||||||
| @@ -748,7 +748,7 @@ void AsyncClient::_error(int8_t err) | |||||||
| { | { | ||||||
|     xSemaphoreTakeRecursive(_asyncsock_mutex, (TickType_t)portMAX_DELAY); |     xSemaphoreTakeRecursive(_asyncsock_mutex, (TickType_t)portMAX_DELAY); | ||||||
|     _conn_state = 0; |     _conn_state = 0; | ||||||
|     lwip_close_r(_socket); |     ::close(_socket); | ||||||
|     _socket = -1; |     _socket = -1; | ||||||
|     xSemaphoreGiveRecursive(_asyncsock_mutex); |     xSemaphoreGiveRecursive(_asyncsock_mutex); | ||||||
|  |  | ||||||
| @@ -959,14 +959,14 @@ void AsyncServer::begin() | |||||||
|     server.sin_addr.s_addr = (uint32_t) _addr; |     server.sin_addr.s_addr = (uint32_t) _addr; | ||||||
|     server.sin_port = htons(_port); |     server.sin_port = htons(_port); | ||||||
|     if (bind(sockfd, (struct sockaddr *)&server, sizeof(server)) < 0) { |     if (bind(sockfd, (struct sockaddr *)&server, sizeof(server)) < 0) { | ||||||
|         lwip_close_r(sockfd); |         ::close(sockfd); | ||||||
|         log_e("bind error: %d - %s", errno, strerror(errno)); |         log_e("bind error: %d - %s", errno, strerror(errno)); | ||||||
|         return; |         return; | ||||||
|     } |     } | ||||||
|  |  | ||||||
|     static uint8_t backlog = 5; |     static uint8_t backlog = 5; | ||||||
|     if (listen(sockfd , backlog) < 0) { |     if (listen(sockfd , backlog) < 0) { | ||||||
|         lwip_close_r(sockfd); |         ::close(sockfd); | ||||||
|         log_e("listen error: %d - %s", errno, strerror(errno)); |         log_e("listen error: %d - %s", errno, strerror(errno)); | ||||||
|         return; |         return; | ||||||
|     } |     } | ||||||
| @@ -982,7 +982,7 @@ void AsyncServer::end() | |||||||
| { | { | ||||||
|     if (_socket == -1) return; |     if (_socket == -1) return; | ||||||
|     xSemaphoreTakeRecursive(_asyncsock_mutex, (TickType_t)portMAX_DELAY); |     xSemaphoreTakeRecursive(_asyncsock_mutex, (TickType_t)portMAX_DELAY); | ||||||
|     lwip_close_r(_socket); |     ::close(_socket); | ||||||
|     _socket = -1; |     _socket = -1; | ||||||
|     xSemaphoreGiveRecursive(_asyncsock_mutex); |     xSemaphoreGiveRecursive(_asyncsock_mutex); | ||||||
| } | } | ||||||
| @@ -994,7 +994,7 @@ void AsyncServer::_sockIsReadable(void) | |||||||
|     if (_connect_cb) { |     if (_connect_cb) { | ||||||
|         struct sockaddr_in client; |         struct sockaddr_in client; | ||||||
|         size_t cs = sizeof(struct sockaddr_in); |         size_t cs = sizeof(struct sockaddr_in); | ||||||
|         errno = 0; int accepted_sockfd = lwip_accept_r(_socket, (struct sockaddr *)&client, (socklen_t*)&cs); |         errno = 0; int accepted_sockfd = ::accept(_socket, (struct sockaddr *)&client, (socklen_t*)&cs); | ||||||
|         //Serial.printf("\t new sockfd=%d errno=%d\r\n", accepted_sockfd, errno); |         //Serial.printf("\t new sockfd=%d errno=%d\r\n", accepted_sockfd, errno); | ||||||
|         if (accepted_sockfd < 0) { |         if (accepted_sockfd < 0) { | ||||||
|             log_e("accept error: %d - %s", errno, strerror(errno)); |             log_e("accept error: %d - %s", errno, strerror(errno)); | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user