Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Diff: TcpServer.cpp
- Revision:
- 11:647d53d146f1
- Parent:
- 10:e4ddab81e6a8
- Child:
- 13:95c00132cd98
--- a/TcpServer.cpp Tue Aug 27 22:08:54 2019 +0000
+++ b/TcpServer.cpp Fri Aug 30 08:11:40 2019 +0000
@@ -28,8 +28,9 @@
* @param
* @retval
*/
-TcpServer::TcpServer()
-{ }
+TcpServer::TcpServer() :
+ _conns(1)
+{}
/**
* @brief
@@ -40,7 +41,7 @@
TcpClient* TcpServer::accept()
{
UipEthernet::ethernet->tick();
- for (uip_userdata_t * data = &TcpClient::all_data[0]; data < &TcpClient::all_data[UIP_CONNS]; data++) {
+ for (uip_userdata_t * data = &TcpClient::all_data[0]; data < &TcpClient::all_data[_conns]; data++) {
if
(
data->packets_in[0] != NOBLOCK &&
@@ -65,7 +66,10 @@
* @retval
*/
void TcpServer::open(UipEthernet* ethernet)
-{ }
+{
+ if (UipEthernet::ethernet != ethernet)
+ UipEthernet::ethernet = ethernet;
+}
/**
* @brief
@@ -122,7 +126,7 @@
size_t TcpServer::send(const uint8_t* buf, size_t size)
{
size_t ret = 0;
- for (uip_userdata_t * data = &TcpClient::all_data[0]; data < &TcpClient::all_data[UIP_CONNS]; data++) {
+ for (uip_userdata_t * data = &TcpClient::all_data[0]; data < &TcpClient::all_data[_conns]; data++) {
if ((data->state & UIP_CLIENT_CONNECTED) && uip_conns[data->state & UIP_CLIENT_SOCKETS].lport == _port)
ret += TcpClient::_write(data, buf, size);
}