no description
Fork of Middleware by
Diff: Threads.cpp
- Revision:
- 1:32a08ca33b00
- Parent:
- 0:d1ff330c5128
--- a/Threads.cpp Sat Dec 05 17:43:29 2015 +0000 +++ b/Threads.cpp Mon Dec 07 01:50:01 2015 +0000 @@ -65,28 +65,35 @@ ////////////////////// end if the funtion//////////////////////// } */ -static void receivedFromServer1(void const *argument) +static void messsageFromClient(void const *argument) { while (true) { - // Receive message from server1 - n1 = socketTCP1.receive(buf1, 256); - buf1[n1] = '\0'; - - if(n1>0) { - //pc.printf("Received message from server1 IF: '%s'\n\r", buf1); - socketTCP1.close(); - //isConnectedServer1=false; - } else { - //_isConnectedServer1==false; //quiere decir que se desconecto del servidor - //pc.printf("Not received1 ELSE value of lenght: '%u'\n\r",strlen(buf1)); - socketTCP1.close(); - //isConnectedServer1=false; - } + pc.printf("Wait for new connection...\n\r"); + TCPSocketConnection client; + serverTCP.accept(client); + client.set_blocking(false, 1500); // Timeout after (1.5)s + + pc.printf("Connection from: %s\n\r", client.get_address()); + char buffer[256]; + while (true) { + int n = client.receive(buffer, sizeof(buffer)); + if (n <= 0) break; + + // print received message to terminal + buffer[n] = '\0'; + pc.printf("Received message from Client :'%s'\n\r",buffer); + + // print reversed message to terminal + pc.printf("Sending message to Client: '%s'\n\r",buffer); + + // Echo received message back to client + client.send_all(buffer, n); + if (n <= 0) break; + } + client.close(); Thread::wait(500); } } - -