1*10465441SEvalZero #ifndef __LWIPOPTS_H__ 2*10465441SEvalZero #define __LWIPOPTS_H__ 3*10465441SEvalZero 4*10465441SEvalZero #include <rtconfig.h> 5*10465441SEvalZero 6*10465441SEvalZero #define ERRNO 1 7*10465441SEvalZero 8*10465441SEvalZero #define NO_SYS 0 9*10465441SEvalZero #define LWIP_SOCKET 1 10*10465441SEvalZero #define LWIP_NETCONN 1 11*10465441SEvalZero 12*10465441SEvalZero #ifdef RT_LWIP_IGMP 13*10465441SEvalZero #define LWIP_IGMP 1 14*10465441SEvalZero #else 15*10465441SEvalZero #define LWIP_IGMP 0 16*10465441SEvalZero #endif 17*10465441SEvalZero 18*10465441SEvalZero #ifdef RT_LWIP_ICMP 19*10465441SEvalZero #define LWIP_ICMP 1 20*10465441SEvalZero #else 21*10465441SEvalZero #define LWIP_ICMP 0 22*10465441SEvalZero #endif 23*10465441SEvalZero 24*10465441SEvalZero #ifdef RT_LWIP_SNMP 25*10465441SEvalZero #define LWIP_SNMP 1 26*10465441SEvalZero #else 27*10465441SEvalZero #define LWIP_SNMP 0 28*10465441SEvalZero #endif 29*10465441SEvalZero 30*10465441SEvalZero #ifdef RT_LWIP_DNS 31*10465441SEvalZero #define LWIP_DNS 1 32*10465441SEvalZero #else 33*10465441SEvalZero #define LWIP_DNS 0 34*10465441SEvalZero #endif 35*10465441SEvalZero 36*10465441SEvalZero #define LWIP_HAVE_LOOPIF 0 37*10465441SEvalZero 38*10465441SEvalZero #define LWIP_PLATFORM_BYTESWAP 0 39*10465441SEvalZero 40*10465441SEvalZero #ifndef BYTE_ORDER 41*10465441SEvalZero #define BYTE_ORDER LITTLE_ENDIAN 42*10465441SEvalZero #endif 43*10465441SEvalZero 44*10465441SEvalZero /* #define RT_LWIP_DEBUG */ 45*10465441SEvalZero 46*10465441SEvalZero #ifdef RT_LWIP_DEBUG 47*10465441SEvalZero #define LWIP_DEBUG 48*10465441SEvalZero #endif 49*10465441SEvalZero 50*10465441SEvalZero /* ---------- Debug options ---------- */ 51*10465441SEvalZero #ifdef LWIP_DEBUG 52*10465441SEvalZero #ifdef RT_LWIP_SYS_DEBUG 53*10465441SEvalZero #define SYS_DEBUG LWIP_DBG_ON 54*10465441SEvalZero #else 55*10465441SEvalZero #define SYS_DEBUG LWIP_DBG_OFF 56*10465441SEvalZero #endif 57*10465441SEvalZero 58*10465441SEvalZero #ifdef RT_LWIP_ETHARP_DEBUG 59*10465441SEvalZero #define ETHARP_DEBUG LWIP_DBG_ON 60*10465441SEvalZero #else 61*10465441SEvalZero #define ETHARP_DEBUG LWIP_DBG_OFF 62*10465441SEvalZero #endif 63*10465441SEvalZero 64*10465441SEvalZero #ifdef RT_LWIP_PPP_DEBUG 65*10465441SEvalZero #define PPP_DEBUG LWIP_DBG_ON 66*10465441SEvalZero #else 67*10465441SEvalZero #define PPP_DEBUG LWIP_DBG_OFF 68*10465441SEvalZero #endif 69*10465441SEvalZero 70*10465441SEvalZero #ifdef RT_LWIP_MEM_DEBUG 71*10465441SEvalZero #define MEM_DEBUG LWIP_DBG_ON 72*10465441SEvalZero #else 73*10465441SEvalZero #define MEM_DEBUG LWIP_DBG_OFF 74*10465441SEvalZero #endif 75*10465441SEvalZero 76*10465441SEvalZero #ifdef RT_LWIP_MEMP_DEBUG 77*10465441SEvalZero #define MEMP_DEBUG LWIP_DBG_ON 78*10465441SEvalZero #else 79*10465441SEvalZero #define MEMP_DEBUG LWIP_DBG_OFF 80*10465441SEvalZero #endif 81*10465441SEvalZero 82*10465441SEvalZero #ifdef RT_LWIP_PBUF_DEBUG 83*10465441SEvalZero #define PBUF_DEBUG LWIP_DBG_ON 84*10465441SEvalZero #else 85*10465441SEvalZero #define PBUF_DEBUG LWIP_DBG_OFF 86*10465441SEvalZero #endif 87*10465441SEvalZero 88*10465441SEvalZero #ifdef RT_LWIP_API_LIB_DEBUG 89*10465441SEvalZero #define API_LIB_DEBUG LWIP_DBG_ON 90*10465441SEvalZero #else 91*10465441SEvalZero #define API_LIB_DEBUG LWIP_DBG_OFF 92*10465441SEvalZero #endif 93*10465441SEvalZero 94*10465441SEvalZero #ifdef RT_LWIP_API_MSG_DEBUG 95*10465441SEvalZero #define API_MSG_DEBUG LWIP_DBG_ON 96*10465441SEvalZero #else 97*10465441SEvalZero #define API_MSG_DEBUG LWIP_DBG_OFF 98*10465441SEvalZero #endif 99*10465441SEvalZero 100*10465441SEvalZero #ifdef RT_LWIP_TCPIP_DEBUG 101*10465441SEvalZero #define TCPIP_DEBUG LWIP_DBG_ON 102*10465441SEvalZero #else 103*10465441SEvalZero #define TCPIP_DEBUG LWIP_DBG_OFF 104*10465441SEvalZero #endif 105*10465441SEvalZero 106*10465441SEvalZero #ifdef RT_LWIP_NETIF_DEBUG 107*10465441SEvalZero #define NETIF_DEBUG LWIP_DBG_ON 108*10465441SEvalZero #else 109*10465441SEvalZero #define NETIF_DEBUG LWIP_DBG_OFF 110*10465441SEvalZero #endif 111*10465441SEvalZero 112*10465441SEvalZero #ifdef RT_LWIP_SOCKETS_DEBUG 113*10465441SEvalZero #define SOCKETS_DEBUG LWIP_DBG_ON 114*10465441SEvalZero #else 115*10465441SEvalZero #define SOCKETS_DEBUG LWIP_DBG_OFF 116*10465441SEvalZero #endif 117*10465441SEvalZero 118*10465441SEvalZero #ifdef RT_LWIP_DNS_DEBUG 119*10465441SEvalZero #define DNS_DEBUG LWIP_DBG_ON 120*10465441SEvalZero #else 121*10465441SEvalZero #define DNS_DEBUG LWIP_DBG_OFF 122*10465441SEvalZero #endif 123*10465441SEvalZero 124*10465441SEvalZero #ifdef RT_LWIP_AUTOIP_DEBUG 125*10465441SEvalZero #define AUTOIP_DEBUG LWIP_DBG_ON 126*10465441SEvalZero #else 127*10465441SEvalZero #define AUTOIP_DEBUG LWIP_DBG_OFF 128*10465441SEvalZero #endif 129*10465441SEvalZero 130*10465441SEvalZero #ifdef RT_LWIP_DHCP_DEBUG 131*10465441SEvalZero #define DHCP_DEBUG LWIP_DBG_ON 132*10465441SEvalZero #else 133*10465441SEvalZero #define DHCP_DEBUG LWIP_DBG_OFF 134*10465441SEvalZero #endif 135*10465441SEvalZero 136*10465441SEvalZero #ifdef RT_LWIP_IP_DEBUG 137*10465441SEvalZero #define IP_DEBUG LWIP_DBG_ON 138*10465441SEvalZero #else 139*10465441SEvalZero #define IP_DEBUG LWIP_DBG_OFF 140*10465441SEvalZero #endif 141*10465441SEvalZero 142*10465441SEvalZero #ifdef RT_LWIP_IP_REASS_DEBUG 143*10465441SEvalZero #define IP_REASS_DEBUG LWIP_DBG_ON 144*10465441SEvalZero #else 145*10465441SEvalZero #define IP_REASS_DEBUG LWIP_DBG_OFF 146*10465441SEvalZero #endif 147*10465441SEvalZero 148*10465441SEvalZero #ifdef RT_LWIP_ICMP_DEBUG 149*10465441SEvalZero #define ICMP_DEBUG LWIP_DBG_ON 150*10465441SEvalZero #else 151*10465441SEvalZero #define ICMP_DEBUG LWIP_DBG_OFF 152*10465441SEvalZero #endif 153*10465441SEvalZero 154*10465441SEvalZero #ifdef RT_LWIP_IGMP_DEBUG 155*10465441SEvalZero #define IGMP_DEBUG LWIP_DBG_ON 156*10465441SEvalZero #else 157*10465441SEvalZero #define IGMP_DEBUG LWIP_DBG_OFF 158*10465441SEvalZero #endif 159*10465441SEvalZero 160*10465441SEvalZero #ifdef RT_LWIP_UDP_DEBUG 161*10465441SEvalZero #define UDP_DEBUG LWIP_DBG_ON 162*10465441SEvalZero #else 163*10465441SEvalZero #define UDP_DEBUG LWIP_DBG_OFF 164*10465441SEvalZero #endif 165*10465441SEvalZero 166*10465441SEvalZero #ifdef RT_LWIP_TCP_DEBUG 167*10465441SEvalZero #define TCP_DEBUG LWIP_DBG_ON 168*10465441SEvalZero #else 169*10465441SEvalZero #define TCP_DEBUG LWIP_DBG_OFF 170*10465441SEvalZero #endif 171*10465441SEvalZero 172*10465441SEvalZero #ifdef RT_LWIP_TCP_INPUT_DEBUG 173*10465441SEvalZero #define TCP_INPUT_DEBUG LWIP_DBG_ON 174*10465441SEvalZero #else 175*10465441SEvalZero #define TCP_INPUT_DEBUG LWIP_DBG_OFF 176*10465441SEvalZero #endif 177*10465441SEvalZero 178*10465441SEvalZero #ifdef RT_LWIP_TCP_OUTPUT_DEBUG 179*10465441SEvalZero #define TCP_OUTPUT_DEBUG LWIP_DBG_ON 180*10465441SEvalZero #else 181*10465441SEvalZero #define TCP_OUTPUT_DEBUG LWIP_DBG_OFF 182*10465441SEvalZero #endif 183*10465441SEvalZero 184*10465441SEvalZero #ifdef RT_LWIP_TCP_RTO_DEBUG 185*10465441SEvalZero #define TCP_RTO_DEBUG LWIP_DBG_ON 186*10465441SEvalZero #else 187*10465441SEvalZero #define TCP_RTO_DEBUG LWIP_DBG_OFF 188*10465441SEvalZero #endif 189*10465441SEvalZero 190*10465441SEvalZero #ifdef RT_LWIP_TCP_CWND_DEBUG 191*10465441SEvalZero #define TCP_CWND_DEBUG LWIP_DBG_ON 192*10465441SEvalZero #else 193*10465441SEvalZero #define TCP_CWND_DEBUG LWIP_DBG_OFF 194*10465441SEvalZero #endif 195*10465441SEvalZero 196*10465441SEvalZero #ifdef RT_LWIP_TCP_WND_DEBUG 197*10465441SEvalZero #define TCP_WND_DEBUG LWIP_DBG_ON 198*10465441SEvalZero #else 199*10465441SEvalZero #define TCP_WND_DEBUG LWIP_DBG_OFF 200*10465441SEvalZero #endif 201*10465441SEvalZero 202*10465441SEvalZero #ifdef RT_LWIP_TCP_FR_DEBUG 203*10465441SEvalZero #define TCP_FR_DEBUG LWIP_DBG_ON 204*10465441SEvalZero #else 205*10465441SEvalZero #define TCP_FR_DEBUG LWIP_DBG_OFF 206*10465441SEvalZero #endif 207*10465441SEvalZero 208*10465441SEvalZero #ifdef RT_LWIP_TCP_QLEN_DEBUG 209*10465441SEvalZero #define TCP_QLEN_DEBUG LWIP_DBG_ON 210*10465441SEvalZero #else 211*10465441SEvalZero #define TCP_QLEN_DEBUG LWIP_DBG_OFF 212*10465441SEvalZero #endif 213*10465441SEvalZero 214*10465441SEvalZero #ifdef RT_LWIP_TCP_RST_DEBUG 215*10465441SEvalZero #define TCP_RST_DEBUG LWIP_DBG_ON 216*10465441SEvalZero #else 217*10465441SEvalZero #define TCP_RST_DEBUG LWIP_DBG_OFF 218*10465441SEvalZero #endif 219*10465441SEvalZero 220*10465441SEvalZero #endif /* LWIP_DEBUG */ 221*10465441SEvalZero 222*10465441SEvalZero #define LWIP_DBG_TYPES_ON (LWIP_DBG_ON|LWIP_DBG_TRACE|LWIP_DBG_STATE|LWIP_DBG_FRESH|LWIP_DBG_HALT) 223*10465441SEvalZero 224*10465441SEvalZero /* ---------- Memory options ---------- */ 225*10465441SEvalZero #define MEM_ALIGNMENT 4 226*10465441SEvalZero 227*10465441SEvalZero #define MEM_LIBC_MALLOC 1 228*10465441SEvalZero #define mem_malloc rt_malloc 229*10465441SEvalZero #define mem_free rt_free 230*10465441SEvalZero #define mem_calloc rt_calloc 231*10465441SEvalZero 232*10465441SEvalZero #define MEMP_MEM_MALLOC 0 233*10465441SEvalZero 234*10465441SEvalZero /* MEMP_NUM_PBUF: the number of memp struct pbufs. If the application 235*10465441SEvalZero sends a lot of data out of ROM (or other static memory), this 236*10465441SEvalZero should be set high. */ 237*10465441SEvalZero #define MEMP_NUM_PBUF 16 238*10465441SEvalZero 239*10465441SEvalZero /* the number of struct netconns */ 240*10465441SEvalZero #ifdef RT_MEMP_NUM_NETCONN 241*10465441SEvalZero #define MEMP_NUM_NETCONN RT_MEMP_NUM_NETCONN 242*10465441SEvalZero #endif 243*10465441SEvalZero 244*10465441SEvalZero /* the number of UDP protocol control blocks. One per active RAW "connection". */ 245*10465441SEvalZero #ifdef RT_LWIP_RAW_PCB_NUM 246*10465441SEvalZero #define MEMP_NUM_RAW_PCB RT_LWIP_RAW_PCB_NUM 247*10465441SEvalZero #endif 248*10465441SEvalZero 249*10465441SEvalZero /* the number of UDP protocol control blocks. One per active UDP "connection". */ 250*10465441SEvalZero #ifdef RT_LWIP_UDP_PCB_NUM 251*10465441SEvalZero #define MEMP_NUM_UDP_PCB RT_LWIP_UDP_PCB_NUM 252*10465441SEvalZero #endif 253*10465441SEvalZero 254*10465441SEvalZero /* the number of simulatenously active TCP connections. */ 255*10465441SEvalZero #ifdef RT_LWIP_TCP_PCB_NUM 256*10465441SEvalZero #define MEMP_NUM_TCP_PCB RT_LWIP_TCP_PCB_NUM 257*10465441SEvalZero #endif 258*10465441SEvalZero 259*10465441SEvalZero /* the number of simultaneously queued TCP */ 260*10465441SEvalZero #ifdef RT_LWIP_TCP_SEG_NUM 261*10465441SEvalZero #define MEMP_NUM_TCP_SEG RT_LWIP_TCP_SEG_NUM 262*10465441SEvalZero #else 263*10465441SEvalZero #define MEMP_NUM_TCP_SEG TCP_SND_QUEUELEN 264*10465441SEvalZero #endif 265*10465441SEvalZero 266*10465441SEvalZero /* 267*10465441SEvalZero * You can re-define following setting in rtcofnig.h to overwrite the default 268*10465441SEvalZero * setting in the lwip opts.h 269*10465441SEvalZero */ 270*10465441SEvalZero /* MEMP_NUM_NETBUF: the number of struct netbufs. */ 271*10465441SEvalZero // #define MEMP_NUM_NETBUF 2 272*10465441SEvalZero /* MEMP_NUM_NETCONN: the number of struct netconns. */ 273*10465441SEvalZero // #define MEMP_NUM_NETCONN 4 274*10465441SEvalZero 275*10465441SEvalZero /* MEMP_NUM_TCPIP_MSG_*: the number of struct tcpip_msg, which is used 276*10465441SEvalZero for sequential API communication and incoming packets. Used in 277*10465441SEvalZero src/api/tcpip.c. */ 278*10465441SEvalZero // #define MEMP_NUM_TCPIP_MSG_API 16 279*10465441SEvalZero // #define MEMP_NUM_TCPIP_MSG_INPKT 16 280*10465441SEvalZero 281*10465441SEvalZero /* ---------- Pbuf options ---------- */ 282*10465441SEvalZero /* PBUF_POOL_SIZE: the number of buffers in the pbuf pool. */ 283*10465441SEvalZero #ifdef RT_LWIP_PBUF_NUM 284*10465441SEvalZero #define PBUF_POOL_SIZE RT_LWIP_PBUF_NUM 285*10465441SEvalZero #endif 286*10465441SEvalZero 287*10465441SEvalZero /* PBUF_POOL_BUFSIZE: the size of each pbuf in the pbuf pool. */ 288*10465441SEvalZero #ifdef RT_LWIP_PBUF_POOL_BUFSIZE 289*10465441SEvalZero #define PBUF_POOL_BUFSIZE RT_LWIP_PBUF_POOL_BUFSIZE 290*10465441SEvalZero #endif 291*10465441SEvalZero 292*10465441SEvalZero /* PBUF_LINK_HLEN: the number of bytes that should be allocated for a 293*10465441SEvalZero link level header. */ 294*10465441SEvalZero #define PBUF_LINK_HLEN 16 295*10465441SEvalZero 296*10465441SEvalZero #ifdef RT_LWIP_ETH_PAD_SIZE 297*10465441SEvalZero #define ETH_PAD_SIZE RT_LWIP_ETH_PAD_SIZE 298*10465441SEvalZero #endif 299*10465441SEvalZero 300*10465441SEvalZero /** SYS_LIGHTWEIGHT_PROT 301*10465441SEvalZero * define SYS_LIGHTWEIGHT_PROT in lwipopts.h if you want inter-task protection 302*10465441SEvalZero * for certain critical regions during buffer allocation, deallocation and memory 303*10465441SEvalZero * allocation and deallocation. 304*10465441SEvalZero */ 305*10465441SEvalZero #define SYS_LIGHTWEIGHT_PROT (NO_SYS==0) 306*10465441SEvalZero 307*10465441SEvalZero #ifdef LWIP_USING_NAT 308*10465441SEvalZero #define IP_NAT 1 309*10465441SEvalZero #else 310*10465441SEvalZero #define IP_NAT 0 311*10465441SEvalZero #endif 312*10465441SEvalZero 313*10465441SEvalZero /* ---------- TCP options ---------- */ 314*10465441SEvalZero #ifdef RT_LWIP_TCP 315*10465441SEvalZero #define LWIP_TCP 1 316*10465441SEvalZero #else 317*10465441SEvalZero #define LWIP_TCP 0 318*10465441SEvalZero #endif 319*10465441SEvalZero 320*10465441SEvalZero #define TCP_TTL 255 321*10465441SEvalZero 322*10465441SEvalZero /* Controls if TCP should queue segments that arrive out of 323*10465441SEvalZero order. Define to 0 if your device is low on memory. */ 324*10465441SEvalZero #define TCP_QUEUE_OOSEQ 1 325*10465441SEvalZero 326*10465441SEvalZero /* TCP Maximum segment size. */ 327*10465441SEvalZero #define TCP_MSS 1460 328*10465441SEvalZero 329*10465441SEvalZero /* TCP sender buffer space (bytes). */ 330*10465441SEvalZero #ifdef RT_LWIP_TCP_SND_BUF 331*10465441SEvalZero #define TCP_SND_BUF RT_LWIP_TCP_SND_BUF 332*10465441SEvalZero #else 333*10465441SEvalZero #define TCP_SND_BUF (TCP_MSS * 2) 334*10465441SEvalZero #endif 335*10465441SEvalZero 336*10465441SEvalZero /* TCP sender buffer space (pbufs). This must be at least = 2 * 337*10465441SEvalZero TCP_SND_BUF/TCP_MSS for things to work. */ 338*10465441SEvalZero #define TCP_SND_QUEUELEN (4 * TCP_SND_BUF/TCP_MSS) 339*10465441SEvalZero 340*10465441SEvalZero /* TCP writable space (bytes). This must be less than or equal 341*10465441SEvalZero to TCP_SND_BUF. It is the amount of space which must be 342*10465441SEvalZero available in the tcp snd_buf for select to return writable */ 343*10465441SEvalZero #define TCP_SNDLOWAT (TCP_SND_BUF/2) 344*10465441SEvalZero #define TCP_SNDQUEUELOWAT TCP_SND_QUEUELEN/2 345*10465441SEvalZero 346*10465441SEvalZero /* TCP receive window. */ 347*10465441SEvalZero #ifdef RT_LWIP_TCP_WND 348*10465441SEvalZero #define TCP_WND RT_LWIP_TCP_WND 349*10465441SEvalZero #else 350*10465441SEvalZero #define TCP_WND (TCP_MSS * 2) 351*10465441SEvalZero #endif 352*10465441SEvalZero 353*10465441SEvalZero /* Maximum number of retransmissions of data segments. */ 354*10465441SEvalZero #define TCP_MAXRTX 12 355*10465441SEvalZero 356*10465441SEvalZero /* Maximum number of retransmissions of SYN segments. */ 357*10465441SEvalZero #define TCP_SYNMAXRTX 4 358*10465441SEvalZero 359*10465441SEvalZero /* tcpip thread options */ 360*10465441SEvalZero #ifdef RT_LWIP_TCPTHREAD_PRIORITY 361*10465441SEvalZero #define TCPIP_MBOX_SIZE RT_LWIP_TCPTHREAD_MBOX_SIZE 362*10465441SEvalZero #define TCPIP_THREAD_PRIO RT_LWIP_TCPTHREAD_PRIORITY 363*10465441SEvalZero #define TCPIP_THREAD_STACKSIZE RT_LWIP_TCPTHREAD_STACKSIZE 364*10465441SEvalZero #else 365*10465441SEvalZero #define TCPIP_MBOX_SIZE 8 366*10465441SEvalZero #define TCPIP_THREAD_PRIO 128 367*10465441SEvalZero #define TCPIP_THREAD_STACKSIZE 4096 368*10465441SEvalZero #endif 369*10465441SEvalZero #define TCPIP_THREAD_NAME "tcpip" 370*10465441SEvalZero #define DEFAULT_TCP_RECVMBOX_SIZE 10 371*10465441SEvalZero 372*10465441SEvalZero /* ---------- ARP options ---------- */ 373*10465441SEvalZero #define LWIP_ARP 1 374*10465441SEvalZero #define ARP_TABLE_SIZE 10 375*10465441SEvalZero #define ARP_QUEUEING 1 376*10465441SEvalZero 377*10465441SEvalZero /* ---------- IP options ---------- */ 378*10465441SEvalZero /* Define IP_FORWARD to 1 if you wish to have the ability to forward 379*10465441SEvalZero IP packets across network interfaces. If you are going to run lwIP 380*10465441SEvalZero on a device with only one network interface, define this to 0. */ 381*10465441SEvalZero #define IP_FORWARD 0 382*10465441SEvalZero 383*10465441SEvalZero /* IP reassembly and segmentation.These are orthogonal even 384*10465441SEvalZero * if they both deal with IP fragments */ 385*10465441SEvalZero #ifdef RT_LWIP_REASSEMBLY_FRAG 386*10465441SEvalZero #define IP_REASSEMBLY 1 387*10465441SEvalZero #define IP_FRAG 1 388*10465441SEvalZero #define IP_REASS_MAX_PBUFS 10 389*10465441SEvalZero #define MEMP_NUM_REASSDATA 10 390*10465441SEvalZero #else 391*10465441SEvalZero #define IP_REASSEMBLY 0 392*10465441SEvalZero #define IP_FRAG 0 393*10465441SEvalZero #endif 394*10465441SEvalZero 395*10465441SEvalZero /* ---------- ICMP options ---------- */ 396*10465441SEvalZero #define ICMP_TTL 255 397*10465441SEvalZero 398*10465441SEvalZero /* ---------- DHCP options ---------- */ 399*10465441SEvalZero /* Define LWIP_DHCP to 1 if you want DHCP configuration of 400*10465441SEvalZero interfaces. */ 401*10465441SEvalZero #ifdef RT_LWIP_DHCP 402*10465441SEvalZero #define LWIP_DHCP 1 403*10465441SEvalZero #else 404*10465441SEvalZero #define LWIP_DHCP 0 405*10465441SEvalZero #endif 406*10465441SEvalZero 407*10465441SEvalZero /* 1 if you want to do an ARP check on the offered address 408*10465441SEvalZero (recommended). */ 409*10465441SEvalZero #define DHCP_DOES_ARP_CHECK (LWIP_DHCP) 410*10465441SEvalZero 411*10465441SEvalZero /* ---------- AUTOIP options ------- */ 412*10465441SEvalZero #define LWIP_AUTOIP 0 413*10465441SEvalZero #define LWIP_DHCP_AUTOIP_COOP (LWIP_DHCP && LWIP_AUTOIP) 414*10465441SEvalZero 415*10465441SEvalZero /* ---------- UDP options ---------- */ 416*10465441SEvalZero #ifdef RT_LWIP_UDP 417*10465441SEvalZero #define LWIP_UDP 1 418*10465441SEvalZero #else 419*10465441SEvalZero #define LWIP_UDP 0 420*10465441SEvalZero #endif 421*10465441SEvalZero 422*10465441SEvalZero #define LWIP_UDPLITE 0 423*10465441SEvalZero #define UDP_TTL 255 424*10465441SEvalZero #define DEFAULT_UDP_RECVMBOX_SIZE 1 425*10465441SEvalZero 426*10465441SEvalZero /* ---------- RAW options ---------- */ 427*10465441SEvalZero #define DEFAULT_RAW_RECVMBOX_SIZE 1 428*10465441SEvalZero #define DEFAULT_ACCEPTMBOX_SIZE 10 429*10465441SEvalZero 430*10465441SEvalZero /* ---------- Statistics options ---------- */ 431*10465441SEvalZero #ifdef RT_LWIP_STATS 432*10465441SEvalZero #define LWIP_STATS 1 433*10465441SEvalZero #define LWIP_STATS_DISPLAY 1 434*10465441SEvalZero #else 435*10465441SEvalZero #define LWIP_STATS 0 436*10465441SEvalZero #endif 437*10465441SEvalZero 438*10465441SEvalZero #if LWIP_STATS 439*10465441SEvalZero #define LINK_STATS 1 440*10465441SEvalZero #define IP_STATS 1 441*10465441SEvalZero #define ICMP_STATS 1 442*10465441SEvalZero #define IGMP_STATS 1 443*10465441SEvalZero #define IPFRAG_STATS 1 444*10465441SEvalZero #define UDP_STATS 1 445*10465441SEvalZero #define TCP_STATS 1 446*10465441SEvalZero #define MEM_STATS 1 447*10465441SEvalZero #define MEMP_STATS 1 448*10465441SEvalZero #define PBUF_STATS 1 449*10465441SEvalZero #define SYS_STATS 1 450*10465441SEvalZero #endif /* LWIP_STATS */ 451*10465441SEvalZero 452*10465441SEvalZero /* ---------- PPP options ---------- */ 453*10465441SEvalZero #ifdef RT_LWIP_PPP 454*10465441SEvalZero #define PPP_SUPPORT 1 /* Set > 0 for PPP */ 455*10465441SEvalZero #else 456*10465441SEvalZero #define PPP_SUPPORT 0 /* Set > 0 for PPP */ 457*10465441SEvalZero #endif 458*10465441SEvalZero 459*10465441SEvalZero #if PPP_SUPPORT 460*10465441SEvalZero #define NUM_PPP 1 /* Max PPP sessions. */ 461*10465441SEvalZero 462*10465441SEvalZero /* Select modules to enable. Ideally these would be set in the makefile but 463*10465441SEvalZero * we're limited by the command line length so you need to modify the settings 464*10465441SEvalZero * in this file. 465*10465441SEvalZero */ 466*10465441SEvalZero #ifdef RT_LWIP_PPPOE 467*10465441SEvalZero #define PPPOE_SUPPORT 1 468*10465441SEvalZero #else 469*10465441SEvalZero #define PPPOE_SUPPORT 0 470*10465441SEvalZero #endif 471*10465441SEvalZero 472*10465441SEvalZero #ifdef RT_LWIP_PPPOS 473*10465441SEvalZero #define PPPOS_SUPPORT 1 474*10465441SEvalZero #else 475*10465441SEvalZero #define PPPOS_SUPPORT 0 476*10465441SEvalZero #endif 477*10465441SEvalZero 478*10465441SEvalZero #define PAP_SUPPORT 1 /* Set > 0 for PAP. */ 479*10465441SEvalZero #define CHAP_SUPPORT 1 /* Set > 0 for CHAP. */ 480*10465441SEvalZero #define MSCHAP_SUPPORT 0 /* Set > 0 for MSCHAP (NOT FUNCTIONAL!) */ 481*10465441SEvalZero #define CBCP_SUPPORT 0 /* Set > 0 for CBCP (NOT FUNCTIONAL!) */ 482*10465441SEvalZero #define CCP_SUPPORT 0 /* Set > 0 for CCP (NOT FUNCTIONAL!) */ 483*10465441SEvalZero #define VJ_SUPPORT 1 /* Set > 0 for VJ header compression. */ 484*10465441SEvalZero #define MD5_SUPPORT 1 /* Set > 0 for MD5 (see also CHAP) */ 485*10465441SEvalZero 486*10465441SEvalZero #endif /* PPP_SUPPORT */ 487*10465441SEvalZero 488*10465441SEvalZero /* no read/write/close for socket */ 489*10465441SEvalZero #define LWIP_POSIX_SOCKETS_IO_NAMES 0 490*10465441SEvalZero #define LWIP_NETIF_API 1 491*10465441SEvalZero 492*10465441SEvalZero /* MEMP_NUM_SYS_TIMEOUT: the number of simulateously active timeouts. */ 493*10465441SEvalZero #define MEMP_NUM_SYS_TIMEOUT (LWIP_TCP + IP_REASSEMBLY + LWIP_ARP + (2*LWIP_DHCP) + LWIP_AUTOIP + LWIP_IGMP + LWIP_DNS + PPP_SUPPORT) 494*10465441SEvalZero #ifdef LWIP_IGMP 495*10465441SEvalZero #include <stdlib.h> 496*10465441SEvalZero #define LWIP_RAND rand 497*10465441SEvalZero #endif 498*10465441SEvalZero /* 499*10465441SEvalZero ------------------------------------ 500*10465441SEvalZero ---------- Socket options ---------- 501*10465441SEvalZero ------------------------------------ 502*10465441SEvalZero */ 503*10465441SEvalZero /* 504*10465441SEvalZero * LWIP_SOCKET==1: Enable Socket API (require to use sockets.c) 505*10465441SEvalZero */ 506*10465441SEvalZero #ifndef LWIP_SOCKET 507*10465441SEvalZero #define LWIP_SOCKET 1 508*10465441SEvalZero #endif 509*10465441SEvalZero 510*10465441SEvalZero /* 511*10465441SEvalZero * LWIP_COMPAT_SOCKETS==1: Enable BSD-style sockets functions names. 512*10465441SEvalZero * (only used if you use sockets.c) 513*10465441SEvalZero */ 514*10465441SEvalZero #ifdef SAL_USING_POSIX 515*10465441SEvalZero #define LWIP_COMPAT_SOCKETS 0 516*10465441SEvalZero #else 517*10465441SEvalZero #ifndef LWIP_COMPAT_SOCKETS 518*10465441SEvalZero #define LWIP_COMPAT_SOCKETS 1 519*10465441SEvalZero #endif 520*10465441SEvalZero #endif 521*10465441SEvalZero 522*10465441SEvalZero 523*10465441SEvalZero /** 524*10465441SEvalZero * LWIP_SO_SNDTIMEO==1: Enable send timeout for sockets/netconns and 525*10465441SEvalZero * SO_SNDTIMEO processing. 526*10465441SEvalZero */ 527*10465441SEvalZero #ifndef LWIP_SO_SNDTIMEO 528*10465441SEvalZero #define LWIP_SO_SNDTIMEO 1 529*10465441SEvalZero #endif 530*10465441SEvalZero 531*10465441SEvalZero /** 532*10465441SEvalZero * LWIP_SO_RCVTIMEO==1: Enable receive timeout for sockets/netconns and 533*10465441SEvalZero * SO_RCVTIMEO processing. 534*10465441SEvalZero */ 535*10465441SEvalZero #ifndef LWIP_SO_RCVTIMEO 536*10465441SEvalZero #define LWIP_SO_RCVTIMEO 1 537*10465441SEvalZero #endif 538*10465441SEvalZero 539*10465441SEvalZero /** 540*10465441SEvalZero * LWIP_SO_RCVBUF==1: Enable SO_RCVBUF processing. 541*10465441SEvalZero */ 542*10465441SEvalZero #ifndef LWIP_SO_RCVBUF 543*10465441SEvalZero #define LWIP_SO_RCVBUF 1 544*10465441SEvalZero #endif 545*10465441SEvalZero 546*10465441SEvalZero /** 547*10465441SEvalZero * If LWIP_SO_RCVBUF is used, this is the default value for recv_bufsize. 548*10465441SEvalZero */ 549*10465441SEvalZero #ifndef RECV_BUFSIZE_DEFAULT 550*10465441SEvalZero #define RECV_BUFSIZE_DEFAULT 8192 551*10465441SEvalZero #endif 552*10465441SEvalZero 553*10465441SEvalZero /** 554*10465441SEvalZero * SO_REUSE==1: Enable SO_REUSEADDR option. 555*10465441SEvalZero */ 556*10465441SEvalZero #ifndef SO_REUSE 557*10465441SEvalZero #define SO_REUSE 0 558*10465441SEvalZero #endif 559*10465441SEvalZero 560*10465441SEvalZero #endif /* __LWIPOPTS_H__ */ 561