3 #include "EthernetInterface.h"
6 const int ECHO_SERVER_PORT
= 7;
7 const int BUFFER_SIZE
= 64;
11 MBED_HOSTTEST_TIMEOUT(20);
12 MBED_HOSTTEST_SELECT(tcpecho_server_auto
);
13 MBED_HOSTTEST_DESCRIPTION(TCP echo server
);
14 MBED_HOSTTEST_START("NET_3");
16 char buffer
[BUFFER_SIZE
] = {0};
17 EthernetInterface eth
;
18 eth
.init(); //Use DHCP
20 printf("MBED: Server IP Address is %s:%d" NL
, eth
.getIPAddress(), ECHO_SERVER_PORT
);
22 TCPSocketServer server
;
23 server
.bind(ECHO_SERVER_PORT
);
27 printf("MBED: Wait for new connection..." NL
);
28 TCPSocketConnection client
;
29 server
.accept(client
);
30 client
.set_blocking(false, 1500); // Timeout after (1.5)s
31 printf("MBED: Connection from: %s" NL
, client
.get_address());
34 const int n
= client
.receive(buffer
, sizeof(buffer
));
38 const int buffer_string_end_index
= n
>= BUFFER_SIZE
? BUFFER_SIZE
-1 : n
;
39 buffer
[buffer_string_end_index
] = '\0';
40 client
.send_all(buffer
, n
);