opt_dualstack.h 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295
  1. /* test an lwipopts.h file with default contents */
  2. #define NO_SYS 0
  3. #define NO_SYS_NO_TIMERS 0
  4. #define LWIP_TIMERS 1
  5. #define LWIP_TIMERS_CUSTOM 0
  6. #define LWIP_MPU_COMPATIBLE 0
  7. #define LWIP_TCPIP_CORE_LOCKING 1
  8. #define LWIP_TCPIP_CORE_LOCKING_INPUT 0
  9. #define SYS_LIGHTWEIGHT_PROT 1
  10. #define MEM_LIBC_MALLOC 0
  11. #define MEMP_MEM_MALLOC 0
  12. #define MEMP_MEM_INIT 0
  13. #define MEM_ALIGNMENT 1
  14. #define MEM_SIZE 1600
  15. #define MEMP_OVERFLOW_CHECK 0
  16. #define MEMP_SANITY_CHECK 0
  17. #define MEM_OVERFLOW_CHECK 0
  18. #define MEM_SANITY_CHECK 0
  19. #define MEM_USE_POOLS 0
  20. #define MEM_USE_POOLS_TRY_BIGGER_POOL 0
  21. #define MEMP_USE_CUSTOM_POOLS 0
  22. #define LWIP_ALLOW_MEM_FREE_FROM_OTHER_CONTEXT 0
  23. /*#define MEMP_NUM_PBUF 16
  24. #define MEMP_NUM_RAW_PCB 4
  25. #define MEMP_NUM_UDP_PCB 4
  26. #define MEMP_NUM_TCP_PCB 5
  27. #define MEMP_NUM_TCP_PCB_LISTEN 8
  28. #define MEMP_NUM_TCP_SEG 16
  29. #define MEMP_NUM_ALTCP_PCB MEMP_NUM_TCP_PCB
  30. #define MEMP_NUM_REASSDATA 5
  31. #define MEMP_NUM_FRAG_PBUF 15
  32. #define MEMP_NUM_ARP_QUEUE 30
  33. #define MEMP_NUM_IGMP_GROUP 8
  34. #define MEMP_NUM_SYS_TIMEOUT (LWIP_NUM_SYS_TIMEOUT_INTERNAL + 2)
  35. #define MEMP_NUM_NETBUF 2
  36. #define MEMP_NUM_NETCONN 4
  37. #define MEMP_NUM_SELECT_CB 4
  38. #define MEMP_NUM_TCPIP_MSG_API 8
  39. #define MEMP_NUM_TCPIP_MSG_INPKT 8
  40. #define MEMP_NUM_NETDB 1
  41. #define MEMP_NUM_LOCALHOSTLIST 1
  42. #define PBUF_POOL_SIZE 16
  43. #define MEMP_NUM_API_MSG MEMP_NUM_TCPIP_MSG_API
  44. #define MEMP_NUM_DNS_API_MSG MEMP_NUM_TCPIP_MSG_API
  45. #define MEMP_NUM_SOCKET_SETGETSOCKOPT_DATA MEMP_NUM_TCPIP_MSG_API
  46. #define MEMP_NUM_NETIFAPI_MSG MEMP_NUM_TCPIP_MSG_API*/
  47. #define LWIP_ARP 1
  48. #define ARP_TABLE_SIZE 10
  49. #define ARP_MAXAGE 300
  50. #define ARP_QUEUEING 0
  51. #define ARP_QUEUE_LEN 3
  52. #define ETHARP_SUPPORT_VLAN 0
  53. #define LWIP_ETHERNET LWIP_ARP
  54. #define ETH_PAD_SIZE 0
  55. #define ETHARP_SUPPORT_STATIC_ENTRIES 0
  56. #define ETHARP_TABLE_MATCH_NETIF !LWIP_SINGLE_NETIF
  57. #define LWIP_IPV4 1
  58. #define IP_FORWARD 0
  59. #define IP_REASSEMBLY 1
  60. #define IP_FRAG 1
  61. #define IP_OPTIONS_ALLOWED 1
  62. #define IP_REASS_MAXAGE 15
  63. #define IP_REASS_MAX_PBUFS 10
  64. #define IP_DEFAULT_TTL 255
  65. #define IP_SOF_BROADCAST 0
  66. #define IP_SOF_BROADCAST_RECV 0
  67. #define IP_FORWARD_ALLOW_TX_ON_RX_NETIF 0
  68. #define LWIP_ICMP 1
  69. #define ICMP_TTL (IP_DEFAULT_TTL)
  70. #define LWIP_BROADCAST_PING 0
  71. #define LWIP_MULTICAST_PING 0
  72. #define LWIP_RAW 0
  73. #define RAW_TTL (IP_DEFAULT_TTL)
  74. #define LWIP_DHCP LWIP_UDP
  75. #define LWIP_DHCP_CHECK_LINK_UP 0
  76. #define LWIP_DHCP_BOOTP_FILE 0
  77. #define LWIP_DHCP_GET_NTP_SRV 0
  78. #define LWIP_DHCP_MAX_NTP_SERVERS 1
  79. #define LWIP_DHCP_MAX_DNS_SERVERS DNS_MAX_SERVERS
  80. #define LWIP_AUTOIP 0
  81. #define LWIP_DHCP_AUTOIP_COOP 0
  82. #define LWIP_DHCP_AUTOIP_COOP_TRIES 9
  83. #define LWIP_MIB2_CALLBACKS 0
  84. #define LWIP_MULTICAST_TX_OPTIONS ((LWIP_IGMP || LWIP_IPV6_MLD) && (LWIP_UDP || LWIP_RAW))
  85. #define LWIP_IGMP 0
  86. #define LWIP_DNS 0
  87. #define DNS_TABLE_SIZE 4
  88. #define DNS_MAX_NAME_LENGTH 256
  89. #define DNS_MAX_SERVERS 2
  90. #define DNS_MAX_RETRIES 4
  91. #define DNS_DOES_NAME_CHECK 1
  92. #define LWIP_DNS_SECURE (LWIP_DNS_SECURE_RAND_XID | LWIP_DNS_SECURE_NO_MULTIPLE_OUTSTANDING | LWIP_DNS_SECURE_RAND_SRC_PORT)
  93. #define DNS_LOCAL_HOSTLIST 0
  94. #define DNS_LOCAL_HOSTLIST_IS_DYNAMIC 0
  95. #define LWIP_DNS_SUPPORT_MDNS_QUERIES 0
  96. #define LWIP_UDP 1
  97. #define LWIP_UDPLITE 0
  98. #define UDP_TTL (IP_DEFAULT_TTL)
  99. #define LWIP_NETBUF_RECVINFO 0
  100. #define LWIP_TCP 1
  101. #define TCP_TTL (IP_DEFAULT_TTL)
  102. #define TCP_WND (4 * TCP_MSS)
  103. #define TCP_MAXRTX 12
  104. #define TCP_SYNMAXRTX 6
  105. #define TCP_QUEUE_OOSEQ (LWIP_TCP)
  106. #define LWIP_TCP_SACK_OUT 0
  107. #define LWIP_TCP_MAX_SACK_NUM 4
  108. #define TCP_MSS 536
  109. #define TCP_CALCULATE_EFF_SEND_MSS 1
  110. #define TCP_SND_BUF (2 * TCP_MSS)
  111. #define TCP_SND_QUEUELEN ((4 * (TCP_SND_BUF) + (TCP_MSS - 1))/(TCP_MSS))
  112. #define TCP_SNDLOWAT LWIP_MIN(LWIP_MAX(((TCP_SND_BUF)/2), (2 * TCP_MSS) + 1), (TCP_SND_BUF) - 1)
  113. #define TCP_SNDQUEUELOWAT LWIP_MAX(((TCP_SND_QUEUELEN)/2), 5)
  114. #define TCP_OOSEQ_MAX_BYTES 0
  115. #define TCP_OOSEQ_BYTES_LIMIT(pcb) TCP_OOSEQ_MAX_BYTES
  116. #define TCP_OOSEQ_MAX_PBUFS 0
  117. #define TCP_OOSEQ_PBUFS_LIMIT(pcb) TCP_OOSEQ_MAX_PBUFS
  118. #define TCP_LISTEN_BACKLOG 0
  119. #define TCP_DEFAULT_LISTEN_BACKLOG 0xff
  120. #define TCP_OVERSIZE TCP_MSS
  121. #define LWIP_TCP_TIMESTAMPS 0
  122. #define TCP_WND_UPDATE_THRESHOLD LWIP_MIN((TCP_WND / 4), (TCP_MSS * 4))
  123. #define LWIP_EVENT_API 0
  124. #define LWIP_CALLBACK_API 1
  125. #define LWIP_WND_SCALE 0
  126. #define TCP_RCV_SCALE 0
  127. #define LWIP_TCP_PCB_NUM_EXT_ARGS 0
  128. #define LWIP_ALTCP 0
  129. #define LWIP_ALTCP_TLS 0
  130. #define PBUF_LINK_HLEN (14 + ETH_PAD_SIZE)
  131. #define PBUF_LINK_ENCAPSULATION_HLEN 0
  132. #define PBUF_POOL_BUFSIZE LWIP_MEM_ALIGN_SIZE(TCP_MSS+40+PBUF_LINK_ENCAPSULATION_HLEN+PBUF_LINK_HLEN)
  133. #define LWIP_PBUF_REF_T u8_t
  134. #define LWIP_SINGLE_NETIF 0
  135. #define LWIP_NETIF_HOSTNAME 0
  136. #define LWIP_NETIF_API 0
  137. #define LWIP_NETIF_STATUS_CALLBACK 0
  138. #define LWIP_NETIF_EXT_STATUS_CALLBACK 0
  139. #define LWIP_NETIF_LINK_CALLBACK 0
  140. #define LWIP_NETIF_REMOVE_CALLBACK 0
  141. #define LWIP_NETIF_HWADDRHINT 0
  142. #define LWIP_NETIF_TX_SINGLE_PBUF 0
  143. #define LWIP_NUM_NETIF_CLIENT_DATA 0
  144. #define LWIP_HAVE_LOOPIF (LWIP_NETIF_LOOPBACK && !LWIP_SINGLE_NETIF)
  145. #define LWIP_LOOPIF_MULTICAST 0
  146. #define LWIP_NETIF_LOOPBACK 0
  147. #define LWIP_LOOPBACK_MAX_PBUFS 0
  148. #define LWIP_NETIF_LOOPBACK_MULTITHREADING (!NO_SYS)
  149. /*#define TCPIP_THREAD_NAME "tcpip_thread"
  150. #define TCPIP_THREAD_STACKSIZE 0
  151. #define TCPIP_THREAD_PRIO 1
  152. #define TCPIP_MBOX_SIZE 0
  153. #define LWIP_TCPIP_THREAD_ALIVE()
  154. #define SLIPIF_THREAD_NAME "slipif_loop"
  155. #define SLIPIF_THREAD_STACKSIZE 0
  156. #define SLIPIF_THREAD_PRIO 1
  157. #define DEFAULT_THREAD_NAME "lwIP"
  158. #define DEFAULT_THREAD_STACKSIZE 0
  159. #define DEFAULT_THREAD_PRIO 1
  160. #define DEFAULT_RAW_RECVMBOX_SIZE 0
  161. #define DEFAULT_UDP_RECVMBOX_SIZE 0
  162. #define DEFAULT_TCP_RECVMBOX_SIZE 0
  163. #define DEFAULT_ACCEPTMBOX_SIZE 0*/
  164. #define LWIP_NETCONN 1
  165. #define LWIP_TCPIP_TIMEOUT 0
  166. #define LWIP_NETCONN_SEM_PER_THREAD 0
  167. #define LWIP_NETCONN_FULLDUPLEX 0
  168. #define LWIP_SOCKET 1
  169. #define LWIP_COMPAT_SOCKETS 1 /* 0..2 */
  170. #define LWIP_POSIX_SOCKETS_IO_NAMES 1
  171. #define LWIP_SOCKET_OFFSET 0
  172. #define LWIP_TCP_KEEPALIVE 0
  173. #define LWIP_SO_SNDTIMEO 0
  174. #define LWIP_SO_RCVTIMEO 0
  175. #define LWIP_SO_SNDRCVTIMEO_NONSTANDARD 0
  176. #define LWIP_SO_RCVBUF 0
  177. #define LWIP_SO_LINGER 0
  178. #define RECV_BUFSIZE_DEFAULT INT_MAX
  179. #define LWIP_TCP_CLOSE_TIMEOUT_MS_DEFAULT 20000
  180. #define SO_REUSE 0
  181. #define SO_REUSE_RXTOALL 0
  182. #define LWIP_FIONREAD_LINUXMODE 0
  183. #define LWIP_SOCKET_SELECT 1
  184. #define LWIP_SOCKET_POLL 1
  185. #define LWIP_STATS 1
  186. #define LWIP_STATS_DISPLAY 0
  187. #define LINK_STATS 1
  188. #define ETHARP_STATS (LWIP_ARP)
  189. #define IP_STATS 1
  190. #define IPFRAG_STATS (IP_REASSEMBLY || IP_FRAG)
  191. #define ICMP_STATS 1
  192. #define IGMP_STATS (LWIP_IGMP)
  193. #define UDP_STATS (LWIP_UDP)
  194. #define TCP_STATS (LWIP_TCP)
  195. #define MEM_STATS ((MEM_LIBC_MALLOC == 0) && (MEM_USE_POOLS == 0))
  196. #define MEMP_STATS (MEMP_MEM_MALLOC == 0)
  197. #define SYS_STATS (NO_SYS == 0)
  198. #define IP6_STATS (LWIP_IPV6)
  199. #define ICMP6_STATS (LWIP_IPV6 && LWIP_ICMP6)
  200. #define IP6_FRAG_STATS (LWIP_IPV6 && (LWIP_IPV6_FRAG || LWIP_IPV6_REASS))
  201. #define MLD6_STATS (LWIP_IPV6 && LWIP_IPV6_MLD)
  202. #define ND6_STATS (LWIP_IPV6)
  203. #define MIB2_STATS 0
  204. #define LWIP_CHECKSUM_CTRL_PER_NETIF 0
  205. #define CHECKSUM_GEN_IP 1
  206. #define CHECKSUM_GEN_UDP 1
  207. #define CHECKSUM_GEN_TCP 1
  208. #define CHECKSUM_GEN_ICMP 1
  209. #define CHECKSUM_GEN_ICMP6 1
  210. #define CHECKSUM_CHECK_IP 1
  211. #define CHECKSUM_CHECK_UDP 1
  212. #define CHECKSUM_CHECK_TCP 1
  213. #define CHECKSUM_CHECK_ICMP 1
  214. #define CHECKSUM_CHECK_ICMP6 1
  215. #define LWIP_CHECKSUM_ON_COPY 0
  216. #define LWIP_IPV6 1
  217. #define IPV6_REASS_MAXAGE 60
  218. #define LWIP_IPV6_SCOPES (LWIP_IPV6 && !LWIP_SINGLE_NETIF)
  219. #define LWIP_IPV6_SCOPES_DEBUG 0
  220. #define LWIP_IPV6_NUM_ADDRESSES 3
  221. #define LWIP_IPV6_FORWARD 0
  222. #define LWIP_IPV6_FRAG 1
  223. #define LWIP_IPV6_REASS (LWIP_IPV6)
  224. #define LWIP_IPV6_SEND_ROUTER_SOLICIT 1
  225. #define LWIP_IPV6_AUTOCONFIG (LWIP_IPV6)
  226. #define LWIP_IPV6_ADDRESS_LIFETIMES (LWIP_IPV6_AUTOCONFIG)
  227. #define LWIP_IPV6_DUP_DETECT_ATTEMPTS 1
  228. #define LWIP_ICMP6 (LWIP_IPV6)
  229. #define LWIP_ICMP6_DATASIZE 8
  230. #define LWIP_ICMP6_HL 255
  231. #define LWIP_IPV6_MLD (LWIP_IPV6)
  232. #define MEMP_NUM_MLD6_GROUP 4
  233. #define LWIP_ND6_QUEUEING (LWIP_IPV6)
  234. #define MEMP_NUM_ND6_QUEUE 20
  235. #define LWIP_ND6_NUM_NEIGHBORS 10
  236. #define LWIP_ND6_NUM_DESTINATIONS 10
  237. #define LWIP_ND6_NUM_PREFIXES 5
  238. #define LWIP_ND6_NUM_ROUTERS 3
  239. #define LWIP_ND6_MAX_MULTICAST_SOLICIT 3
  240. #define LWIP_ND6_MAX_UNICAST_SOLICIT 3
  241. #define LWIP_ND6_MAX_ANYCAST_DELAY_TIME 1000
  242. #define LWIP_ND6_MAX_NEIGHBOR_ADVERTISEMENT 3
  243. #define LWIP_ND6_REACHABLE_TIME 30000
  244. #define LWIP_ND6_RETRANS_TIMER 1000
  245. #define LWIP_ND6_DELAY_FIRST_PROBE_TIME 5000
  246. #define LWIP_ND6_ALLOW_RA_UPDATES 1
  247. #define LWIP_ND6_TCP_REACHABILITY_HINTS 1
  248. #define LWIP_ND6_RDNSS_MAX_DNS_SERVERS 0
  249. #define LWIP_IPV6_DHCP6 0
  250. #define LWIP_IPV6_DHCP6_STATEFUL 0
  251. #define LWIP_IPV6_DHCP6_STATELESS LWIP_IPV6_DHCP6
  252. #define LWIP_DHCP6_GET_NTP_SRV 0
  253. #define LWIP_DHCP6_MAX_NTP_SERVERS 1
  254. #define LWIP_DHCP6_MAX_DNS_SERVERS DNS_MAX_SERVERS
  255. /* TODO: check hooks */
  256. #define LWIP_DBG_MIN_LEVEL LWIP_DBG_LEVEL_ALL
  257. #define LWIP_DBG_TYPES_ON LWIP_DBG_ON
  258. #define ETHARP_DEBUG LWIP_DBG_OFF
  259. #define NETIF_DEBUG LWIP_DBG_OFF
  260. #define PBUF_DEBUG LWIP_DBG_OFF
  261. #define API_LIB_DEBUG LWIP_DBG_OFF
  262. #define API_MSG_DEBUG LWIP_DBG_OFF
  263. #define SOCKETS_DEBUG LWIP_DBG_OFF
  264. #define ICMP_DEBUG LWIP_DBG_OFF
  265. #define IGMP_DEBUG LWIP_DBG_OFF
  266. #define INET_DEBUG LWIP_DBG_OFF
  267. #define IP_DEBUG LWIP_DBG_OFF
  268. #define IP_REASS_DEBUG LWIP_DBG_OFF
  269. #define RAW_DEBUG LWIP_DBG_OFF
  270. #define MEM_DEBUG LWIP_DBG_OFF
  271. #define MEMP_DEBUG LWIP_DBG_OFF
  272. #define SYS_DEBUG LWIP_DBG_OFF
  273. #define TIMERS_DEBUG LWIP_DBG_OFF
  274. #define TCP_DEBUG LWIP_DBG_OFF
  275. #define TCP_INPUT_DEBUG LWIP_DBG_OFF
  276. #define TCP_FR_DEBUG LWIP_DBG_OFF
  277. #define TCP_RTO_DEBUG LWIP_DBG_OFF
  278. #define TCP_CWND_DEBUG LWIP_DBG_OFF
  279. #define TCP_WND_DEBUG LWIP_DBG_OFF
  280. #define TCP_OUTPUT_DEBUG LWIP_DBG_OFF
  281. #define TCP_RST_DEBUG LWIP_DBG_OFF
  282. #define TCP_QLEN_DEBUG LWIP_DBG_OFF
  283. #define UDP_DEBUG LWIP_DBG_OFF
  284. #define TCPIP_DEBUG LWIP_DBG_OFF
  285. #define SLIP_DEBUG LWIP_DBG_OFF
  286. #define DHCP_DEBUG LWIP_DBG_OFF
  287. #define AUTOIP_DEBUG LWIP_DBG_OFF
  288. #define DNS_DEBUG LWIP_DBG_OFF
  289. #define IP6_DEBUG LWIP_DBG_OFF
  290. #define DHCP6_DEBUG LWIP_DBG_OFF
  291. #define LWIP_TESTMODE 0
  292. #define LWIP_PERF 0