Core networking libraries including LwIP implementation

Dependencies:   DebugLib Socket lwip lwip-sys

Dependents:   EthernetInterface

Fork of NetworkingCoreLib by Donatien Garnier

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers lwipopts_common.h Source File

lwipopts_common.h

00001 /* lwipopts_common.h */
00002 /* Copyright (C) 2012 mbed.org, MIT License
00003  *
00004  * Permission is hereby granted, free of charge, to any person obtaining a copy of this software
00005  * and associated documentation files (the "Software"), to deal in the Software without restriction,
00006  * including without limitation the rights to use, copy, modify, merge, publish, distribute,
00007  * sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
00008  * furnished to do so, subject to the following conditions:
00009  *
00010  * The above copyright notice and this permission notice shall be included in all copies or
00011  * substantial portions of the Software.
00012  *
00013  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
00014  * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
00015  * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
00016  * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
00017  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
00018  */
00019 
00020 #ifndef LWIPOPTS_COMMON_H_
00021 #define LWIPOPTS_COMMON_H_
00022 
00023 #define NO_SYS                          0
00024 
00025 //For now only PPP is supported
00026 //Ethernet is in pre-alpha
00027 //Memory
00028 #define MEM_ALIGNMENT 4
00029 
00030 #define MEMP_OVERFLOW_CHECK             0 //For debug, must be removed once everything is validated to reduce mem consumption and improve performance
00031 #define MEMP_SANITY_CHECK               0 //Same here
00032 #define MEMP_NUM_SYS_TIMEOUT            16
00033 
00034 //Debug
00035 #define LWIP_DEBUG                      0
00036 #define PPP_DEBUG                       LWIP_DBG_OFF
00037 #define IP_DEBUG                        LWIP_DBG_OFF
00038 #define MEM_DEBUG                       LWIP_DBG_OFF
00039 #define MEMP_DEBUG                      LWIP_DBG_OFF
00040 #define PBUF_DEBUG                      LWIP_DBG_OFF
00041 #define API_LIB_DEBUG                   LWIP_DBG_OFF
00042 #define API_MSG_DEBUG                   LWIP_DBG_OFF
00043 #define TCPIP_DEBUG                     LWIP_DBG_OFF
00044 #define SOCKETS_DEBUG                   LWIP_DBG_OFF
00045 #define TCP_DEBUG                       LWIP_DBG_OFF
00046 #define TCP_INPUT_DEBUG                 LWIP_DBG_OFF
00047 #define TCP_FR_DEBUG                    LWIP_DBG_OFF
00048 #define TCP_RTO_DEBUG                   LWIP_DBG_OFF
00049 #define TCP_CWND_DEBUG                  LWIP_DBG_OFF
00050 #define TCP_WND_DEBUG                   LWIP_DBG_OFF
00051 #define TCP_OUTPUT_DEBUG                LWIP_DBG_OFF
00052 #define TCP_RST_DEBUG                   LWIP_DBG_OFF
00053 #define TCP_QLEN_DEBUG                  LWIP_DBG_OFF
00054 #define ETHARP_DEBUG                    LWIP_DBG_OFF
00055 #define NETIF_DEBUG                     LWIP_DBG_OFF
00056 #define DHCP_DEBUG                      LWIP_DBG_OFF
00057 
00058 //Modules to enable
00059 #define LWIP_NETCONN 1
00060 #define LWIP_SOCKET 1
00061 #define TCP_QUEUE_OOSEQ 0
00062 #define LWIP_STATS 0
00063 #define TCP_STATS 0
00064 #define IP_STATS 0
00065 #define LINK_STATS 0
00066 #define MEM_STATS 0
00067 #define MEMP_STATS 0
00068 #define SYS_STATS 0
00069 #define LWIP_STATS_DISPLAY 0
00070 
00071 //Mailboxes
00072 #define TCPIP_MBOX_SIZE 6
00073 #define DEFAULT_TCP_RECVMBOX_SIZE 6
00074 #define DEFAULT_UDP_RECVMBOX_SIZE 6
00075 #define DEFAULT_RAW_RECVMBOX_SIZE 6
00076 #define DEFAULT_ACCEPTMBOX_SIZE 6
00077 
00078 //TCP/IP Thread
00079 #define TCPIP_THREAD_STACKSIZE          1024
00080 #define TCPIP_THREAD_PRIO               1
00081 
00082 //Buffers
00083 #define PBUF_POOL_SIZE                  5
00084 #define MEMP_NUM_TCP_PCB_LISTEN         4
00085 #define MEMP_NUM_TCP_PCB                4
00086 #define MEMP_NUM_PBUF                   8
00087 
00088 #define TCP_OVERSIZE                    0 //Disable until it gets fixed in mainline LwIP
00089 #define DEFAULT_THREAD_STACKSIZE        512
00090 
00091 //DNS
00092 #define LWIP_DNS                        1
00093 
00094 //Do not use LwIP's ugly macro-based renaming
00095 #define LWIP_COMPAT_SOCKETS 0
00096 #define LWIP_POSIX_SOCKETS_IO_NAMES 0
00097 #define LWIP_SO_RCVTIMEO 1
00098 #define LWIP_TCP_KEEPALIVE 1
00099 
00100 #endif /* LWIPOPTS_COMMON_H_ */