@ -88,6 +88,7 @@
# if (!LWIP_UDP && LWIP_DNS)
# error "If you want to use DNS, you have to define LWIP_UDP=1 in your lwipopts.h"
# endif
# if !MEMP_MEM_MALLOC /* MEMP_NUM_* checks are disabled when not using the pool allocator */
# if (LWIP_ARP && ARP_QUEUEING && (MEMP_NUM_ARP_QUEUE<=0))
# error "If you want to use ARP Queueing, you have to define MEMP_NUM_ARP_QUEUE>=1 in your lwipopts.h"
# endif
@ -100,6 +101,20 @@
# if (LWIP_TCP && (MEMP_NUM_TCP_PCB<=0))
# error "If you want to use TCP, you have to define MEMP_NUM_TCP_PCB>=1 in your lwipopts.h"
# endif
# if (LWIP_IGMP && (MEMP_NUM_IGMP_GROUP<=1))
# error "If you want to use IGMP, you have to define MEMP_NUM_IGMP_GROUP>1 in your lwipopts.h"
# endif
# if ((LWIP_NETCONN || LWIP_SOCKET) && (MEMP_NUM_TCPIP_MSG_API<=0))
# error "If you want to use Sequential API, you have to define MEMP_NUM_TCPIP_MSG_API>=1 in your lwipopts.h"
# endif
/* There must be sufficient timeouts, taking into account requirements of the subsystems. */
# if LWIP_TIMERS && (MEMP_NUM_SYS_TIMEOUT < (LWIP_TCP + IP_REASSEMBLY + LWIP_ARP + (2*LWIP_DHCP) + LWIP_AUTOIP + LWIP_IGMP + LWIP_DNS + PPP_SUPPORT + (LWIP_IPV6 ? (1 + LWIP_IPV6_REASS + LWIP_IPV6_MLD) : 0)))
# error "MEMP_NUM_SYS_TIMEOUT is too low to accomodate all required timeouts"
# endif
# if (IP_REASSEMBLY && (MEMP_NUM_REASSDATA > IP_REASS_MAX_PBUFS))
# error "MEMP_NUM_REASSDATA > IP_REASS_MAX_PBUFS doesn't make sense since each struct ip_reassdata must hold 2 pbufs at least!"
# endif
# endif /* !MEMP_MEM_MALLOC */
# if (LWIP_TCP && (TCP_WND > 0xffff))
# error "If you want to use TCP, TCP_WND must fit in an u16_t, so, you have to reduce it in your lwipopts.h"
# endif
@ -115,18 +130,12 @@
# if (LWIP_TCP && TCP_LISTEN_BACKLOG && (TCP_DEFAULT_LISTEN_BACKLOG < 0) || (TCP_DEFAULT_LISTEN_BACKLOG > 0xff))
# error "If you want to use TCP backlog, TCP_DEFAULT_LISTEN_BACKLOG must fit into an u8_t"
# endif
# if (LWIP_IGMP && (MEMP_NUM_IGMP_GROUP<=1))
# error "If you want to use IGMP, you have to define MEMP_NUM_IGMP_GROUP>1 in your lwipopts.h"
# endif
# if (LWIP_NETIF_API && (NO_SYS==1))
# error "If you want to use NETIF API, you have to define NO_SYS=0 in your lwipopts.h"
# endif
# if ((LWIP_SOCKET || LWIP_NETCONN) && (NO_SYS==1))
# error "If you want to use Sequential API, you have to define NO_SYS=0 in your lwipopts.h"
# endif
# if ((LWIP_NETCONN || LWIP_SOCKET) && (MEMP_NUM_TCPIP_MSG_API<=0))
# error "If you want to use Sequential API, you have to define MEMP_NUM_TCPIP_MSG_API>=1 in your lwipopts.h"
# endif
# if (!LWIP_NETCONN && LWIP_SOCKET)
# error "If you want to use Socket API, you have to define LWIP_NETCONN=1 in your lwipopts.h"
# endif
@ -148,13 +157,6 @@
# if (LWIP_TCP && ((LWIP_EVENT_API && LWIP_CALLBACK_API) || (!LWIP_EVENT_API && !LWIP_CALLBACK_API)))
# error "One and exactly one of LWIP_EVENT_API and LWIP_CALLBACK_API has to be enabled in your lwipopts.h"
# endif
/* There must be sufficient timeouts, taking into account requirements of the subsystems. */
# if LWIP_TIMERS && (MEMP_NUM_SYS_TIMEOUT < (LWIP_TCP + IP_REASSEMBLY + LWIP_ARP + (2*LWIP_DHCP) + LWIP_AUTOIP + LWIP_IGMP + LWIP_DNS + PPP_SUPPORT + (LWIP_IPV6 ? (1 + LWIP_IPV6_REASS + LWIP_IPV6_MLD) : 0)))
# error "MEMP_NUM_SYS_TIMEOUT is too low to accomodate all required timeouts"
# endif
# if (IP_REASSEMBLY && (MEMP_NUM_REASSDATA > IP_REASS_MAX_PBUFS))
# error "MEMP_NUM_REASSDATA > IP_REASS_MAX_PBUFS doesn't make sense since each struct ip_reassdata must hold 2 pbufs at least!"
# endif
# if (MEM_LIBC_MALLOC && MEM_USE_POOLS)
# error "MEM_LIBC_MALLOC and MEM_USE_POOLS may not both be simultaneously enabled in your lwipopts.h"
# endif
@ -244,16 +246,22 @@
/* MEMP sanity checks */
# if !LWIP_DISABLE_MEMP_SANITY_CHECKS
# if LWIP_NETCONN
# if MEMP_MEM_MALLOC
# if !MEMP_NUM_NETCONN && LWIP_SOCKET
# error "lwip_sanity_check: WARNING: MEMP_NUM_NETCONN cannot be 0 when using sockets!"
# endif
# else /* MEMP_MEM_MALLOC */
# if MEMP_NUM_NETCONN > (MEMP_NUM_TCP_PCB+MEMP_NUM_TCP_PCB_LISTEN+MEMP_NUM_UDP_PCB+MEMP_NUM_RAW_PCB)
# error "lwip_sanity_check: WARNING: MEMP_NUM_NETCONN should be less than the sum of MEMP_NUM_{TCP,RAW,UDP}_PCB+MEMP_NUM_TCP_PCB_LISTEN. If you know what you are doing, define LWIP_DISABLE_MEMP_SANITY_CHECKS to 1 to disable this error."
# endif
# endif /* MEMP_MEM_MALLOC */
# endif /* LWIP_NETCONN */
# endif /* !LWIP_DISABLE_MEMP_SANITY_CHECKS */
/* TCP sanity checks */
# if !LWIP_DISABLE_TCP_SANITY_CHECKS
# if LWIP_TCP
# if MEMP_NUM_TCP_SEG < TCP_SND_QUEUELEN
# if !MEMP_MEM_MALLOC && ( MEMP_NUM_TCP_SEG < TCP_SND_QUEUELEN)
# error "lwip_sanity_check: WARNING: MEMP_NUM_TCP_SEG should be at least as big as TCP_SND_QUEUELEN. If you know what you are doing, define LWIP_DISABLE_TCP_SANITY_CHECKS to 1 to disable this error."
# endif
# if TCP_SND_BUF < (2 * TCP_MSS)
@ -268,7 +276,7 @@
# if TCP_SNDQUEUELOWAT >= TCP_SND_QUEUELEN
# error "lwip_sanity_check: WARNING: TCP_SNDQUEUELOWAT must be less than TCP_SND_QUEUELEN. If you know what you are doing, define LWIP_DISABLE_TCP_SANITY_CHECKS to 1 to disable this error."
# endif
# if TCP_WND > (PBUF_POOL_SIZE * (PBUF_POOL_BUFSIZE - (PBUF_LINK_HLEN + PBUF_IP_HLEN + PBUF_TRANSPORT_HLEN)))
# if !MEMP_MEM_MALLOC && ( TCP_WND > (PBUF_POOL_SIZE * (PBUF_POOL_BUFSIZE - (PBUF_LINK_HLEN + PBUF_IP_HLEN + PBUF_TRANSPORT_HLEN) )))
# error "lwip_sanity_check: WARNING: TCP_WND is larger than space provided by PBUF_POOL_SIZE * (PBUF_POOL_BUFSIZE - protocol headers). If you know what you are doing, define LWIP_DISABLE_TCP_SANITY_CHECKS to 1 to disable this error."
# endif
# if TCP_WND < TCP_MSS