|
#define | SYS_LIGHTWEIGHT_PROT 0 |
|
#define | NO_SYS 0 |
|
#define | NO_SYS_NO_TIMERS 0 |
|
#define | MEMCPY(dst, src, len) memcpy(dst,src,len) |
|
#define | SMEMCPY(dst, src, len) memcpy(dst,src,len) |
|
#define | MEM_LIBC_MALLOC 0 |
|
#define | MEMP_MEM_MALLOC 0 |
|
#define | MEM_ALIGNMENT 1 |
|
#define | MEM_SIZE 1600 |
|
#define | MEMP_SEPARATE_POOLS 0 |
|
#define | MEMP_OVERFLOW_CHECK 0 |
|
#define | MEMP_SANITY_CHECK 0 |
|
#define | MEM_USE_POOLS 0 |
|
#define | MEM_USE_POOLS_TRY_BIGGER_POOL 0 |
|
#define | MEMP_USE_CUSTOM_POOLS 0 |
|
#define | LWIP_ALLOW_MEM_FREE_FROM_OTHER_CONTEXT 0 |
|
#define | MEMP_NUM_PBUF 16 |
|
#define | MEMP_NUM_RAW_PCB 4 |
|
#define | MEMP_NUM_UDP_PCB 4 |
|
#define | MEMP_NUM_TCP_PCB 5 |
|
#define | MEMP_NUM_TCP_PCB_LISTEN 8 |
|
#define | MEMP_NUM_TCP_SEG 16 |
|
#define | MEMP_NUM_REASSDATA 5 |
|
#define | MEMP_NUM_FRAG_PBUF 15 |
|
#define | MEMP_NUM_ARP_QUEUE 30 |
|
#define | MEMP_NUM_IGMP_GROUP 8 |
|
#define | MEMP_NUM_SYS_TIMEOUT (LWIP_TCP + IP_REASSEMBLY + LWIP_ARP + (2*LWIP_DHCP) + LWIP_AUTOIP + LWIP_IGMP + LWIP_DNS + PPP_SUPPORT) |
|
#define | MEMP_NUM_NETBUF 2 |
|
#define | MEMP_NUM_NETCONN 4 |
|
#define | MEMP_NUM_TCPIP_MSG_API 8 |
|
#define | MEMP_NUM_TCPIP_MSG_INPKT 8 |
|
#define | MEMP_NUM_SNMP_NODE 50 |
|
#define | MEMP_NUM_SNMP_ROOTNODE 30 |
|
#define | MEMP_NUM_SNMP_VARBIND 2 |
|
#define | MEMP_NUM_SNMP_VALUE 3 |
|
#define | MEMP_NUM_NETDB 1 |
|
#define | MEMP_NUM_LOCALHOSTLIST 1 |
|
#define | MEMP_NUM_PPPOE_INTERFACES 1 |
|
#define | PBUF_POOL_SIZE 16 |
|
#define | LWIP_ARP 1 |
|
#define | ARP_TABLE_SIZE 10 |
|
#define | ARP_QUEUEING 0 |
|
#define | ETHARP_TRUST_IP_MAC 0 |
|
#define | ETHARP_SUPPORT_VLAN 0 |
|
#define | LWIP_ETHERNET (LWIP_ARP || PPPOE_SUPPORT) |
|
#define | ETH_PAD_SIZE 0 |
|
#define | ETHARP_SUPPORT_STATIC_ENTRIES 0 |
|
#define | IP_FORWARD 0 |
|
#define | IP_OPTIONS_ALLOWED 1 |
|
#define | IP_REASSEMBLY 1 |
|
#define | IP_FRAG 1 |
|
#define | IP_REASS_MAXAGE 3 |
|
#define | IP_REASS_MAX_PBUFS 10 |
|
#define | IP_FRAG_USES_STATIC_BUF 0 |
|
#define | IP_DEFAULT_TTL 255 |
|
#define | IP_SOF_BROADCAST 0 |
|
#define | IP_SOF_BROADCAST_RECV 0 |
|
#define | IP_FORWARD_ALLOW_TX_ON_RX_NETIF 0 |
|
#define | LWIP_RANDOMIZE_INITIAL_LOCAL_PORTS 0 |
|
#define | LWIP_ICMP 1 |
|
#define | ICMP_TTL (IP_DEFAULT_TTL) |
|
#define | LWIP_BROADCAST_PING 0 |
|
#define | LWIP_MULTICAST_PING 0 |
|
#define | LWIP_RAW 1 |
|
#define | RAW_TTL (IP_DEFAULT_TTL) |
|
#define | LWIP_DHCP 0 |
|
#define | DHCP_DOES_ARP_CHECK ((LWIP_DHCP) && (LWIP_ARP)) |
|
#define | LWIP_AUTOIP 0 |
|
#define | LWIP_DHCP_AUTOIP_COOP 0 |
|
#define | LWIP_DHCP_AUTOIP_COOP_TRIES 9 |
|
#define | LWIP_SNMP 0 |
|
#define | SNMP_CONCURRENT_REQUESTS 1 |
|
#define | SNMP_TRAP_DESTINATIONS 1 |
|
#define | SNMP_PRIVATE_MIB 0 |
|
#define | SNMP_SAFE_REQUESTS 1 |
|
#define | SNMP_MAX_OCTET_STRING_LEN 127 |
|
#define | SNMP_MAX_TREE_DEPTH 15 |
|
#define | SNMP_MAX_VALUE_SIZE LWIP_MAX((SNMP_MAX_OCTET_STRING_LEN)+1, sizeof(s32_t)*(SNMP_MAX_TREE_DEPTH)) |
|
#define | LWIP_IGMP 0 |
|
#define | LWIP_DNS 0 |
|
#define | DNS_TABLE_SIZE 4 |
|
#define | DNS_MAX_NAME_LENGTH 256 |
|
#define | DNS_MAX_SERVERS 2 |
|
#define | DNS_DOES_NAME_CHECK 1 |
|
#define | DNS_MSG_SIZE 512 |
|
#define | DNS_LOCAL_HOSTLIST 0 |
|
#define | DNS_LOCAL_HOSTLIST_IS_DYNAMIC 0 |
|
#define | LWIP_UDP 1 |
|
#define | LWIP_UDPLITE 0 |
|
#define | UDP_TTL (IP_DEFAULT_TTL) |
|
#define | LWIP_NETBUF_RECVINFO 0 |
|
#define | LWIP_TCP 1 |
|
#define | TCP_TTL (IP_DEFAULT_TTL) |
|
#define | TCP_WND (4 * TCP_MSS) |
|
#define | TCP_MAXRTX 12 |
|
#define | TCP_SYNMAXRTX 6 |
|
#define | TCP_QUEUE_OOSEQ (LWIP_TCP) |
|
#define | TCP_MSS 536 |
|
#define | TCP_CALCULATE_EFF_SEND_MSS 1 |
|
#define | TCP_SND_BUF (2 * TCP_MSS) |
|
#define | TCP_SND_QUEUELEN ((4 * (TCP_SND_BUF) + (TCP_MSS - 1))/(TCP_MSS)) |
|
#define | TCP_SNDLOWAT LWIP_MIN(LWIP_MAX(((TCP_SND_BUF)/2), (2 * TCP_MSS) + 1), (TCP_SND_BUF) - 1) |
|
#define | TCP_SNDQUEUELOWAT LWIP_MAX(((TCP_SND_QUEUELEN)/2), 5) |
|
#define | TCP_OOSEQ_MAX_BYTES 0 |
|
#define | TCP_OOSEQ_MAX_PBUFS 0 |
|
#define | TCP_LISTEN_BACKLOG 0 |
|
#define | TCP_DEFAULT_LISTEN_BACKLOG 0xff |
|
#define | TCP_OVERSIZE TCP_MSS |
|
#define | LWIP_TCP_TIMESTAMPS 0 |
|
#define | TCP_WND_UPDATE_THRESHOLD (TCP_WND / 4) |
|
#define | LWIP_EVENT_API 0 |
|
#define | LWIP_CALLBACK_API 1 |
|
#define | PBUF_LINK_HLEN (14 + ETH_PAD_SIZE) |
|
#define | PBUF_POOL_BUFSIZE LWIP_MEM_ALIGN_SIZE(TCP_MSS+40+PBUF_LINK_HLEN) |
|
#define | LWIP_NETIF_HOSTNAME 0 |
|
#define | LWIP_NETIF_API 0 |
|
#define | LWIP_NETIF_STATUS_CALLBACK 0 |
|
#define | LWIP_NETIF_LINK_CALLBACK 0 |
|
#define | LWIP_NETIF_REMOVE_CALLBACK 0 |
|
#define | LWIP_NETIF_HWADDRHINT 0 |
|
#define | LWIP_NETIF_LOOPBACK 0 |
|
#define | LWIP_LOOPBACK_MAX_PBUFS 0 |
|
#define | LWIP_NETIF_LOOPBACK_MULTITHREADING (!NO_SYS) |
|
#define | LWIP_NETIF_TX_SINGLE_PBUF 0 |
|
#define | LWIP_HAVE_LOOPIF 0 |
|
#define | LWIP_HAVE_SLIPIF 0 |
|
#define | TCPIP_THREAD_NAME "tcpip_thread" |
|
#define | TCPIP_THREAD_STACKSIZE 0 |
|
#define | TCPIP_THREAD_PRIO 1 |
|
#define | TCPIP_MBOX_SIZE 0 |
|
#define | SLIPIF_THREAD_NAME "slipif_loop" |
|
#define | SLIPIF_THREAD_STACKSIZE 0 |
|
#define | SLIPIF_THREAD_PRIO 1 |
|
#define | PPP_THREAD_NAME "pppInputThread" |
|
#define | PPP_THREAD_STACKSIZE 0 |
|
#define | PPP_THREAD_PRIO 1 |
|
#define | DEFAULT_THREAD_NAME "lwIP" |
|
#define | DEFAULT_THREAD_STACKSIZE 0 |
|
#define | DEFAULT_THREAD_PRIO 1 |
|
#define | DEFAULT_RAW_RECVMBOX_SIZE 0 |
|
#define | DEFAULT_UDP_RECVMBOX_SIZE 0 |
|
#define | DEFAULT_TCP_RECVMBOX_SIZE 0 |
|
#define | DEFAULT_ACCEPTMBOX_SIZE 0 |
|
#define | LWIP_TCPIP_CORE_LOCKING 0 |
|
#define | LWIP_TCPIP_CORE_LOCKING_INPUT 0 |
|
#define | LWIP_NETCONN 1 |
|
#define | LWIP_TCPIP_TIMEOUT 1 |
|
#define | LWIP_SOCKET 1 |
|
#define | LWIP_COMPAT_SOCKETS 1 |
|
#define | LWIP_POSIX_SOCKETS_IO_NAMES 1 |
|
#define | LWIP_TCP_KEEPALIVE 0 |
|
#define | LWIP_SO_SNDTIMEO 0 |
|
#define | LWIP_SO_RCVTIMEO 0 |
|
#define | LWIP_SO_RCVBUF 0 |
|
#define | RECV_BUFSIZE_DEFAULT INT_MAX |
|
#define | SO_REUSE 0 |
|
#define | SO_REUSE_RXTOALL 0 |
|
#define | LWIP_STATS 1 |
|
#define | LWIP_STATS_DISPLAY 0 |
|
#define | LINK_STATS 1 |
|
#define | ETHARP_STATS (LWIP_ARP) |
|
#define | IP_STATS 1 |
|
#define | IPFRAG_STATS (IP_REASSEMBLY || IP_FRAG) |
|
#define | ICMP_STATS 1 |
|
#define | IGMP_STATS (LWIP_IGMP) |
|
#define | UDP_STATS (LWIP_UDP) |
|
#define | TCP_STATS (LWIP_TCP) |
|
#define | MEM_STATS ((MEM_LIBC_MALLOC == 0) && (MEM_USE_POOLS == 0)) |
|
#define | MEMP_STATS (MEMP_MEM_MALLOC == 0) |
|
#define | SYS_STATS (NO_SYS == 0) |
|
#define | PPP_SUPPORT 0 |
|
#define | PPPOE_SUPPORT 0 |
|
#define | PPPOS_SUPPORT PPP_SUPPORT |
|
#define | CHECKSUM_GEN_IP 1 |
|
#define | CHECKSUM_GEN_UDP 1 |
|
#define | CHECKSUM_GEN_TCP 1 |
|
#define | CHECKSUM_GEN_ICMP 1 |
|
#define | CHECKSUM_CHECK_IP 1 |
|
#define | CHECKSUM_CHECK_UDP 1 |
|
#define | CHECKSUM_CHECK_TCP 1 |
|
#define | LWIP_CHECKSUM_ON_COPY 0 |
|
#define | LWIP_DBG_MIN_LEVEL LWIP_DBG_LEVEL_ALL |
|
#define | LWIP_DBG_TYPES_ON LWIP_DBG_ON |
|
#define | ETHARP_DEBUG LWIP_DBG_OFF |
|
#define | NETIF_DEBUG LWIP_DBG_OFF |
|
#define | PBUF_DEBUG LWIP_DBG_OFF |
|
#define | API_LIB_DEBUG LWIP_DBG_OFF |
|
#define | API_MSG_DEBUG LWIP_DBG_OFF |
|
#define | SOCKETS_DEBUG LWIP_DBG_OFF |
|
#define | ICMP_DEBUG LWIP_DBG_OFF |
|
#define | IGMP_DEBUG LWIP_DBG_OFF |
|
#define | INET_DEBUG LWIP_DBG_OFF |
|
#define | IP_DEBUG LWIP_DBG_OFF |
|
#define | IP_REASS_DEBUG LWIP_DBG_OFF |
|
#define | RAW_DEBUG LWIP_DBG_OFF |
|
#define | MEM_DEBUG LWIP_DBG_OFF |
|
#define | MEMP_DEBUG LWIP_DBG_OFF |
|
#define | SYS_DEBUG LWIP_DBG_OFF |
|
#define | TIMERS_DEBUG LWIP_DBG_OFF |
|
#define | TCP_DEBUG LWIP_DBG_OFF |
|
#define | TCP_INPUT_DEBUG LWIP_DBG_OFF |
|
#define | TCP_FR_DEBUG LWIP_DBG_OFF |
|
#define | TCP_RTO_DEBUG LWIP_DBG_OFF |
|
#define | TCP_CWND_DEBUG LWIP_DBG_OFF |
|
#define | TCP_WND_DEBUG LWIP_DBG_OFF |
|
#define | TCP_OUTPUT_DEBUG LWIP_DBG_OFF |
|
#define | TCP_RST_DEBUG LWIP_DBG_OFF |
|
#define | TCP_QLEN_DEBUG LWIP_DBG_OFF |
|
#define | UDP_DEBUG LWIP_DBG_OFF |
|
#define | TCPIP_DEBUG LWIP_DBG_OFF |
|
#define | PPP_DEBUG LWIP_DBG_OFF |
|
#define | SLIP_DEBUG LWIP_DBG_OFF |
|
#define | DHCP_DEBUG LWIP_DBG_OFF |
|
#define | AUTOIP_DEBUG LWIP_DBG_OFF |
|
#define | SNMP_MSG_DEBUG LWIP_DBG_OFF |
|
#define | SNMP_MIB_DEBUG LWIP_DBG_OFF |
|
#define | DNS_DEBUG LWIP_DBG_OFF |
|
lwIP Options Configuration
Definition in file opt.h.
DNS_LOCAL_HOSTLIST: Implements a local host-to-address list. If enabled, you have to define define DNS_LOCAL_HOSTLIST_INIT {{"host1", 0x123}, {"host2", 0x234}} (an array of structs name/address, where address is an u32_t in network byte order).
Instead, you can also use an external function: define DNS_LOOKUP_LOCAL_EXTERN(x) extern u32_t my_lookup_function(const char *name) that returns the IP address or INADDR_NONE if not found.
Definition at line 857 of file opt.h.
ETHARP_SUPPORT_VLAN==1: support receiving ethernet packets with VLAN header. Additionally, you can define ETHARP_VLAN_CHECK to an u16_t VLAN ID to check. If ETHARP_VLAN_CHECK is defined, only VLAN-traffic for this VLAN is accepted. If ETHARP_VLAN_CHECK is not defined, all traffic is accepted. Alternatively, define a function/define ETHARP_VLAN_CHECK_FN(eth_hdr, vlan) that returns 1 to accept a packet or 0 to drop a packet.
Definition at line 470 of file opt.h.
#define LWIP_ALLOW_MEM_FREE_FROM_OTHER_CONTEXT 0 |
Set this to 1 if you want to free PBUF_RAM pbufs (or call mem_free()) from interrupt context (or another context that doesn't allow waiting for a semaphore). If set to 1, mem_malloc will be protected by a semaphore and SYS_ARCH_PROTECT, while mem_free will only use SYS_ARCH_PROTECT. mem_malloc SYS_ARCH_UNPROTECTs with each loop so that mem_free can run.
ATTENTION: As you can see from the above description, this leads to dis-/ enabling interrupts often, which can be slow! Also, on low memory, mem_malloc can need longer.
If you don't want that, at least for NO_SYS=0, you can still use the following functions to enqueue a deallocation call which then runs in the tcpip_thread context:
- pbuf_free_callback(p);
- mem_free_callback(m);
Definition at line 212 of file opt.h.
TCP_MSS: TCP Maximum segment size. (default is 536, a conservative default, you might want to increase this.) For the receive side, this MSS is advertised to the remote side when opening a connection. For the transmit size, this MSS sets an upper limit on the MSS advertised by the remote host.
Definition at line 956 of file opt.h.
TCP_OVERSIZE: The maximum number of bytes that tcp_write may allocate ahead of time in an attempt to create shorter pbuf chains for transmission. The meaningful range is 0 to TCP_MSS. Some suggested values are:
0: Disable oversized allocation. Each tcp_write() allocates a new pbuf (old behaviour). 1: Allocate size-aligned pbufs with minimal excess. Use this if your scatter-gather DMA requires aligned fragments. 128: Limit the pbuf/memory overhead to 20%. TCP_MSS: Try to create unfragmented TCP packets. TCP_MSS/4: Try to create 4 fragments or less per TCP packet.
Definition at line 1053 of file opt.h.