diff --git a/libraries/Ethernet/Server.cpp b/libraries/Ethernet/Server.cpp index d229bf86a..4271741b9 100644 --- a/libraries/Ethernet/Server.cpp +++ b/libraries/Ethernet/Server.cpp @@ -55,7 +55,8 @@ Client Server::available() for (int sock = 0; sock < MAX_SOCK_NUM; sock++) { Client client(sock); if (EthernetClass::_server_port[sock] == _port && - client.status() == SnSR::ESTABLISHED) { + (client.status() == SnSR::ESTABLISHED || + client.status() == SnSR::CLOSE_WAIT)) { if (client.available()) { // XXX: don't always pick the lowest numbered socket. return client;