]> git.gir.st - tmk_keyboard.git/blob - tmk_core/tool/mbed/mbed-sdk/libraries/tests/net/echo/udp_server/main.cpp
Merge commit '71381457fa1311dfa0b58ba882a96db740640871'
[tmk_keyboard.git] / tmk_core / tool / mbed / mbed-sdk / libraries / tests / net / echo / udp_server / main.cpp
1 #include "mbed.h"
2 #include "test_env.h"
3 #include "EthernetInterface.h"
4
5 namespace {
6 const int ECHO_SERVER_PORT = 7;
7 const int BUFFER_SIZE = 64;
8 }
9
10 int main (void) {
11 MBED_HOSTTEST_TIMEOUT(20);
12 MBED_HOSTTEST_SELECT(udpecho_server_auto);
13 MBED_HOSTTEST_DESCRIPTION(UDP echo server);
14 MBED_HOSTTEST_START("NET_5");
15
16 EthernetInterface eth;
17 eth.init(); //Use DHCP
18 eth.connect();
19 printf("MBED: Server IP Address is %s:%d\r\n", eth.getIPAddress(), ECHO_SERVER_PORT);
20
21 UDPSocket server;
22 server.bind(ECHO_SERVER_PORT);
23
24 Endpoint client;
25 char buffer[BUFFER_SIZE] = {0};
26 printf("MBED: Waiting for packet...\r\n");
27 while (true) {
28 int n = server.receiveFrom(client, buffer, sizeof(buffer));
29 if (n > 0) {
30 //printf("Received packet from: %s\n", client.get_address());
31 const int buffer_string_end_index = n >= BUFFER_SIZE ? BUFFER_SIZE-1 : n;
32 buffer[buffer_string_end_index] = '\0';
33 //printf("Server received: %s\n", buffer);
34 server.sendTo(client, buffer, n);
35 }
36 }
37 }
Imprint / Impressum