STM32F769IDiscovery  1.00
uDANTE Audio Networking with STM32F7 DISCO board
opt.h
Go to the documentation of this file.
1 
7 /*
8  * Copyright (c) 2001-2004 Swedish Institute of Computer Science.
9  * All rights reserved.
10  *
11  * Redistribution and use in source and binary forms, with or without modification,
12  * are permitted provided that the following conditions are met:
13  *
14  * 1. Redistributions of source code must retain the above copyright notice,
15  * this list of conditions and the following disclaimer.
16  * 2. Redistributions in binary form must reproduce the above copyright notice,
17  * this list of conditions and the following disclaimer in the documentation
18  * and/or other materials provided with the distribution.
19  * 3. The name of the author may not be used to endorse or promote products
20  * derived from this software without specific prior written permission.
21  *
22  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
23  * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
24  * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
25  * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
26  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
27  * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
28  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
29  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
30  * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
31  * OF SUCH DAMAGE.
32  *
33  * This file is part of the lwIP TCP/IP stack.
34  *
35  * Author: Adam Dunkels <adam@sics.se>
36  *
37  */
38 #ifndef LWIP_HDR_OPT_H
39 #define LWIP_HDR_OPT_H
40 
41 /*
42  * Include user defined options first. Anything not defined in these files
43  * will be set to standard values. Override anything you don't like!
44  */
45 #include "lwipopts.h"
46 #include "lwip/debug.h"
47 
48 /*
49  -----------------------------------------------
50  ---------- Platform specific locking ----------
51  -----------------------------------------------
52 */
53 
59 #ifndef SYS_LIGHTWEIGHT_PROT
60 #define SYS_LIGHTWEIGHT_PROT 0
61 #endif
62 
67 #ifndef NO_SYS
68 #define NO_SYS 0
69 #endif
70 
75 #ifndef NO_SYS_NO_TIMERS
76 #define NO_SYS_NO_TIMERS 0
77 #endif
78 
83 #ifndef MEMCPY
84 #define MEMCPY(dst,src,len) memcpy(dst,src,len)
85 #endif
86 
91 #ifndef SMEMCPY
92 #define SMEMCPY(dst,src,len) memcpy(dst,src,len)
93 #endif
94 
101 #ifndef LWIP_MPU_COMPATIBLE
102 #define LWIP_MPU_COMPATIBLE 0
103 #endif
104 
105 /*
106  ------------------------------------
107  ---------- Memory options ----------
108  ------------------------------------
109 */
115 #ifndef MEM_LIBC_MALLOC
116 #define MEM_LIBC_MALLOC 0
117 #endif
118 
124 #ifndef MEMP_MEM_MALLOC
125 #define MEMP_MEM_MALLOC 0
126 #endif
127 
133 #ifndef MEM_ALIGNMENT
134 #define MEM_ALIGNMENT 1
135 #endif
136 
141 #ifndef MEM_SIZE
142 #define MEM_SIZE 1600
143 #endif
144 
154 #ifndef MEMP_OVERFLOW_CHECK
155 #define MEMP_OVERFLOW_CHECK 0
156 #endif
157 
162 #ifndef MEMP_SANITY_CHECK
163 #define MEMP_SANITY_CHECK 0
164 #endif
165 
172 #ifndef MEM_USE_POOLS
173 #define MEM_USE_POOLS 0
174 #endif
175 
180 #ifndef MEM_USE_POOLS_TRY_BIGGER_POOL
181 #define MEM_USE_POOLS_TRY_BIGGER_POOL 0
182 #endif
183 
190 #ifndef MEMP_USE_CUSTOM_POOLS
191 #define MEMP_USE_CUSTOM_POOLS 0
192 #endif
193 
212 #ifndef LWIP_ALLOW_MEM_FREE_FROM_OTHER_CONTEXT
213 #define LWIP_ALLOW_MEM_FREE_FROM_OTHER_CONTEXT 0
214 #endif
215 
216 /*
217  ------------------------------------------------
218  ---------- Internal Memory Pool Sizes ----------
219  ------------------------------------------------
220 */
226 #ifndef MEMP_NUM_PBUF
227 #define MEMP_NUM_PBUF 16
228 #endif
229 
234 #ifndef MEMP_NUM_RAW_PCB
235 #define MEMP_NUM_RAW_PCB 4
236 #endif
237 
243 #ifndef MEMP_NUM_UDP_PCB
244 #define MEMP_NUM_UDP_PCB 4
245 #endif
246 
251 #ifndef MEMP_NUM_TCP_PCB
252 #define MEMP_NUM_TCP_PCB 5
253 #endif
254 
259 #ifndef MEMP_NUM_TCP_PCB_LISTEN
260 #define MEMP_NUM_TCP_PCB_LISTEN 8
261 #endif
262 
267 #ifndef MEMP_NUM_TCP_SEG
268 #define MEMP_NUM_TCP_SEG 16
269 #endif
270 
275 #ifndef MEMP_NUM_REASSDATA
276 #define MEMP_NUM_REASSDATA 5
277 #endif
278 
286 #ifndef MEMP_NUM_FRAG_PBUF
287 #define MEMP_NUM_FRAG_PBUF 15
288 #endif
289 
296 #ifndef MEMP_NUM_ARP_QUEUE
297 #define MEMP_NUM_ARP_QUEUE 30
298 #endif
299 
306 #ifndef MEMP_NUM_IGMP_GROUP
307 #define MEMP_NUM_IGMP_GROUP 8
308 #endif
309 
315 #ifndef MEMP_NUM_SYS_TIMEOUT
316 #define MEMP_NUM_SYS_TIMEOUT (LWIP_TCP + IP_REASSEMBLY + LWIP_ARP + (2*LWIP_DHCP) + LWIP_AUTOIP + LWIP_IGMP + LWIP_DNS + (PPP_SUPPORT*6*MEMP_NUM_PPP_PCB) + (LWIP_IPV6 ? (1 + LWIP_IPV6_REASS + LWIP_IPV6_MLD) : 0))
317 #endif
318 
323 #ifndef MEMP_NUM_NETBUF
324 #define MEMP_NUM_NETBUF 2
325 #endif
326 
331 #ifndef MEMP_NUM_NETCONN
332 #define MEMP_NUM_NETCONN 4
333 #endif
334 
340 #ifndef MEMP_NUM_TCPIP_MSG_API
341 #define MEMP_NUM_TCPIP_MSG_API 8
342 #endif
343 
349 #ifndef MEMP_NUM_TCPIP_MSG_INPKT
350 #define MEMP_NUM_TCPIP_MSG_INPKT 8
351 #endif
352 
357 #ifndef MEMP_NUM_NETDB
358 #define MEMP_NUM_NETDB 1
359 #endif
360 
365 #ifndef MEMP_NUM_LOCALHOSTLIST
366 #define MEMP_NUM_LOCALHOSTLIST 1
367 #endif
368 
373 #ifndef MEMP_NUM_PPP_PCB
374 #define MEMP_NUM_PPP_PCB 1
375 #endif
376 
381 #ifndef MEMP_NUM_PPPOS_INTERFACES
382 #define MEMP_NUM_PPPOS_INTERFACES MEMP_NUM_PPP_PCB
383 #endif
384 
389 #ifndef MEMP_NUM_PPPOE_INTERFACES
390 #define MEMP_NUM_PPPOE_INTERFACES 1
391 #endif
392 
397 #ifndef MEMP_NUM_PPPOL2TP_INTERFACES
398 #define MEMP_NUM_PPPOL2TP_INTERFACES 1
399 #endif
400 
404 #ifndef PBUF_POOL_SIZE
405 #define PBUF_POOL_SIZE 16
406 #endif
407 
411 #ifndef MEMP_NUM_API_MSG
412 #define MEMP_NUM_API_MSG MEMP_NUM_TCPIP_MSG_API
413 #endif
414 
417 #ifndef MEMP_NUM_DNS_API_MSG
418 #define MEMP_NUM_DNS_API_MSG MEMP_NUM_TCPIP_MSG_API
419 #endif
420 
424 #ifndef MEMP_NUM_SOCKET_SETGETSOCKOPT_DATA
425 #define MEMP_NUM_SOCKET_SETGETSOCKOPT_DATA MEMP_NUM_TCPIP_MSG_API
426 #endif
427 
431 #ifndef MEMP_NUM_NETIFAPI_MSG
432 #define MEMP_NUM_NETIFAPI_MSG MEMP_NUM_TCPIP_MSG_API
433 #endif
434 
435 /*
436  ---------------------------------
437  ---------- ARP options ----------
438  ---------------------------------
439 */
443 #ifndef LWIP_ARP
444 #define LWIP_ARP 1
445 #endif
446 
450 #ifndef ARP_TABLE_SIZE
451 #define ARP_TABLE_SIZE 10
452 #endif
453 
458 #ifndef ARP_MAXAGE
459 #define ARP_MAXAGE 300
460 #endif
461 
469 #ifndef ARP_QUEUEING
470 #define ARP_QUEUEING 0
471 #endif
472 
477 #ifndef ARP_QUEUE_LEN
478 #define ARP_QUEUE_LEN 3
479 #endif
480 
491 #ifndef ETHARP_TRUST_IP_MAC
492 #define ETHARP_TRUST_IP_MAC 0
493 #endif
494 
505 #ifndef ETHARP_SUPPORT_VLAN
506 #define ETHARP_SUPPORT_VLAN 0
507 #endif
508 
512 #ifndef LWIP_ETHERNET
513 #define LWIP_ETHERNET (LWIP_ARP || PPPOE_SUPPORT)
514 #endif
515 
521 #ifndef ETH_PAD_SIZE
522 #define ETH_PAD_SIZE 0
523 #endif
524 
528 #ifndef ETHARP_SUPPORT_STATIC_ENTRIES
529 #define ETHARP_SUPPORT_STATIC_ENTRIES 0
530 #endif
531 
536 #ifndef ETHARP_TABLE_MATCH_NETIF
537 #define ETHARP_TABLE_MATCH_NETIF 0
538 #endif
539 
540 /*
541  --------------------------------
542  ---------- IP options ----------
543  --------------------------------
544 */
548 #ifndef LWIP_IPV4
549 #define LWIP_IPV4 1
550 #endif
551 
557 #ifndef IP_FORWARD
558 #define IP_FORWARD 0
559 #endif
560 
566 #ifndef IP_REASSEMBLY
567 #define IP_REASSEMBLY 1
568 #endif
569 
575 #ifndef IP_FRAG
576 #define IP_FRAG 1
577 #endif
578 
579 #if !LWIP_IPV4
580 /* disable IPv4 extensions when IPv4 is disabled */
581 #undef IP_FORWARD
582 #define IP_FORWARD 0
583 #undef IP_REASSEMBLY
584 #define IP_REASSEMBLY 0
585 #undef IP_FRAG
586 #define IP_FRAG 0
587 #endif /* !LWIP_IPV4 */
588 
594 #ifndef IP_OPTIONS_ALLOWED
595 #define IP_OPTIONS_ALLOWED 1
596 #endif
597 
603 #ifndef IP_REASS_MAXAGE
604 #define IP_REASS_MAXAGE 3
605 #endif
606 
613 #ifndef IP_REASS_MAX_PBUFS
614 #define IP_REASS_MAX_PBUFS 10
615 #endif
616 
624 #ifndef IP_FRAG_USES_STATIC_BUF
625 #define IP_FRAG_USES_STATIC_BUF 0
626 #endif
627 
632 #if IP_FRAG_USES_STATIC_BUF && !defined(IP_FRAG_MAX_MTU)
633 #define IP_FRAG_MAX_MTU 1500
634 #endif
635 
639 #ifndef IP_DEFAULT_TTL
640 #define IP_DEFAULT_TTL 255
641 #endif
642 
648 #ifndef IP_SOF_BROADCAST
649 #define IP_SOF_BROADCAST 0
650 #endif
651 
656 #ifndef IP_SOF_BROADCAST_RECV
657 #define IP_SOF_BROADCAST_RECV 0
658 #endif
659 
667 #ifndef IP_FORWARD_ALLOW_TX_ON_RX_NETIF
668 #define IP_FORWARD_ALLOW_TX_ON_RX_NETIF 0
669 #endif
670 
676 #ifndef LWIP_RANDOMIZE_INITIAL_LOCAL_PORTS
677 #define LWIP_RANDOMIZE_INITIAL_LOCAL_PORTS 0
678 #endif
679 
680 /*
681  ----------------------------------
682  ---------- ICMP options ----------
683  ----------------------------------
684 */
689 #ifndef LWIP_ICMP
690 #define LWIP_ICMP 1
691 #endif
692 
696 #ifndef ICMP_TTL
697 #define ICMP_TTL (IP_DEFAULT_TTL)
698 #endif
699 
703 #ifndef LWIP_BROADCAST_PING
704 #define LWIP_BROADCAST_PING 0
705 #endif
706 
710 #ifndef LWIP_MULTICAST_PING
711 #define LWIP_MULTICAST_PING 0
712 #endif
713 
714 /*
715  ---------------------------------
716  ---------- RAW options ----------
717  ---------------------------------
718 */
722 #ifndef LWIP_RAW
723 #define LWIP_RAW 0
724 #endif
725 
729 #ifndef RAW_TTL
730 #define RAW_TTL (IP_DEFAULT_TTL)
731 #endif
732 
733 /*
734  ----------------------------------
735  ---------- DHCP options ----------
736  ----------------------------------
737 */
741 #ifndef LWIP_DHCP
742 #define LWIP_DHCP 0
743 #endif
744 #if !LWIP_IPV4
745 /* disable DHCP when IPv4 is disabled */
746 #undef LWIP_DHCP
747 #define LWIP_DHCP 0
748 #endif /* !LWIP_IPV4 */
749 
753 #ifndef DHCP_DOES_ARP_CHECK
754 #define DHCP_DOES_ARP_CHECK ((LWIP_DHCP) && (LWIP_ARP))
755 #endif
756 
763 #ifndef LWIP_DHCP_CHECK_LINK_UP
764 #define LWIP_DHCP_CHECK_LINK_UP 0
765 #endif
766 
773 #ifndef LWIP_DHCP_BOOTP_FILE
774 #define LWIP_DHCP_BOOTP_FILE 0
775 #endif
776 
782 #ifndef LWIP_DHCP_GET_NTP_SRV
783 #define LWIP_DHCP_GET_NTP_SRV 0
784 #endif
785 
789 #ifndef LWIP_DHCP_MAX_NTP_SERVERS
790 #define LWIP_DHCP_MAX_NTP_SERVERS 1
791 #endif
792 
793 /*
794  ------------------------------------
795  ---------- AUTOIP options ----------
796  ------------------------------------
797 */
801 #ifndef LWIP_AUTOIP
802 #define LWIP_AUTOIP 0
803 #endif
804 #if !LWIP_IPV4
805 /* disable AUTOIP when IPv4 is disabled */
806 #undef LWIP_AUTOIP
807 #define LWIP_AUTOIP 0
808 #endif /* !LWIP_IPV4 */
809 
814 #ifndef LWIP_DHCP_AUTOIP_COOP
815 #define LWIP_DHCP_AUTOIP_COOP 0
816 #endif
817 
825 #ifndef LWIP_DHCP_AUTOIP_COOP_TRIES
826 #define LWIP_DHCP_AUTOIP_COOP_TRIES 9
827 #endif
828 
829 /*
830  ----------------------------------
831  ----- SNMP MIB2 support -----
832  ----------------------------------
833 */
840 #ifndef LWIP_MIB2_CALLBACKS
841 #define LWIP_MIB2_CALLBACKS 0
842 #endif
843 
844 /*
845  ----------------------------------
846  ----- Multicast/IGMP options -----
847  ----------------------------------
848 */
852 #ifndef LWIP_IGMP
853 #define LWIP_IGMP 0
854 #endif
855 #if !LWIP_IPV4
856 #undef LWIP_IGMP
857 #define LWIP_IGMP 0
858 #endif
859 
864 #ifndef LWIP_MULTICAST_TX_OPTIONS
865 #define LWIP_MULTICAST_TX_OPTIONS LWIP_IGMP
866 #endif
867 
868 /*
869  ----------------------------------
870  ---------- DNS options -----------
871  ----------------------------------
872 */
877 #ifndef LWIP_DNS
878 #define LWIP_DNS 0
879 #endif
880 
882 #ifndef DNS_TABLE_SIZE
883 #define DNS_TABLE_SIZE 4
884 #endif
885 
887 #ifndef DNS_MAX_NAME_LENGTH
888 #define DNS_MAX_NAME_LENGTH 256
889 #endif
890 
895 #ifndef DNS_MAX_SERVERS
896 #define DNS_MAX_SERVERS 2
897 #endif
898 
900 #ifndef DNS_DOES_NAME_CHECK
901 #define DNS_DOES_NAME_CHECK 1
902 #endif
903 
908 #ifndef LWIP_DNS_SECURE
909 #define LWIP_DNS_SECURE (LWIP_DNS_SECURE_RAND_XID | LWIP_DNS_SECURE_NO_MULTIPLE_OUTSTANDING | LWIP_DNS_SECURE_RAND_SRC_PORT)
910 #endif
911 /* A list of DNS security features follows */
912 #define LWIP_DNS_SECURE_RAND_XID 1
913 #define LWIP_DNS_SECURE_NO_MULTIPLE_OUTSTANDING 2
914 #define LWIP_DNS_SECURE_RAND_SRC_PORT 4
915 
926 #ifndef DNS_LOCAL_HOSTLIST
927 #define DNS_LOCAL_HOSTLIST 0
928 #endif /* DNS_LOCAL_HOSTLIST */
929 
932 #ifndef DNS_LOCAL_HOSTLIST_IS_DYNAMIC
933 #define DNS_LOCAL_HOSTLIST_IS_DYNAMIC 0
934 #endif /* DNS_LOCAL_HOSTLIST_IS_DYNAMIC */
935 
936 /*
937  ---------------------------------
938  ---------- UDP options ----------
939  ---------------------------------
940 */
944 #ifndef LWIP_UDP
945 #define LWIP_UDP 1
946 #endif
947 
951 #ifndef LWIP_UDPLITE
952 #define LWIP_UDPLITE 0
953 #endif
954 
958 #ifndef UDP_TTL
959 #define UDP_TTL (IP_DEFAULT_TTL)
960 #endif
961 
965 #ifndef LWIP_NETBUF_RECVINFO
966 #define LWIP_NETBUF_RECVINFO 0
967 #endif
968 
969 /*
970  ---------------------------------
971  ---------- TCP options ----------
972  ---------------------------------
973 */
977 #ifndef LWIP_TCP
978 #define LWIP_TCP 1
979 #endif
980 
984 #ifndef TCP_TTL
985 #define TCP_TTL (IP_DEFAULT_TTL)
986 #endif
987 
992 #ifndef TCP_WND
993 #define TCP_WND (4 * TCP_MSS)
994 #endif
995 
999 #ifndef TCP_MAXRTX
1000 #define TCP_MAXRTX 12
1001 #endif
1002 
1006 #ifndef TCP_SYNMAXRTX
1007 #define TCP_SYNMAXRTX 6
1008 #endif
1009 
1014 #ifndef TCP_QUEUE_OOSEQ
1015 #define TCP_QUEUE_OOSEQ (LWIP_TCP)
1016 #endif
1017 
1025 #ifndef TCP_MSS
1026 #define TCP_MSS 536
1027 #endif
1028 
1037 #ifndef TCP_CALCULATE_EFF_SEND_MSS
1038 #define TCP_CALCULATE_EFF_SEND_MSS 1
1039 #endif
1040 
1041 
1046 #ifndef TCP_SND_BUF
1047 #define TCP_SND_BUF (2 * TCP_MSS)
1048 #endif
1049 
1054 #ifndef TCP_SND_QUEUELEN
1055 #define TCP_SND_QUEUELEN ((4 * (TCP_SND_BUF) + (TCP_MSS - 1))/(TCP_MSS))
1056 #endif
1057 
1063 #ifndef TCP_SNDLOWAT
1064 #define TCP_SNDLOWAT LWIP_MIN(LWIP_MAX(((TCP_SND_BUF)/2), (2 * TCP_MSS) + 1), (TCP_SND_BUF) - 1)
1065 #endif
1066 
1072 #ifndef TCP_SNDQUEUELOWAT
1073 #define TCP_SNDQUEUELOWAT LWIP_MAX(((TCP_SND_QUEUELEN)/2), 5)
1074 #endif
1075 
1080 #ifndef TCP_OOSEQ_MAX_BYTES
1081 #define TCP_OOSEQ_MAX_BYTES 0
1082 #endif
1083 
1088 #ifndef TCP_OOSEQ_MAX_PBUFS
1089 #define TCP_OOSEQ_MAX_PBUFS 0
1090 #endif
1091 
1095 #ifndef TCP_LISTEN_BACKLOG
1096 #define TCP_LISTEN_BACKLOG 0
1097 #endif
1098 
1104 #ifndef TCP_DEFAULT_LISTEN_BACKLOG
1105 #define TCP_DEFAULT_LISTEN_BACKLOG 0xff
1106 #endif
1107 
1122 #ifndef TCP_OVERSIZE
1123 #define TCP_OVERSIZE TCP_MSS
1124 #endif
1125 
1132 #ifndef LWIP_TCP_TIMESTAMPS
1133 #define LWIP_TCP_TIMESTAMPS 0
1134 #endif
1135 
1140 #ifndef TCP_WND_UPDATE_THRESHOLD
1141 #define TCP_WND_UPDATE_THRESHOLD LWIP_MIN((TCP_WND / 4), (TCP_MSS * 4))
1142 #endif
1143 
1151 #if !defined(LWIP_EVENT_API) && !defined(LWIP_CALLBACK_API)
1152 #define LWIP_EVENT_API 0
1153 #define LWIP_CALLBACK_API 1
1154 #endif
1155 
1164 #ifndef LWIP_WND_SCALE
1165 #define LWIP_WND_SCALE 0
1166 #define TCP_RCV_SCALE 0
1167 #endif
1168 
1169 
1170 /*
1171  ----------------------------------
1172  ---------- Pbuf options ----------
1173  ----------------------------------
1174 */
1180 #ifndef PBUF_LINK_HLEN
1181 #ifdef LWIP_HOOK_VLAN_SET
1182 #define PBUF_LINK_HLEN (18 + ETH_PAD_SIZE)
1183 #else /* LWIP_HOOK_VLAN_SET */
1184 #define PBUF_LINK_HLEN (14 + ETH_PAD_SIZE)
1185 #endif /* LWIP_HOOK_VLAN_SET */
1186 #endif
1187 
1192 #ifndef PBUF_LINK_ENCAPSULATION_HLEN
1193 #define PBUF_LINK_ENCAPSULATION_HLEN 0
1194 #endif
1195 
1201 #ifndef PBUF_POOL_BUFSIZE
1202 #define PBUF_POOL_BUFSIZE LWIP_MEM_ALIGN_SIZE(TCP_MSS+40+PBUF_LINK_ENCAPSULATION_HLEN+PBUF_LINK_HLEN)
1203 #endif
1204 
1205 /*
1206  ------------------------------------------------
1207  ---------- Network Interfaces options ----------
1208  ------------------------------------------------
1209 */
1214 #ifndef LWIP_NETIF_HOSTNAME
1215 #define LWIP_NETIF_HOSTNAME 0
1216 #endif
1217 
1221 #ifndef LWIP_NETIF_API
1222 #define LWIP_NETIF_API 0
1223 #endif
1224 
1229 #ifndef LWIP_NETIF_STATUS_CALLBACK
1230 #define LWIP_NETIF_STATUS_CALLBACK 0
1231 #endif
1232 
1237 #ifndef LWIP_NETIF_LINK_CALLBACK
1238 #define LWIP_NETIF_LINK_CALLBACK 0
1239 #endif
1240 
1245 #ifndef LWIP_NETIF_REMOVE_CALLBACK
1246 #define LWIP_NETIF_REMOVE_CALLBACK 0
1247 #endif
1248 
1256 #ifndef LWIP_NETIF_HWADDRHINT
1257 #define LWIP_NETIF_HWADDRHINT 0
1258 #endif
1259 
1264 #ifndef LWIP_NETIF_LOOPBACK
1265 #define LWIP_NETIF_LOOPBACK 0
1266 #endif
1267 
1272 #ifndef LWIP_LOOPBACK_MAX_PBUFS
1273 #define LWIP_LOOPBACK_MAX_PBUFS 0
1274 #endif
1275 
1289 #ifndef LWIP_NETIF_LOOPBACK_MULTITHREADING
1290 #define LWIP_NETIF_LOOPBACK_MULTITHREADING (!NO_SYS)
1291 #endif
1292 
1302 #ifndef LWIP_NETIF_TX_SINGLE_PBUF
1303 #define LWIP_NETIF_TX_SINGLE_PBUF 0
1304 #endif /* LWIP_NETIF_TX_SINGLE_PBUF */
1305 
1306 /*
1307  ------------------------------------
1308  ---------- LOOPIF options ----------
1309  ------------------------------------
1310 */
1316 #ifndef LWIP_HAVE_LOOPIF
1317 #define LWIP_HAVE_LOOPIF LWIP_NETIF_LOOPBACK
1318 #endif
1319 
1323 #ifndef LWIP_LOOPIF_MULTICAST
1324 #define LWIP_LOOPIF_MULTICAST 0
1325 #endif
1326 
1327 /*
1328  ------------------------------------
1329  ---------- SLIPIF options ----------
1330  ------------------------------------
1331 */
1335 #ifndef LWIP_HAVE_SLIPIF
1336 #define LWIP_HAVE_SLIPIF 0
1337 #endif
1338 
1339 /*
1340  ------------------------------------
1341  ---------- Thread options ----------
1342  ------------------------------------
1343 */
1347 #ifndef TCPIP_THREAD_NAME
1348 #define TCPIP_THREAD_NAME "tcpip_thread"
1349 #endif
1350 
1356 #ifndef TCPIP_THREAD_STACKSIZE
1357 #define TCPIP_THREAD_STACKSIZE 0
1358 #endif
1359 
1365 #ifndef TCPIP_THREAD_PRIO
1366 #define TCPIP_THREAD_PRIO 1
1367 #endif
1368 
1374 #ifndef TCPIP_MBOX_SIZE
1375 #define TCPIP_MBOX_SIZE 0
1376 #endif
1377 
1381 #ifndef SLIPIF_THREAD_NAME
1382 #define SLIPIF_THREAD_NAME "slipif_loop"
1383 #endif
1384 
1390 #ifndef SLIPIF_THREAD_STACKSIZE
1391 #define SLIPIF_THREAD_STACKSIZE 0
1392 #endif
1393 
1399 #ifndef SLIPIF_THREAD_PRIO
1400 #define SLIPIF_THREAD_PRIO 1
1401 #endif
1402 
1406 #ifndef DEFAULT_THREAD_NAME
1407 #define DEFAULT_THREAD_NAME "lwIP"
1408 #endif
1409 
1415 #ifndef DEFAULT_THREAD_STACKSIZE
1416 #define DEFAULT_THREAD_STACKSIZE 0
1417 #endif
1418 
1424 #ifndef DEFAULT_THREAD_PRIO
1425 #define DEFAULT_THREAD_PRIO 1
1426 #endif
1427 
1433 #ifndef DEFAULT_RAW_RECVMBOX_SIZE
1434 #define DEFAULT_RAW_RECVMBOX_SIZE 0
1435 #endif
1436 
1442 #ifndef DEFAULT_UDP_RECVMBOX_SIZE
1443 #define DEFAULT_UDP_RECVMBOX_SIZE 0
1444 #endif
1445 
1451 #ifndef DEFAULT_TCP_RECVMBOX_SIZE
1452 #define DEFAULT_TCP_RECVMBOX_SIZE 0
1453 #endif
1454 
1460 #ifndef DEFAULT_ACCEPTMBOX_SIZE
1461 #define DEFAULT_ACCEPTMBOX_SIZE 0
1462 #endif
1463 
1464 /*
1465  ----------------------------------------------
1466  ---------- Sequential layer options ----------
1467  ----------------------------------------------
1468 */
1473 #ifndef LWIP_TCPIP_CORE_LOCKING
1474 #define LWIP_TCPIP_CORE_LOCKING 0
1475 #endif
1476 
1481 #ifndef LWIP_TCPIP_CORE_LOCKING_INPUT
1482 #define LWIP_TCPIP_CORE_LOCKING_INPUT 0
1483 #endif
1484 
1488 #ifndef LWIP_NETCONN
1489 #define LWIP_NETCONN 1
1490 #endif
1491 
1495 #ifndef LWIP_TCPIP_TIMEOUT
1496 #define LWIP_TCPIP_TIMEOUT 0
1497 #endif
1498 
1509 #ifndef LWIP_NETCONN_SEM_PER_THREAD
1510 #define LWIP_NETCONN_SEM_PER_THREAD 0
1511 #endif
1512 
1521 #ifndef LWIP_NETCONN_FULLDUPLEX
1522 #define LWIP_NETCONN_FULLDUPLEX 0
1523 #endif
1524 
1525 /*
1526  ------------------------------------
1527  ---------- Socket options ----------
1528  ------------------------------------
1529 */
1533 #ifndef LWIP_SOCKET
1534 #define LWIP_SOCKET 1
1535 #endif
1536 
1537 /* LWIP_SOCKET_SET_ERRNO==1: Set errno when socket functions cannot complete
1538  * successfully, as required by POSIX. Default is POSIX-compliant.
1539  */
1540 #ifndef LWIP_SOCKET_SET_ERRNO
1541 #define LWIP_SOCKET_SET_ERRNO 1
1542 #endif
1543 
1550 #ifndef LWIP_COMPAT_SOCKETS
1551 #define LWIP_COMPAT_SOCKETS 1
1552 #endif
1553 
1559 #ifndef LWIP_POSIX_SOCKETS_IO_NAMES
1560 #define LWIP_POSIX_SOCKETS_IO_NAMES 1
1561 #endif
1562 
1570 #ifndef LWIP_SOCKET_OFFSET
1571 #define LWIP_SOCKET_OFFSET 0
1572 #endif
1573 
1579 #ifndef LWIP_TCP_KEEPALIVE
1580 #define LWIP_TCP_KEEPALIVE 0
1581 #endif
1582 
1587 #ifndef LWIP_SO_SNDTIMEO
1588 #define LWIP_SO_SNDTIMEO 0
1589 #endif
1590 
1595 #ifndef LWIP_SO_RCVTIMEO
1596 #define LWIP_SO_RCVTIMEO 0
1597 #endif
1598 
1603 #ifndef LWIP_SO_SNDRCVTIMEO_NONSTANDARD
1604 #define LWIP_SO_SNDRCVTIMEO_NONSTANDARD 0
1605 #endif
1606 
1610 #ifndef LWIP_SO_RCVBUF
1611 #define LWIP_SO_RCVBUF 0
1612 #endif
1613 
1617 #ifndef LWIP_SO_LINGER
1618 #define LWIP_SO_LINGER 0
1619 #endif
1620 
1624 #ifndef RECV_BUFSIZE_DEFAULT
1625 #define RECV_BUFSIZE_DEFAULT INT_MAX
1626 #endif
1627 
1631 #ifndef LWIP_TCP_CLOSE_TIMEOUT_MS_DEFAULT
1632 #define LWIP_TCP_CLOSE_TIMEOUT_MS_DEFAULT 20000
1633 #endif
1634 
1638 #ifndef SO_REUSE
1639 #define SO_REUSE 0
1640 #endif
1641 
1647 #ifndef SO_REUSE_RXTOALL
1648 #define SO_REUSE_RXTOALL 0
1649 #endif
1650 
1659 #ifndef LWIP_FIONREAD_LINUXMODE
1660 #define LWIP_FIONREAD_LINUXMODE 0
1661 #endif
1662 
1663 /*
1664  ----------------------------------------
1665  ---------- Statistics options ----------
1666  ----------------------------------------
1667 */
1671 #ifndef LWIP_STATS
1672 #define LWIP_STATS 1
1673 #endif
1674 
1675 #if LWIP_STATS
1676 
1680 #ifndef LWIP_STATS_DISPLAY
1681 #define LWIP_STATS_DISPLAY 0
1682 #endif
1683 
1687 #ifndef LINK_STATS
1688 #define LINK_STATS 1
1689 #endif
1690 
1694 #ifndef ETHARP_STATS
1695 #define ETHARP_STATS (LWIP_ARP)
1696 #endif
1697 
1701 #ifndef IP_STATS
1702 #define IP_STATS 1
1703 #endif
1704 
1709 #ifndef IPFRAG_STATS
1710 #define IPFRAG_STATS (IP_REASSEMBLY || IP_FRAG)
1711 #endif
1712 
1716 #ifndef ICMP_STATS
1717 #define ICMP_STATS 1
1718 #endif
1719 
1723 #ifndef IGMP_STATS
1724 #define IGMP_STATS (LWIP_IGMP)
1725 #endif
1726 
1731 #ifndef UDP_STATS
1732 #define UDP_STATS (LWIP_UDP)
1733 #endif
1734 
1739 #ifndef TCP_STATS
1740 #define TCP_STATS (LWIP_TCP)
1741 #endif
1742 
1746 #ifndef MEM_STATS
1747 #define MEM_STATS ((MEM_LIBC_MALLOC == 0) && (MEM_USE_POOLS == 0))
1748 #endif
1749 
1753 #ifndef MEMP_STATS
1754 #define MEMP_STATS (MEMP_MEM_MALLOC == 0)
1755 #endif
1756 
1760 #ifndef SYS_STATS
1761 #define SYS_STATS (NO_SYS == 0)
1762 #endif
1763 
1767 #ifndef IP6_STATS
1768 #define IP6_STATS (LWIP_IPV6)
1769 #endif
1770 
1774 #ifndef ICMP6_STATS
1775 #define ICMP6_STATS (LWIP_IPV6 && LWIP_ICMP6)
1776 #endif
1777 
1781 #ifndef IP6_FRAG_STATS
1782 #define IP6_FRAG_STATS (LWIP_IPV6 && (LWIP_IPV6_FRAG || LWIP_IPV6_REASS))
1783 #endif
1784 
1788 #ifndef MLD6_STATS
1789 #define MLD6_STATS (LWIP_IPV6 && LWIP_IPV6_MLD)
1790 #endif
1791 
1795 #ifndef ND6_STATS
1796 #define ND6_STATS (LWIP_IPV6)
1797 #endif
1798 
1802 #ifndef MIB2_STATS
1803 #define MIB2_STATS 0
1804 #endif
1805 
1806 #else
1807 
1808 #define LINK_STATS 0
1809 #define ETHARP_STATS 0
1810 #define IP_STATS 0
1811 #define IPFRAG_STATS 0
1812 #define ICMP_STATS 0
1813 #define IGMP_STATS 0
1814 #define UDP_STATS 0
1815 #define TCP_STATS 0
1816 #define MEM_STATS 0
1817 #define MEMP_STATS 0
1818 #define SYS_STATS 0
1819 #define LWIP_STATS_DISPLAY 0
1820 #define IP6_STATS 0
1821 #define ICMP6_STATS 0
1822 #define IP6_FRAG_STATS 0
1823 #define MLD6_STATS 0
1824 #define ND6_STATS 0
1825 #define MIB2_STATS 0
1826 
1827 #endif /* LWIP_STATS */
1828 
1829 /*
1830  ---------------------------------
1831  ---------- PPP options ----------
1832  ---------------------------------
1833 */
1834 
1838 #ifndef PPP_SUPPORT
1839 #define PPP_SUPPORT 0
1840 #endif
1841 
1845 #ifndef PPPOE_SUPPORT
1846 #define PPPOE_SUPPORT 0
1847 #endif
1848 
1852 #ifndef PPPOL2TP_SUPPORT
1853 #define PPPOL2TP_SUPPORT 0
1854 #endif
1855 
1859 #ifndef PPPOL2TP_AUTH_SUPPORT
1860 #define PPPOL2TP_AUTH_SUPPORT PPPOL2TP_SUPPORT
1861 #endif
1862 
1866 #ifndef PPPOS_SUPPORT
1867 #define PPPOS_SUPPORT PPP_SUPPORT
1868 #endif
1869 
1873 #ifndef LWIP_PPP_API
1874 #define LWIP_PPP_API (PPP_SUPPORT && (NO_SYS == 0))
1875 #endif
1876 
1877 #if PPP_SUPPORT
1878 
1884 #ifndef PPP_INPROC_IRQ_SAFE
1885 #define PPP_INPROC_IRQ_SAFE 0
1886 #endif
1887 
1893 #ifndef PRINTPKT_SUPPORT
1894 #define PRINTPKT_SUPPORT 0
1895 #endif
1896 
1900 #ifndef PPP_IPV4_SUPPORT
1901 #define PPP_IPV4_SUPPORT (LWIP_IPV4)
1902 #endif
1903 
1907 #ifndef PPP_IPV6_SUPPORT
1908 #define PPP_IPV6_SUPPORT (LWIP_IPV6)
1909 #endif
1910 
1920 #ifndef PPP_NOTIFY_PHASE
1921 #define PPP_NOTIFY_PHASE 0
1922 #endif
1923 
1934 #ifndef PPP_USE_PBUF_RAM
1935 #define PPP_USE_PBUF_RAM 0
1936 #endif
1937 
1941 #ifndef PPP_FCS_TABLE
1942 #define PPP_FCS_TABLE 1
1943 #endif
1944 
1948 #ifndef PAP_SUPPORT
1949 #define PAP_SUPPORT 0
1950 #endif
1951 
1955 #ifndef CHAP_SUPPORT
1956 #define CHAP_SUPPORT 0
1957 #endif
1958 
1962 #ifndef MSCHAP_SUPPORT
1963 #define MSCHAP_SUPPORT 0
1964 #endif
1965 #if MSCHAP_SUPPORT
1966 /* MSCHAP requires CHAP support */
1967 #undef CHAP_SUPPORT
1968 #define CHAP_SUPPORT 1
1969 #endif /* MSCHAP_SUPPORT */
1970 
1974 #ifndef EAP_SUPPORT
1975 #define EAP_SUPPORT 0
1976 #endif
1977 
1981 #ifndef CCP_SUPPORT
1982 #define CCP_SUPPORT 0
1983 #endif
1984 
1988 #ifndef MPPE_SUPPORT
1989 #define MPPE_SUPPORT 0
1990 #endif
1991 #if MPPE_SUPPORT
1992 /* MPPE requires CCP support */
1993 #undef CCP_SUPPORT
1994 #define CCP_SUPPORT 1
1995 /* MPPE requires MSCHAP support */
1996 #undef MSCHAP_SUPPORT
1997 #define MSCHAP_SUPPORT 1
1998 /* MSCHAP requires CHAP support */
1999 #undef CHAP_SUPPORT
2000 #define CHAP_SUPPORT 1
2001 #endif /* MPPE_SUPPORT */
2002 
2006 #ifndef CBCP_SUPPORT
2007 #define CBCP_SUPPORT 0
2008 #endif
2009 
2013 #ifndef ECP_SUPPORT
2014 #define ECP_SUPPORT 0
2015 #endif
2016 
2020 #ifndef DEMAND_SUPPORT
2021 #define DEMAND_SUPPORT 0
2022 #endif
2023 
2027 #ifndef LQR_SUPPORT
2028 #define LQR_SUPPORT 0
2029 #endif
2030 
2036 #ifndef PPP_SERVER
2037 #define PPP_SERVER 0
2038 #endif
2039 
2040 #if PPP_SERVER
2041 /*
2042  * PPP_OUR_NAME: Our name for authentication purposes
2043  */
2044 #ifndef PPP_OUR_NAME
2045 #define PPP_OUR_NAME "lwIP"
2046 #endif
2047 #endif /* PPP_SERVER */
2048 
2052 #ifndef VJ_SUPPORT
2053 #define VJ_SUPPORT 1
2054 #endif
2055 /* VJ compression is only supported for IPv4 over PPPoS. */
2056 #if !PPPOS_SUPPORT || !PPP_IPV4_SUPPORT
2057 #undef VJ_SUPPORT
2058 #define VJ_SUPPORT 0
2059 #endif /* !PPPOS_SUPPORT */
2060 
2065 #ifndef PPP_MD5_RANDM
2066 #define PPP_MD5_RANDM (CHAP_SUPPORT || EAP_SUPPORT || PPPOL2TP_AUTH_SUPPORT)
2067 #endif
2068 
2100 /* CHAP, EAP, L2TP AUTH and MD5 Random require MD5 support */
2101 #if CHAP_SUPPORT || EAP_SUPPORT || PPPOL2TP_AUTH_SUPPORT || PPP_MD5_RANDM
2102 #ifndef LWIP_INCLUDED_POLARSSL_MD5
2103 #define LWIP_INCLUDED_POLARSSL_MD5 1
2104 #endif /* LWIP_INCLUDED_POLARSSL_MD5 */
2105 #endif /* CHAP_SUPPORT || EAP_SUPPORT || PPPOL2TP_AUTH_SUPPORT || PPP_MD5_RANDM */
2106 
2107 #if MSCHAP_SUPPORT
2108 /* MSCHAP require MD4 support */
2109 #ifndef LWIP_INCLUDED_POLARSSL_MD4
2110 #define LWIP_INCLUDED_POLARSSL_MD4 1
2111 #endif /* LWIP_INCLUDED_POLARSSL_MD4 */
2112 /* MSCHAP require SHA1 support */
2113 #ifndef LWIP_INCLUDED_POLARSSL_SHA1
2114 #define LWIP_INCLUDED_POLARSSL_SHA1 1
2115 #endif /* LWIP_INCLUDED_POLARSSL_SHA1 */
2116 /* MSCHAP require DES support */
2117 #ifndef LWIP_INCLUDED_POLARSSL_DES
2118 #define LWIP_INCLUDED_POLARSSL_DES 1
2119 #endif /* LWIP_INCLUDED_POLARSSL_DES */
2120 /* MS-CHAP support is required for MPPE */
2121 #if MPPE_SUPPORT
2122 /* MPPE require ARC4 support */
2123 #ifndef LWIP_INCLUDED_POLARSSL_ARC4
2124 #define LWIP_INCLUDED_POLARSSL_ARC4 1
2125 #endif /* LWIP_INCLUDED_POLARSSL_ARC4*/
2126 #endif /* MPPE_SUPPORT */
2127 #endif /* MSCHAP_SUPPORT */
2128 
2129 /* Default value if unset */
2130 #ifndef LWIP_INCLUDED_POLARSSL_MD4
2131 #define LWIP_INCLUDED_POLARSSL_MD4 0
2132 #endif /* LWIP_INCLUDED_POLARSSL_MD4 */
2133 #ifndef LWIP_INCLUDED_POLARSSL_MD5
2134 #define LWIP_INCLUDED_POLARSSL_MD5 0
2135 #endif /* LWIP_INCLUDED_POLARSSL_MD5 */
2136 #ifndef LWIP_INCLUDED_POLARSSL_SHA1
2137 #define LWIP_INCLUDED_POLARSSL_SHA1 0
2138 #endif /* LWIP_INCLUDED_POLARSSL_SHA1 */
2139 #ifndef LWIP_INCLUDED_POLARSSL_DES
2140 #define LWIP_INCLUDED_POLARSSL_DES 0
2141 #endif /* LWIP_INCLUDED_POLARSSL_DES */
2142 #ifndef LWIP_INCLUDED_POLARSSL_ARC4
2143 #define LWIP_INCLUDED_POLARSSL_ARC4 0
2144 #endif /* LWIP_INCLUDED_POLARSSL_ARC4 */
2145 
2146 /*
2147  * PPP Timeouts
2148  */
2149 
2153 #ifndef FSM_DEFTIMEOUT
2154 #define FSM_DEFTIMEOUT 6
2155 #endif
2156 
2160 #ifndef FSM_DEFMAXTERMREQS
2161 #define FSM_DEFMAXTERMREQS 2
2162 #endif
2163 
2167 #ifndef FSM_DEFMAXCONFREQS
2168 #define FSM_DEFMAXCONFREQS 10
2169 #endif
2170 
2174 #ifndef FSM_DEFMAXNAKLOOPS
2175 #define FSM_DEFMAXNAKLOOPS 5
2176 #endif
2177 
2181 #ifndef UPAP_DEFTIMEOUT
2182 #define UPAP_DEFTIMEOUT 6
2183 #endif
2184 
2188 #ifndef UPAP_DEFTRANSMITS
2189 #define UPAP_DEFTRANSMITS 10
2190 #endif
2191 
2192 #if PPP_SERVER
2193 
2196 #ifndef UPAP_DEFREQTIME
2197 #define UPAP_DEFREQTIME 30
2198 #endif
2199 #endif /* PPP_SERVER */
2200 
2204 #ifndef CHAP_DEFTIMEOUT
2205 #define CHAP_DEFTIMEOUT 6
2206 #endif
2207 
2211 #ifndef CHAP_DEFTRANSMITS
2212 #define CHAP_DEFTRANSMITS 10
2213 #endif
2214 
2215 #if PPP_SERVER
2216 
2219 #ifndef CHAP_DEFRECHALLENGETIME
2220 #define CHAP_DEFRECHALLENGETIME 0
2221 #endif
2222 #endif /* PPP_SERVER */
2223 
2227 #ifndef EAP_DEFREQTIME
2228 #define EAP_DEFREQTIME 6
2229 #endif
2230 
2234 #ifndef EAP_DEFALLOWREQ
2235 #define EAP_DEFALLOWREQ 10
2236 #endif
2237 
2238 #if PPP_SERVER
2239 
2242 #ifndef EAP_DEFTIMEOUT
2243 #define EAP_DEFTIMEOUT 6
2244 #endif
2245 
2249 #ifndef EAP_DEFTRANSMITS
2250 #define EAP_DEFTRANSMITS 10
2251 #endif
2252 #endif /* PPP_SERVER */
2253 
2258 #ifndef LCP_DEFLOOPBACKFAIL
2259 #define LCP_DEFLOOPBACKFAIL 10
2260 #endif
2261 
2265 #ifndef LCP_ECHOINTERVAL
2266 #define LCP_ECHOINTERVAL 0
2267 #endif
2268 
2272 #ifndef LCP_MAXECHOFAILS
2273 #define LCP_MAXECHOFAILS 3
2274 #endif
2275 
2279 #ifndef PPP_MAXIDLEFLAG
2280 #define PPP_MAXIDLEFLAG 100
2281 #endif
2282 
2290 #ifndef PPP_MRU
2291 #define PPP_MRU 1500
2292 #endif
2293 
2297 #ifndef PPP_DEFMRU
2298 #define PPP_DEFMRU 1500
2299 #endif
2300 
2304 #ifndef PPP_MAXMRU
2305 #define PPP_MAXMRU 1500
2306 #endif
2307 
2311 #ifndef PPP_MINMRU
2312 #define PPP_MINMRU 128
2313 #endif
2314 
2320 #if PPPOL2TP_SUPPORT
2321 #ifndef PPPOL2TP_DEFMRU
2322 #define PPPOL2TP_DEFMRU 1450
2323 #endif
2324 #endif /* PPPOL2TP_SUPPORT */
2325 
2329 #ifndef MAXNAMELEN
2330 #define MAXNAMELEN 256
2331 #endif
2332 
2336 #ifndef MAXSECRETLEN
2337 #define MAXSECRETLEN 256
2338 #endif
2339 
2340 #endif /* PPP_SUPPORT */
2341 
2342 /*
2343  --------------------------------------
2344  ---------- Checksum options ----------
2345  --------------------------------------
2346 */
2347 
2353 #ifndef LWIP_CHECKSUM_CTRL_PER_NETIF
2354 #define LWIP_CHECKSUM_CTRL_PER_NETIF 0
2355 #endif
2356 
2360 #ifndef CHECKSUM_GEN_IP
2361 #define CHECKSUM_GEN_IP 1
2362 #endif
2363 
2367 #ifndef CHECKSUM_GEN_UDP
2368 #define CHECKSUM_GEN_UDP 1
2369 #endif
2370 
2374 #ifndef CHECKSUM_GEN_TCP
2375 #define CHECKSUM_GEN_TCP 1
2376 #endif
2377 
2381 #ifndef CHECKSUM_GEN_ICMP
2382 #define CHECKSUM_GEN_ICMP 1
2383 #endif
2384 
2388 #ifndef CHECKSUM_GEN_ICMP6
2389 #define CHECKSUM_GEN_ICMP6 1
2390 #endif
2391 
2395 #ifndef CHECKSUM_CHECK_IP
2396 #define CHECKSUM_CHECK_IP 1
2397 #endif
2398 
2402 #ifndef CHECKSUM_CHECK_UDP
2403 #define CHECKSUM_CHECK_UDP 1
2404 #endif
2405 
2409 #ifndef CHECKSUM_CHECK_TCP
2410 #define CHECKSUM_CHECK_TCP 1
2411 #endif
2412 
2416 #ifndef CHECKSUM_CHECK_ICMP
2417 #define CHECKSUM_CHECK_ICMP 1
2418 #endif
2419 
2423 #ifndef CHECKSUM_CHECK_ICMP6
2424 #define CHECKSUM_CHECK_ICMP6 1
2425 #endif
2426 
2431 #ifndef LWIP_CHECKSUM_ON_COPY
2432 #define LWIP_CHECKSUM_ON_COPY 0
2433 #endif
2434 
2435 /*
2436  ---------------------------------------
2437  ---------- IPv6 options ---------------
2438  ---------------------------------------
2439 */
2443 #ifndef LWIP_IPV6
2444 #define LWIP_IPV6 0
2445 #endif
2446 
2450 #ifndef LWIP_IPV6_NUM_ADDRESSES
2451 #define LWIP_IPV6_NUM_ADDRESSES 3
2452 #endif
2453 
2457 #ifndef LWIP_IPV6_FORWARD
2458 #define LWIP_IPV6_FORWARD 0
2459 #endif
2460 
2464 #ifndef LWIP_ICMP6
2465 #define LWIP_ICMP6 (LWIP_IPV6)
2466 #endif
2467 
2472 #ifndef LWIP_ICMP6_DATASIZE
2473 #define LWIP_ICMP6_DATASIZE 8
2474 #endif
2475 
2479 #ifndef LWIP_ICMP6_HL
2480 #define LWIP_ICMP6_HL 255
2481 #endif
2482 
2486 #ifndef LWIP_IPV6_MLD
2487 #define LWIP_IPV6_MLD (LWIP_IPV6)
2488 #endif
2489 
2493 #ifndef MEMP_NUM_MLD6_GROUP
2494 #define MEMP_NUM_MLD6_GROUP 4
2495 #endif
2496 
2500 #ifndef LWIP_IPV6_FRAG
2501 #define LWIP_IPV6_FRAG 0
2502 #endif
2503 
2507 #ifndef LWIP_IPV6_REASS
2508 #define LWIP_IPV6_REASS (LWIP_IPV6)
2509 #endif
2510 
2515 #ifndef LWIP_ND6_QUEUEING
2516 #define LWIP_ND6_QUEUEING (LWIP_IPV6)
2517 #endif
2518 
2522 #ifndef MEMP_NUM_ND6_QUEUE
2523 #define MEMP_NUM_ND6_QUEUE 20
2524 #endif
2525 
2529 #ifndef LWIP_ND6_NUM_NEIGHBORS
2530 #define LWIP_ND6_NUM_NEIGHBORS 10
2531 #endif
2532 
2536 #ifndef LWIP_ND6_NUM_DESTINATIONS
2537 #define LWIP_ND6_NUM_DESTINATIONS 10
2538 #endif
2539 
2543 #ifndef LWIP_ND6_NUM_PREFIXES
2544 #define LWIP_ND6_NUM_PREFIXES 5
2545 #endif
2546 
2550 #ifndef LWIP_ND6_NUM_ROUTERS
2551 #define LWIP_ND6_NUM_ROUTERS 3
2552 #endif
2553 
2558 #ifndef LWIP_ND6_MAX_MULTICAST_SOLICIT
2559 #define LWIP_ND6_MAX_MULTICAST_SOLICIT 3
2560 #endif
2561 
2566 #ifndef LWIP_ND6_MAX_UNICAST_SOLICIT
2567 #define LWIP_ND6_MAX_UNICAST_SOLICIT 3
2568 #endif
2569 
2573 #ifndef LWIP_ND6_MAX_ANYCAST_DELAY_TIME
2574 #define LWIP_ND6_MAX_ANYCAST_DELAY_TIME 1000
2575 #endif
2576 
2580 #ifndef LWIP_ND6_MAX_NEIGHBOR_ADVERTISEMENT
2581 #define LWIP_ND6_MAX_NEIGHBOR_ADVERTISEMENT 3
2582 #endif
2583 
2588 #ifndef LWIP_ND6_REACHABLE_TIME
2589 #define LWIP_ND6_REACHABLE_TIME 30000
2590 #endif
2591 
2595 #ifndef LWIP_ND6_RETRANS_TIMER
2596 #define LWIP_ND6_RETRANS_TIMER 1000
2597 #endif
2598 
2603 #ifndef LWIP_ND6_DELAY_FIRST_PROBE_TIME
2604 #define LWIP_ND6_DELAY_FIRST_PROBE_TIME 5000
2605 #endif
2606 
2611 #ifndef LWIP_ND6_ALLOW_RA_UPDATES
2612 #define LWIP_ND6_ALLOW_RA_UPDATES 1
2613 #endif
2614 
2619 #ifndef LWIP_IPV6_SEND_ROUTER_SOLICIT
2620 #define LWIP_IPV6_SEND_ROUTER_SOLICIT 1
2621 #endif
2622 
2628 #ifndef LWIP_ND6_TCP_REACHABILITY_HINTS
2629 #define LWIP_ND6_TCP_REACHABILITY_HINTS 1
2630 #endif
2631 
2635 #ifndef LWIP_IPV6_AUTOCONFIG
2636 #define LWIP_IPV6_AUTOCONFIG (LWIP_IPV6)
2637 #endif
2638 
2642 #ifndef LWIP_IPV6_DUP_DETECT_ATTEMPTS
2643 #define LWIP_IPV6_DUP_DETECT_ATTEMPTS 1
2644 #endif
2645 
2649 #ifndef LWIP_IPV6_DHCP6
2650 #define LWIP_IPV6_DHCP6 0
2651 #endif
2652 
2653 /*
2654  ---------------------------------------
2655  ---------- Hook options ---------------
2656  ---------------------------------------
2657 */
2658 
2659 /* Hooks are undefined by default, define them to a function if you need them. */
2660 
2748 /*
2749  ---------------------------------------
2750  ---------- Debugging options ----------
2751  ---------------------------------------
2752 */
2758 #ifndef LWIP_DBG_MIN_LEVEL
2759 #define LWIP_DBG_MIN_LEVEL LWIP_DBG_LEVEL_ALL
2760 #endif
2761 
2766 #ifndef LWIP_DBG_TYPES_ON
2767 #define LWIP_DBG_TYPES_ON LWIP_DBG_ON
2768 #endif
2769 
2773 #ifndef ETHARP_DEBUG
2774 #define ETHARP_DEBUG LWIP_DBG_OFF
2775 #endif
2776 
2780 #ifndef NETIF_DEBUG
2781 #define NETIF_DEBUG LWIP_DBG_OFF
2782 #endif
2783 
2787 #ifndef PBUF_DEBUG
2788 #define PBUF_DEBUG LWIP_DBG_OFF
2789 #endif
2790 
2794 #ifndef API_LIB_DEBUG
2795 #define API_LIB_DEBUG LWIP_DBG_OFF
2796 #endif
2797 
2801 #ifndef API_MSG_DEBUG
2802 #define API_MSG_DEBUG LWIP_DBG_OFF
2803 #endif
2804 
2808 #ifndef SOCKETS_DEBUG
2809 #define SOCKETS_DEBUG LWIP_DBG_OFF
2810 #endif
2811 
2815 #ifndef ICMP_DEBUG
2816 #define ICMP_DEBUG LWIP_DBG_OFF
2817 #endif
2818 
2822 #ifndef IGMP_DEBUG
2823 #define IGMP_DEBUG LWIP_DBG_OFF
2824 #endif
2825 
2829 #ifndef INET_DEBUG
2830 #define INET_DEBUG LWIP_DBG_OFF
2831 #endif
2832 
2836 #ifndef IP_DEBUG
2837 #define IP_DEBUG LWIP_DBG_OFF
2838 #endif
2839 
2843 #ifndef IP_REASS_DEBUG
2844 #define IP_REASS_DEBUG LWIP_DBG_OFF
2845 #endif
2846 
2850 #ifndef RAW_DEBUG
2851 #define RAW_DEBUG LWIP_DBG_OFF
2852 #endif
2853 
2857 #ifndef MEM_DEBUG
2858 #define MEM_DEBUG LWIP_DBG_OFF
2859 #endif
2860 
2864 #ifndef MEMP_DEBUG
2865 #define MEMP_DEBUG LWIP_DBG_OFF
2866 #endif
2867 
2871 #ifndef SYS_DEBUG
2872 #define SYS_DEBUG LWIP_DBG_OFF
2873 #endif
2874 
2878 #ifndef TIMERS_DEBUG
2879 #define TIMERS_DEBUG LWIP_DBG_OFF
2880 #endif
2881 
2885 #ifndef TCP_DEBUG
2886 #define TCP_DEBUG LWIP_DBG_OFF
2887 #endif
2888 
2892 #ifndef TCP_INPUT_DEBUG
2893 #define TCP_INPUT_DEBUG LWIP_DBG_OFF
2894 #endif
2895 
2899 #ifndef TCP_FR_DEBUG
2900 #define TCP_FR_DEBUG LWIP_DBG_OFF
2901 #endif
2902 
2907 #ifndef TCP_RTO_DEBUG
2908 #define TCP_RTO_DEBUG LWIP_DBG_OFF
2909 #endif
2910 
2914 #ifndef TCP_CWND_DEBUG
2915 #define TCP_CWND_DEBUG LWIP_DBG_OFF
2916 #endif
2917 
2921 #ifndef TCP_WND_DEBUG
2922 #define TCP_WND_DEBUG LWIP_DBG_OFF
2923 #endif
2924 
2928 #ifndef TCP_OUTPUT_DEBUG
2929 #define TCP_OUTPUT_DEBUG LWIP_DBG_OFF
2930 #endif
2931 
2935 #ifndef TCP_RST_DEBUG
2936 #define TCP_RST_DEBUG LWIP_DBG_OFF
2937 #endif
2938 
2942 #ifndef TCP_QLEN_DEBUG
2943 #define TCP_QLEN_DEBUG LWIP_DBG_OFF
2944 #endif
2945 
2949 #ifndef UDP_DEBUG
2950 #define UDP_DEBUG LWIP_DBG_OFF
2951 #endif
2952 
2956 #ifndef TCPIP_DEBUG
2957 #define TCPIP_DEBUG LWIP_DBG_OFF
2958 #endif
2959 
2963 #ifndef PPP_DEBUG
2964 #define PPP_DEBUG LWIP_DBG_OFF
2965 #endif
2966 
2970 #ifndef SLIP_DEBUG
2971 #define SLIP_DEBUG LWIP_DBG_OFF
2972 #endif
2973 
2977 #ifndef DHCP_DEBUG
2978 #define DHCP_DEBUG LWIP_DBG_OFF
2979 #endif
2980 
2984 #ifndef AUTOIP_DEBUG
2985 #define AUTOIP_DEBUG LWIP_DBG_OFF
2986 #endif
2987 
2991 #ifndef DNS_DEBUG
2992 #define DNS_DEBUG LWIP_DBG_OFF
2993 #endif
2994 
2998 #ifndef IP6_DEBUG
2999 #define IP6_DEBUG LWIP_DBG_OFF
3000 #endif
3001 
3002 /*
3003  --------------------------------------------------
3004  ---------- Performance tracking options ----------
3005  --------------------------------------------------
3006 */
3011 #ifndef LWIP_PERF
3012 #define LWIP_PERF 0
3013 #endif
3014 
3015 #endif /* LWIP_HDR_OPT_H */
3016