1*10465441SEvalZero /** 2*10465441SEvalZero * \addtogroup apps 3*10465441SEvalZero * @{ 4*10465441SEvalZero */ 5*10465441SEvalZero 6*10465441SEvalZero /** 7*10465441SEvalZero * \defgroup helloworld Hello, world 8*10465441SEvalZero * @{ 9*10465441SEvalZero * 10*10465441SEvalZero * A small example showing how to write applications with 11*10465441SEvalZero * \ref psock "protosockets". 12*10465441SEvalZero */ 13*10465441SEvalZero 14*10465441SEvalZero /** 15*10465441SEvalZero * \file 16*10465441SEvalZero * Header file for an example of how to write uIP applications 17*10465441SEvalZero * with protosockets. 18*10465441SEvalZero * \author 19*10465441SEvalZero * Adam Dunkels <[email protected]> 20*10465441SEvalZero */ 21*10465441SEvalZero 22*10465441SEvalZero #ifndef __HELLO_WORLD_H__ 23*10465441SEvalZero #define __HELLO_WORLD_H__ 24*10465441SEvalZero 25*10465441SEvalZero /* Since this file will be included by uip.h, we cannot include uip.h 26*10465441SEvalZero here. But we might need to include uipopt.h if we need the u8_t and 27*10465441SEvalZero u16_t datatypes. */ 28*10465441SEvalZero #include "uipopt.h" 29*10465441SEvalZero 30*10465441SEvalZero #include "psock.h" 31*10465441SEvalZero 32*10465441SEvalZero /* Next, we define the uip_tcp_appstate_t datatype. This is the state 33*10465441SEvalZero of our application, and the memory required for this state is 34*10465441SEvalZero allocated together with each TCP connection. One application state 35*10465441SEvalZero for each TCP connection. */ 36*10465441SEvalZero #define BUF_SIZE 200 37*10465441SEvalZero typedef struct hello_world_state { 38*10465441SEvalZero struct psock p; 39*10465441SEvalZero char inputbuffer[BUF_SIZE]; 40*10465441SEvalZero char name[BUF_SIZE]; 41*10465441SEvalZero } uip_tcp_appstate_t; 42*10465441SEvalZero 43*10465441SEvalZero /* Finally we define the application function to be called by uIP. */ 44*10465441SEvalZero void hello_world_appcall(void); 45*10465441SEvalZero #ifndef UIP_APPCALL 46*10465441SEvalZero #define UIP_APPCALL hello_world_appcall 47*10465441SEvalZero #endif /* UIP_APPCALL */ 48*10465441SEvalZero 49*10465441SEvalZero void hello_world_init(void); 50*10465441SEvalZero 51*10465441SEvalZero #endif /* __HELLO_WORLD_H__ */ 52*10465441SEvalZero /** @} */ 53*10465441SEvalZero /** @} */ 54