/* * Copyright (C) 2015 Martine Lenders * * This file is subject to the terms and conditions of the GNU Lesser * General Public License v2.1. See the file LICENSE in the top level * directory for more details. */ /** * @ingroup examples * @{ * * @file * @brief Example application for demonstrating the RIOT's POSIX sockets * * @author Martine Lenders * * @} */ #include #include "msg.h" #include "shell.h" #define MAIN_MSG_QUEUE_SIZE (4) static msg_t main_msg_queue[MAIN_MSG_QUEUE_SIZE]; extern int udp_cmd(int argc, char **argv); static const shell_command_t shell_commands[] = { { "udp", "send data over UDP and listen on UDP ports", udp_cmd }, { NULL, NULL, NULL } }; int main(void) { /* a sendto() call performs an implicit bind(), hence, a message queue is * required for the thread executing the shell */ msg_init_queue(main_msg_queue, MAIN_MSG_QUEUE_SIZE); puts("RIOT socket example application"); /* start shell */ puts("All up, running the shell now"); char line_buf[SHELL_DEFAULT_BUFSIZE]; shell_run(shell_commands, line_buf, SHELL_DEFAULT_BUFSIZE); /* should be never reached */ return 0; }