sdk-core
v2026.11.05
PS2 SDK - core tier (build-critical EE/IOP modules)
Toggle main menu visibility
Loading...
Searching...
No Matches
opt.h
Go to the documentation of this file.
1
6
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
39
/*
40
* NOTE: || defined __DOXYGEN__ is a workaround for doxygen bug -
41
* without this, doxygen does not see the actual #define
42
*/
43
44
#if !defined LWIP_HDR_OPT_H
45
#define LWIP_HDR_OPT_H
46
47
/*
48
* Include user defined options first. Anything not defined in these files
49
* will be set to standard values. Override anything you don't like!
50
*/
51
#include "lwipopts.h"
52
#include "
lwip/debug.h
"
53
70
71
/*
72
------------------------------------
73
-------------- NO SYS --------------
74
------------------------------------
75
*/
88
#if !defined NO_SYS || defined __DOXYGEN__
89
#define NO_SYS 0
90
#endif
94
105
#if !defined LWIP_TIMERS || defined __DOXYGEN__
106
#ifdef NO_SYS_NO_TIMERS
107
#define LWIP_TIMERS (!NO_SYS || (NO_SYS && !NO_SYS_NO_TIMERS))
108
#else
109
#define LWIP_TIMERS 1
110
#endif
111
#endif
112
120
#if !defined LWIP_TIMERS_CUSTOM || defined __DOXYGEN__
121
#define LWIP_TIMERS_CUSTOM 0
122
#endif
126
136
#if !defined MEMCPY || defined __DOXYGEN__
137
#define MEMCPY(dst,src,len) memcpy(dst,src,len)
138
#endif
139
144
#if !defined SMEMCPY || defined __DOXYGEN__
145
#define SMEMCPY(dst,src,len) memcpy(dst,src,len)
146
#endif
147
153
#if !defined MEMMOVE || defined __DOXYGEN__
154
#define MEMMOVE(dst,src,len) memmove(dst,src,len)
155
#endif
159
160
/*
161
------------------------------------
162
----------- Core locking -----------
163
------------------------------------
164
*/
177
#if !defined LWIP_MPU_COMPATIBLE || defined __DOXYGEN__
178
#define LWIP_MPU_COMPATIBLE 0
179
#endif
180
189
#if !defined LWIP_TCPIP_CORE_LOCKING || defined __DOXYGEN__
190
#define LWIP_TCPIP_CORE_LOCKING 1
191
#endif
192
201
#if !defined LWIP_TCPIP_CORE_LOCKING_INPUT || defined __DOXYGEN__
202
#define LWIP_TCPIP_CORE_LOCKING_INPUT 0
203
#endif
204
212
#if !defined SYS_LIGHTWEIGHT_PROT || defined __DOXYGEN__
213
#define SYS_LIGHTWEIGHT_PROT 1
214
#endif
215
226
#if !defined LWIP_ASSERT_CORE_LOCKED || defined __DOXYGEN__
227
#define LWIP_ASSERT_CORE_LOCKED()
228
#endif
229
230
234
235
/*
236
------------------------------------
237
---------- Memory options ----------
238
------------------------------------
239
*/
251
#if !defined MEM_LIBC_MALLOC || defined __DOXYGEN__
252
#define MEM_LIBC_MALLOC 0
253
#elif MEM_LIBC_MALLOC
254
#define MEM_CUSTOM_ALLOCATOR 1
255
#define MEM_CUSTOM_FREE free
256
#define MEM_CUSTOM_MALLOC malloc
257
#define MEM_CUSTOM_CALLOC calloc
258
#endif
259
268
#if !defined MEM_CUSTOM_ALLOCATOR || defined __DOXYGEN__
269
#define MEM_CUSTOM_ALLOCATOR 0
270
#endif
271
281
#if !defined MEMP_MEM_MALLOC || defined __DOXYGEN__
282
#define MEMP_MEM_MALLOC 0
283
#endif
284
290
#if !defined MEMP_MEM_INIT || defined __DOXYGEN__
291
#define MEMP_MEM_INIT 0
292
#endif
293
299
#if !defined MEM_ALIGNMENT || defined __DOXYGEN__
300
#define MEM_ALIGNMENT 1
301
#endif
302
307
#if !defined MEM_SIZE || defined __DOXYGEN__
308
#define MEM_SIZE 1600
309
#endif
310
320
#if !defined MEMP_OVERFLOW_CHECK || defined __DOXYGEN__
321
#define MEMP_OVERFLOW_CHECK 0
322
#endif
323
328
#if !defined MEMP_SANITY_CHECK || defined __DOXYGEN__
329
#define MEMP_SANITY_CHECK 0
330
#endif
331
341
#if !defined MEM_OVERFLOW_CHECK || defined __DOXYGEN__
342
#define MEM_OVERFLOW_CHECK 0
343
#endif
344
349
#if !defined MEM_SANITY_CHECK || defined __DOXYGEN__
350
#define MEM_SANITY_CHECK 0
351
#endif
352
359
#if !defined MEM_USE_POOLS || defined __DOXYGEN__
360
#define MEM_USE_POOLS 0
361
#endif
362
367
#if !defined MEM_USE_POOLS_TRY_BIGGER_POOL || defined __DOXYGEN__
368
#define MEM_USE_POOLS_TRY_BIGGER_POOL 0
369
#endif
370
377
#if !defined MEMP_USE_CUSTOM_POOLS || defined __DOXYGEN__
378
#define MEMP_USE_CUSTOM_POOLS 0
379
#endif
380
399
#if !defined LWIP_ALLOW_MEM_FREE_FROM_OTHER_CONTEXT || defined __DOXYGEN__
400
#define LWIP_ALLOW_MEM_FREE_FROM_OTHER_CONTEXT 0
401
#endif
405
406
/*
407
------------------------------------------------
408
---------- Internal Memory Pool Sizes ----------
409
------------------------------------------------
410
*/
421
#if !defined MEMP_NUM_PBUF || defined __DOXYGEN__
422
#define MEMP_NUM_PBUF 16
423
#endif
424
429
#if !defined MEMP_NUM_RAW_PCB || defined __DOXYGEN__
430
#define MEMP_NUM_RAW_PCB 4
431
#endif
432
438
#if !defined MEMP_NUM_UDP_PCB || defined __DOXYGEN__
439
#define MEMP_NUM_UDP_PCB 4
440
#endif
441
446
#if !defined MEMP_NUM_TCP_PCB || defined __DOXYGEN__
447
#define MEMP_NUM_TCP_PCB 5
448
#endif
449
454
#if !defined MEMP_NUM_TCP_PCB_LISTEN || defined __DOXYGEN__
455
#define MEMP_NUM_TCP_PCB_LISTEN 8
456
#endif
457
462
#if !defined MEMP_NUM_TCP_SEG || defined __DOXYGEN__
463
#define MEMP_NUM_TCP_SEG 16
464
#endif
465
472
#if !defined MEMP_NUM_ALTCP_PCB || defined __DOXYGEN__
473
#define MEMP_NUM_ALTCP_PCB MEMP_NUM_TCP_PCB
474
#endif
475
480
#if !defined MEMP_NUM_REASSDATA || defined __DOXYGEN__
481
#define MEMP_NUM_REASSDATA 5
482
#endif
483
491
#if !defined MEMP_NUM_FRAG_PBUF || defined __DOXYGEN__
492
#define MEMP_NUM_FRAG_PBUF 15
493
#endif
494
501
#if !defined MEMP_NUM_ARP_QUEUE || defined __DOXYGEN__
502
#define MEMP_NUM_ARP_QUEUE 30
503
#endif
504
511
#if !defined MEMP_NUM_IGMP_GROUP || defined __DOXYGEN__
512
#define MEMP_NUM_IGMP_GROUP 8
513
#endif
514
519
#define LWIP_NUM_SYS_TIMEOUT_INTERNAL (LWIP_TCP + IP_REASSEMBLY + LWIP_ARP + (2*LWIP_DHCP) + LWIP_ACD + LWIP_IGMP + LWIP_DNS + PPP_NUM_TIMEOUTS + (LWIP_IPV6 * (1 + LWIP_IPV6_REASS + LWIP_IPV6_MLD + LWIP_IPV6_DHCP6)))
520
526
#if !defined MEMP_NUM_SYS_TIMEOUT || defined __DOXYGEN__
527
#define MEMP_NUM_SYS_TIMEOUT LWIP_NUM_SYS_TIMEOUT_INTERNAL
528
#endif
529
534
#if !defined MEMP_NUM_NETBUF || defined __DOXYGEN__
535
#define MEMP_NUM_NETBUF 2
536
#endif
537
542
#if !defined MEMP_NUM_NETCONN || defined __DOXYGEN__
543
#define MEMP_NUM_NETCONN 4
544
#endif
545
551
#if !defined MEMP_NUM_SELECT_CB || defined __DOXYGEN__
552
#define MEMP_NUM_SELECT_CB 4
553
#endif
554
560
#if !defined MEMP_NUM_TCPIP_MSG_API || defined __DOXYGEN__
561
#define MEMP_NUM_TCPIP_MSG_API 8
562
#endif
563
569
#if !defined MEMP_NUM_TCPIP_MSG_INPKT || defined __DOXYGEN__
570
#define MEMP_NUM_TCPIP_MSG_INPKT 8
571
#endif
572
577
#if !defined MEMP_NUM_NETDB || defined __DOXYGEN__
578
#define MEMP_NUM_NETDB 1
579
#endif
580
585
#if !defined MEMP_NUM_LOCALHOSTLIST || defined __DOXYGEN__
586
#define MEMP_NUM_LOCALHOSTLIST 1
587
#endif
588
592
#if !defined PBUF_POOL_SIZE || defined __DOXYGEN__
593
#define PBUF_POOL_SIZE 16
594
#endif
595
599
#if !defined MEMP_NUM_API_MSG || defined __DOXYGEN__
600
#define MEMP_NUM_API_MSG MEMP_NUM_TCPIP_MSG_API
601
#endif
602
605
#if !defined MEMP_NUM_DNS_API_MSG || defined __DOXYGEN__
606
#define MEMP_NUM_DNS_API_MSG MEMP_NUM_TCPIP_MSG_API
607
#endif
608
612
#if !defined MEMP_NUM_SOCKET_SETGETSOCKOPT_DATA || defined __DOXYGEN__
613
#define MEMP_NUM_SOCKET_SETGETSOCKOPT_DATA MEMP_NUM_TCPIP_MSG_API
614
#endif
615
619
#if !defined MEMP_NUM_NETIFAPI_MSG || defined __DOXYGEN__
620
#define MEMP_NUM_NETIFAPI_MSG MEMP_NUM_TCPIP_MSG_API
621
#endif
625
626
/*
627
---------------------------------
628
---------- ARP options ----------
629
---------------------------------
630
*/
639
#if !defined LWIP_ARP || defined __DOXYGEN__
640
#define LWIP_ARP 1
641
#endif
642
646
#if !defined ARP_TABLE_SIZE || defined __DOXYGEN__
647
#define ARP_TABLE_SIZE 10
648
#endif
649
654
#if !defined ARP_MAXAGE || defined __DOXYGEN__
655
#define ARP_MAXAGE 300
656
#endif
657
665
#if !defined ARP_QUEUEING || defined __DOXYGEN__
666
#define ARP_QUEUEING 0
667
#endif
668
673
#if !defined ARP_QUEUE_LEN || defined __DOXYGEN__
674
#define ARP_QUEUE_LEN 3
675
#endif
676
687
#if !defined ETHARP_SUPPORT_VLAN || defined __DOXYGEN__
688
#define ETHARP_SUPPORT_VLAN 0
689
#endif
690
701
#ifndef LWIP_VLAN_PCP
702
#define LWIP_VLAN_PCP 0
703
#endif
704
707
#if !defined LWIP_ETHERNET || defined __DOXYGEN__
708
#define LWIP_ETHERNET LWIP_ARP
709
#endif
710
716
#if !defined ETH_PAD_SIZE || defined __DOXYGEN__
717
#define ETH_PAD_SIZE 0
718
#endif
719
723
#if !defined ETHARP_SUPPORT_STATIC_ENTRIES || defined __DOXYGEN__
724
#define ETHARP_SUPPORT_STATIC_ENTRIES 0
725
#endif
726
731
#if !defined ETHARP_TABLE_MATCH_NETIF || defined __DOXYGEN__
732
#define ETHARP_TABLE_MATCH_NETIF !LWIP_SINGLE_NETIF
733
#endif
737
738
/*
739
--------------------------------
740
---------- IP options ----------
741
--------------------------------
742
*/
751
#if !defined LWIP_IPV4 || defined __DOXYGEN__
752
#define LWIP_IPV4 1
753
#endif
754
760
#if !defined IP_FORWARD || defined __DOXYGEN__
761
#define IP_FORWARD 0
762
#endif
763
769
#if !defined IP_REASSEMBLY || defined __DOXYGEN__
770
#define IP_REASSEMBLY 1
771
#endif
772
778
#if !defined IP_FRAG || defined __DOXYGEN__
779
#define IP_FRAG 1
780
#endif
781
782
#if !LWIP_IPV4
783
/* disable IPv4 extensions when IPv4 is disabled */
784
#undef IP_FORWARD
785
#define IP_FORWARD 0
786
#undef IP_REASSEMBLY
787
#define IP_REASSEMBLY 0
788
#undef IP_FRAG
789
#define IP_FRAG 0
790
#endif
/* !LWIP_IPV4 */
791
797
#if !defined IP_OPTIONS_ALLOWED || defined __DOXYGEN__
798
#define IP_OPTIONS_ALLOWED 1
799
#endif
800
806
#if !defined IP_REASS_MAXAGE || defined __DOXYGEN__
807
#define IP_REASS_MAXAGE 15
808
#endif
809
818
#if !defined IP_REASS_MAX_PBUFS || defined __DOXYGEN__
819
#define IP_REASS_MAX_PBUFS 10
820
#endif
821
825
#if !defined IP_DEFAULT_TTL || defined __DOXYGEN__
826
#define IP_DEFAULT_TTL 255
827
#endif
828
834
#if !defined IP_SOF_BROADCAST || defined __DOXYGEN__
835
#define IP_SOF_BROADCAST 0
836
#endif
837
842
#if !defined IP_SOF_BROADCAST_RECV || defined __DOXYGEN__
843
#define IP_SOF_BROADCAST_RECV 0
844
#endif
845
853
#if !defined IP_FORWARD_ALLOW_TX_ON_RX_NETIF || defined __DOXYGEN__
854
#define IP_FORWARD_ALLOW_TX_ON_RX_NETIF 0
855
#endif
859
860
/*
861
----------------------------------
862
---------- ICMP options ----------
863
----------------------------------
864
*/
874
#if !defined LWIP_ICMP || defined __DOXYGEN__
875
#define LWIP_ICMP 1
876
#endif
877
881
#if !defined ICMP_TTL || defined __DOXYGEN__
882
#define ICMP_TTL IP_DEFAULT_TTL
883
#endif
884
888
#if !defined LWIP_BROADCAST_PING || defined __DOXYGEN__
889
#define LWIP_BROADCAST_PING 0
890
#endif
891
895
#if !defined LWIP_MULTICAST_PING || defined __DOXYGEN__
896
#define LWIP_MULTICAST_PING 0
897
#endif
901
902
/*
903
---------------------------------
904
---------- RAW options ----------
905
---------------------------------
906
*/
915
#if !defined LWIP_RAW || defined __DOXYGEN__
916
#define LWIP_RAW 0
917
#endif
918
922
#if !defined RAW_TTL || defined __DOXYGEN__
923
#define RAW_TTL IP_DEFAULT_TTL
924
#endif
928
929
/*
930
----------------------------------
931
---------- DHCP options ----------
932
----------------------------------
933
*/
942
#if !defined LWIP_DHCP || defined __DOXYGEN__
943
#define LWIP_DHCP 0
944
#endif
945
#if !LWIP_IPV4
946
/* disable DHCP when IPv4 is disabled */
947
#undef LWIP_DHCP
948
#define LWIP_DHCP 0
949
#endif
/* !LWIP_IPV4 */
950
954
#if !defined LWIP_DHCP_DOES_ACD_CHECK || defined __DOXYGEN__
955
#define LWIP_DHCP_DOES_ACD_CHECK LWIP_DHCP
956
#endif
957
961
#if !defined LWIP_DHCP_BOOTP_FILE || defined __DOXYGEN__
962
#define LWIP_DHCP_BOOTP_FILE 0
963
#endif
964
970
#if !defined LWIP_DHCP_GET_NTP_SRV || defined __DOXYGEN__
971
#define LWIP_DHCP_GET_NTP_SRV 0
972
#endif
973
977
#if !defined LWIP_DHCP_MAX_NTP_SERVERS || defined __DOXYGEN__
978
#define LWIP_DHCP_MAX_NTP_SERVERS 1
979
#endif
980
986
#if !defined LWIP_DHCP_MAX_DNS_SERVERS || defined __DOXYGEN__
987
#define LWIP_DHCP_MAX_DNS_SERVERS DNS_MAX_SERVERS
988
#endif
989
994
#if !defined LWIP_DHCP_DISCOVER_ADD_HOSTNAME || defined __DOXYGEN__
995
#define LWIP_DHCP_DISCOVER_ADD_HOSTNAME 1
996
#endif
/* LWIP_DHCP_DISCOVER_ADD_HOSTNAME */
1000
1001
/*
1002
------------------------------------
1003
---------- AUTOIP options ----------
1004
------------------------------------
1005
*/
1014
#if !defined LWIP_AUTOIP || defined __DOXYGEN__
1015
#define LWIP_AUTOIP 0
1016
#endif
1017
#if !LWIP_IPV4
1018
/* disable AUTOIP when IPv4 is disabled */
1019
#undef LWIP_AUTOIP
1020
#define LWIP_AUTOIP 0
1021
#endif
/* !LWIP_IPV4 */
1022
1027
#if !defined LWIP_DHCP_AUTOIP_COOP || defined __DOXYGEN__
1028
#define LWIP_DHCP_AUTOIP_COOP 0
1029
#endif
1030
1038
#if !defined LWIP_DHCP_AUTOIP_COOP_TRIES || defined __DOXYGEN__
1039
#define LWIP_DHCP_AUTOIP_COOP_TRIES 9
1040
#endif
1044
1045
/*
1046
------------------------------------
1047
----------- ACD options ------------
1048
------------------------------------
1049
*/
1058
#if !defined LWIP_ACD || defined __DOXYGEN__
1059
#define LWIP_ACD (LWIP_AUTOIP || LWIP_DHCP_DOES_ACD_CHECK)
1060
#endif
1061
#if !LWIP_IPV4
1062
/* disable ACD when IPv4 is disabled */
1063
#undef LWIP_ACD
1064
#define LWIP_ACD 0
1065
#endif
/* !LWIP_IPV4 */
1069
1070
/*
1071
----------------------------------
1072
----- SNMP MIB2 support -----
1073
----------------------------------
1074
*/
1085
#if !defined LWIP_MIB2_CALLBACKS || defined __DOXYGEN__
1086
#define LWIP_MIB2_CALLBACKS 0
1087
#endif
1091
1092
/*
1093
----------------------------------
1094
-------- Multicast options -------
1095
----------------------------------
1096
*/
1107
#if !defined LWIP_MULTICAST_TX_OPTIONS || defined __DOXYGEN__
1108
#define LWIP_MULTICAST_TX_OPTIONS ((LWIP_IGMP || LWIP_IPV6_MLD) && (LWIP_UDP || LWIP_RAW))
1109
#endif
1113
1114
/*
1115
----------------------------------
1116
---------- IGMP options ----------
1117
----------------------------------
1118
*/
1127
#if !defined LWIP_IGMP || defined __DOXYGEN__
1128
#define LWIP_IGMP 0
1129
#endif
1130
#if !LWIP_IPV4
1131
#undef LWIP_IGMP
1132
#define LWIP_IGMP 0
1133
#endif
1137
1138
/*
1139
----------------------------------
1140
---------- DNS options -----------
1141
----------------------------------
1142
*/
1152
#if !defined LWIP_DNS || defined __DOXYGEN__
1153
#define LWIP_DNS 0
1154
#endif
1155
1157
#if !defined DNS_TABLE_SIZE || defined __DOXYGEN__
1158
#define DNS_TABLE_SIZE 4
1159
#endif
1160
1162
#if !defined DNS_MAX_NAME_LENGTH || defined __DOXYGEN__
1163
#define DNS_MAX_NAME_LENGTH 256
1164
#endif
1165
1170
#if !defined DNS_MAX_SERVERS || defined __DOXYGEN__
1171
#define DNS_MAX_SERVERS 2
1172
#endif
1173
1175
#if !defined DNS_MAX_RETRIES || defined __DOXYGEN__
1176
#define DNS_MAX_RETRIES 4
1177
#endif
1178
1180
#if !defined DNS_DOES_NAME_CHECK || defined __DOXYGEN__
1181
#define DNS_DOES_NAME_CHECK 1
1182
#endif
1183
1188
#if !defined LWIP_DNS_SECURE || defined __DOXYGEN__
1189
#define LWIP_DNS_SECURE (LWIP_DNS_SECURE_RAND_XID | LWIP_DNS_SECURE_NO_MULTIPLE_OUTSTANDING | LWIP_DNS_SECURE_RAND_SRC_PORT)
1190
#endif
1191
1192
/* A list of DNS security features follows */
1193
#define LWIP_DNS_SECURE_RAND_XID 1
1194
#define LWIP_DNS_SECURE_NO_MULTIPLE_OUTSTANDING 2
1195
#define LWIP_DNS_SECURE_RAND_SRC_PORT 4
1196
1207
#if !defined DNS_LOCAL_HOSTLIST || defined __DOXYGEN__
1208
#define DNS_LOCAL_HOSTLIST 0
1209
#endif
/* DNS_LOCAL_HOSTLIST */
1210
1213
#if !defined DNS_LOCAL_HOSTLIST_IS_DYNAMIC || defined __DOXYGEN__
1214
#define DNS_LOCAL_HOSTLIST_IS_DYNAMIC 0
1215
#endif
/* DNS_LOCAL_HOSTLIST_IS_DYNAMIC */
1216
1219
#if !defined LWIP_DNS_SUPPORT_MDNS_QUERIES || defined __DOXYGEN__
1220
#define LWIP_DNS_SUPPORT_MDNS_QUERIES 0
1221
#endif
1225
1226
/*
1227
---------------------------------
1228
---------- UDP options ----------
1229
---------------------------------
1230
*/
1239
#if !defined LWIP_UDP || defined __DOXYGEN__
1240
#define LWIP_UDP 1
1241
#endif
1242
1246
#if !defined LWIP_UDPLITE || defined __DOXYGEN__
1247
#define LWIP_UDPLITE 0
1248
#endif
1249
1253
#if !defined UDP_TTL || defined __DOXYGEN__
1254
#define UDP_TTL IP_DEFAULT_TTL
1255
#endif
1256
1260
#if !defined LWIP_NETBUF_RECVINFO || defined __DOXYGEN__
1261
#define LWIP_NETBUF_RECVINFO 0
1262
#endif
1266
1267
/*
1268
---------------------------------
1269
---------- TCP options ----------
1270
---------------------------------
1271
*/
1280
#if !defined LWIP_TCP || defined __DOXYGEN__
1281
#define LWIP_TCP 1
1282
#endif
1283
1287
#if !defined TCP_TTL || defined __DOXYGEN__
1288
#define TCP_TTL IP_DEFAULT_TTL
1289
#endif
1290
1298
#if !defined TCP_WND || defined __DOXYGEN__
1299
#define TCP_WND (4 * TCP_MSS)
1300
#endif
1301
1305
#if !defined TCP_MAXRTX || defined __DOXYGEN__
1306
#define TCP_MAXRTX 12
1307
#endif
1308
1312
#if !defined TCP_SYNMAXRTX || defined __DOXYGEN__
1313
#define TCP_SYNMAXRTX 6
1314
#endif
1315
1320
#if !defined TCP_QUEUE_OOSEQ || defined __DOXYGEN__
1321
#define TCP_QUEUE_OOSEQ LWIP_TCP
1322
#endif
1323
1327
#if !defined LWIP_TCP_SACK_OUT || defined __DOXYGEN__
1328
#define LWIP_TCP_SACK_OUT 0
1329
#endif
1330
1341
#if !defined LWIP_TCP_MAX_SACK_NUM || defined __DOXYGEN__
1342
#define LWIP_TCP_MAX_SACK_NUM 4
1343
#endif
1344
1352
#if !defined TCP_MSS || defined __DOXYGEN__
1353
#define TCP_MSS 536
1354
#endif
1355
1364
#if !defined TCP_CALCULATE_EFF_SEND_MSS || defined __DOXYGEN__
1365
#define TCP_CALCULATE_EFF_SEND_MSS 1
1366
#endif
1367
1374
#if !defined LWIP_TCP_RTO_TIME || defined __DOXYGEN__
1375
#define LWIP_TCP_RTO_TIME 3000
1376
#endif
1377
1382
#if !defined TCP_SND_BUF || defined __DOXYGEN__
1383
#define TCP_SND_BUF (2 * TCP_MSS)
1384
#endif
1385
1390
#if !defined TCP_SND_QUEUELEN || defined __DOXYGEN__
1391
#define TCP_SND_QUEUELEN ((4 * (TCP_SND_BUF) + (TCP_MSS - 1))/(TCP_MSS))
1392
#endif
1393
1399
#if !defined TCP_SNDLOWAT || defined __DOXYGEN__
1400
#define TCP_SNDLOWAT LWIP_MIN(LWIP_MAX(((TCP_SND_BUF)/2), (2 * TCP_MSS) + 1), (TCP_SND_BUF) - 1)
1401
#endif
1402
1408
#if !defined TCP_SNDQUEUELOWAT || defined __DOXYGEN__
1409
#define TCP_SNDQUEUELOWAT LWIP_MAX(((TCP_SND_QUEUELEN)/2), 5)
1410
#endif
1411
1417
#if !defined TCP_OOSEQ_MAX_BYTES || defined __DOXYGEN__
1418
#define TCP_OOSEQ_MAX_BYTES 0
1419
#endif
1420
1427
#if !defined TCP_OOSEQ_BYTES_LIMIT
1428
#if TCP_OOSEQ_MAX_BYTES
1429
#define TCP_OOSEQ_BYTES_LIMIT(pcb) TCP_OOSEQ_MAX_BYTES
1430
#elif defined __DOXYGEN__
1431
#define TCP_OOSEQ_BYTES_LIMIT(pcb)
1432
#endif
1433
#endif
1434
1440
#if !defined TCP_OOSEQ_MAX_PBUFS || defined __DOXYGEN__
1441
#define TCP_OOSEQ_MAX_PBUFS 0
1442
#endif
1443
1450
#if !defined TCP_OOSEQ_PBUFS_LIMIT
1451
#if TCP_OOSEQ_MAX_PBUFS
1452
#define TCP_OOSEQ_PBUFS_LIMIT(pcb) TCP_OOSEQ_MAX_PBUFS
1453
#elif defined __DOXYGEN__
1454
#define TCP_OOSEQ_PBUFS_LIMIT(pcb)
1455
#endif
1456
#endif
1457
1461
#if !defined TCP_LISTEN_BACKLOG || defined __DOXYGEN__
1462
#define TCP_LISTEN_BACKLOG 0
1463
#endif
1464
1470
#if !defined TCP_DEFAULT_LISTEN_BACKLOG || defined __DOXYGEN__
1471
#define TCP_DEFAULT_LISTEN_BACKLOG 0xff
1472
#endif
1473
1488
#if !defined TCP_OVERSIZE || defined __DOXYGEN__
1489
#define TCP_OVERSIZE TCP_MSS
1490
#endif
1491
1498
#if !defined LWIP_TCP_TIMESTAMPS || defined __DOXYGEN__
1499
#define LWIP_TCP_TIMESTAMPS 0
1500
#endif
1501
1506
#if !defined TCP_WND_UPDATE_THRESHOLD || defined __DOXYGEN__
1507
#define TCP_WND_UPDATE_THRESHOLD LWIP_MIN((TCP_WND / 4), (TCP_MSS * 4))
1508
#endif
1509
1517
#if !defined(LWIP_EVENT_API) && !defined(LWIP_CALLBACK_API) || defined __DOXYGEN__
1518
#define LWIP_EVENT_API 0
1519
#define LWIP_CALLBACK_API 1
1520
#else
1521
#ifndef LWIP_EVENT_API
1522
#define LWIP_EVENT_API 0
1523
#endif
1524
#ifndef LWIP_CALLBACK_API
1525
#define LWIP_CALLBACK_API 0
1526
#endif
1527
#endif
1528
1537
#if !defined LWIP_WND_SCALE || defined __DOXYGEN__
1538
#define LWIP_WND_SCALE 0
1539
#define TCP_RCV_SCALE 0
1540
#endif
1541
1547
#if !defined LWIP_TCP_PCB_NUM_EXT_ARGS || defined __DOXYGEN__
1548
#define LWIP_TCP_PCB_NUM_EXT_ARGS 0
1549
#endif
1550
1563
#if !defined LWIP_ALTCP || defined __DOXYGEN__
1564
#define LWIP_ALTCP 0
1565
#endif
1566
1572
#if !defined LWIP_ALTCP_TLS || defined __DOXYGEN__
1573
#define LWIP_ALTCP_TLS 0
1574
#endif
1575
1579
1580
/*
1581
----------------------------------
1582
---------- Pbuf options ----------
1583
----------------------------------
1584
*/
1595
#if !defined PBUF_LINK_HLEN || defined __DOXYGEN__
1596
#if (defined LWIP_HOOK_VLAN_SET || LWIP_VLAN_PCP) && !defined __DOXYGEN__
1597
#define PBUF_LINK_HLEN (18 + ETH_PAD_SIZE)
1598
#else
/* LWIP_HOOK_VLAN_SET || LWIP_VLAN_PCP */
1599
#define PBUF_LINK_HLEN (14 + ETH_PAD_SIZE)
1600
#endif
/* LWIP_HOOK_VLAN_SET || LWIP_VLAN_PCP */
1601
#endif
1602
1607
#if !defined PBUF_LINK_ENCAPSULATION_HLEN || defined __DOXYGEN__
1608
#define PBUF_LINK_ENCAPSULATION_HLEN 0
1609
#endif
1610
1616
#if !defined PBUF_POOL_BUFSIZE || defined __DOXYGEN__
1617
#define PBUF_POOL_BUFSIZE LWIP_MEM_ALIGN_SIZE(TCP_MSS+PBUF_IP_HLEN+PBUF_TRANSPORT_HLEN+PBUF_LINK_ENCAPSULATION_HLEN+PBUF_LINK_HLEN)
1618
#endif
1619
1624
#if !defined LWIP_PBUF_REF_T || defined __DOXYGEN__
1625
#define LWIP_PBUF_REF_T u8_t
1626
#endif
1627
1634
#if !defined LWIP_PBUF_CUSTOM_DATA || defined __DOXYGEN__
1635
#define LWIP_PBUF_CUSTOM_DATA
1636
#endif
1637
1643
#if !defined LWIP_PBUF_CUSTOM_DATA_INIT || defined __DOXYGEN__
1644
#define LWIP_PBUF_CUSTOM_DATA_INIT(p)
1645
#endif
1646
1650
1651
/*
1652
------------------------------------------------
1653
---------- Network Interfaces options ----------
1654
------------------------------------------------
1655
*/
1665
#if !defined LWIP_SINGLE_NETIF || defined __DOXYGEN__
1666
#define LWIP_SINGLE_NETIF 0
1667
#endif
1668
1673
#if !defined LWIP_NETIF_HOSTNAME || defined __DOXYGEN__
1674
#define LWIP_NETIF_HOSTNAME 0
1675
#endif
1676
1680
#if !defined LWIP_NETIF_API || defined __DOXYGEN__
1681
#define LWIP_NETIF_API 0
1682
#endif
1683
1688
#if !defined LWIP_NETIF_STATUS_CALLBACK || defined __DOXYGEN__
1689
#define LWIP_NETIF_STATUS_CALLBACK 0
1690
#endif
1691
1697
#if !defined LWIP_NETIF_EXT_STATUS_CALLBACK || defined __DOXYGEN__
1698
#define LWIP_NETIF_EXT_STATUS_CALLBACK 0
1699
#endif
1700
1705
#if !defined LWIP_NETIF_LINK_CALLBACK || defined __DOXYGEN__
1706
#define LWIP_NETIF_LINK_CALLBACK 0
1707
#endif
1708
1713
#if !defined LWIP_NETIF_REMOVE_CALLBACK || defined __DOXYGEN__
1714
#define LWIP_NETIF_REMOVE_CALLBACK 0
1715
#endif
1716
1724
#if !defined LWIP_NETIF_HWADDRHINT || defined __DOXYGEN__
1725
#define LWIP_NETIF_HWADDRHINT 0
1726
#endif
1727
1746
#if !defined LWIP_NETIF_TX_SINGLE_PBUF || defined __DOXYGEN__
1747
#define LWIP_NETIF_TX_SINGLE_PBUF 0
1748
#endif
/* LWIP_NETIF_TX_SINGLE_PBUF */
1749
1754
#if !defined LWIP_NUM_NETIF_CLIENT_DATA || defined __DOXYGEN__
1755
#define LWIP_NUM_NETIF_CLIENT_DATA 0
1756
#endif
1760
1761
/*
1762
------------------------------------
1763
---------- LOOPIF options ----------
1764
------------------------------------
1765
*/
1776
#if !defined LWIP_HAVE_LOOPIF || defined __DOXYGEN__
1777
#define LWIP_HAVE_LOOPIF (LWIP_NETIF_LOOPBACK && !LWIP_SINGLE_NETIF)
1778
#endif
1779
1783
#if !defined LWIP_LOOPIF_MULTICAST || defined __DOXYGEN__
1784
#define LWIP_LOOPIF_MULTICAST 0
1785
#endif
1786
1791
#if !defined LWIP_NETIF_LOOPBACK || defined __DOXYGEN__
1792
#define LWIP_NETIF_LOOPBACK 0
1793
#endif
1794
1799
#if !defined LWIP_LOOPBACK_MAX_PBUFS || defined __DOXYGEN__
1800
#define LWIP_LOOPBACK_MAX_PBUFS 0
1801
#endif
1802
1816
#if !defined LWIP_NETIF_LOOPBACK_MULTITHREADING || defined __DOXYGEN__
1817
#define LWIP_NETIF_LOOPBACK_MULTITHREADING (!NO_SYS)
1818
#endif
1822
1823
/*
1824
------------------------------------
1825
---------- Thread options ----------
1826
------------------------------------
1827
*/
1836
#if !defined TCPIP_THREAD_NAME || defined __DOXYGEN__
1837
#define TCPIP_THREAD_NAME "tcpip_thread"
1838
#endif
1839
1845
#if !defined TCPIP_THREAD_STACKSIZE || defined __DOXYGEN__
1846
#define TCPIP_THREAD_STACKSIZE 0
1847
#endif
1848
1854
#if !defined TCPIP_THREAD_PRIO || defined __DOXYGEN__
1855
#define TCPIP_THREAD_PRIO 1
1856
#endif
1857
1863
#if !defined TCPIP_MBOX_SIZE || defined __DOXYGEN__
1864
#define TCPIP_MBOX_SIZE 0
1865
#endif
1866
1871
#if !defined LWIP_TCPIP_THREAD_ALIVE || defined __DOXYGEN__
1872
#define LWIP_TCPIP_THREAD_ALIVE()
1873
#endif
1874
1878
#if !defined SLIPIF_THREAD_NAME || defined __DOXYGEN__
1879
#define SLIPIF_THREAD_NAME "slipif_loop"
1880
#endif
1881
1887
#if !defined SLIPIF_THREAD_STACKSIZE || defined __DOXYGEN__
1888
#define SLIPIF_THREAD_STACKSIZE 0
1889
#endif
1890
1896
#if !defined SLIPIF_THREAD_PRIO || defined __DOXYGEN__
1897
#define SLIPIF_THREAD_PRIO 1
1898
#endif
1899
1903
#if !defined DEFAULT_THREAD_NAME || defined __DOXYGEN__
1904
#define DEFAULT_THREAD_NAME "lwIP"
1905
#endif
1906
1912
#if !defined DEFAULT_THREAD_STACKSIZE || defined __DOXYGEN__
1913
#define DEFAULT_THREAD_STACKSIZE 0
1914
#endif
1915
1921
#if !defined DEFAULT_THREAD_PRIO || defined __DOXYGEN__
1922
#define DEFAULT_THREAD_PRIO 1
1923
#endif
1924
1930
#if !defined DEFAULT_RAW_RECVMBOX_SIZE || defined __DOXYGEN__
1931
#define DEFAULT_RAW_RECVMBOX_SIZE 0
1932
#endif
1933
1939
#if !defined DEFAULT_UDP_RECVMBOX_SIZE || defined __DOXYGEN__
1940
#define DEFAULT_UDP_RECVMBOX_SIZE 0
1941
#endif
1942
1948
#if !defined DEFAULT_TCP_RECVMBOX_SIZE || defined __DOXYGEN__
1949
#define DEFAULT_TCP_RECVMBOX_SIZE 0
1950
#endif
1951
1957
#if !defined DEFAULT_ACCEPTMBOX_SIZE || defined __DOXYGEN__
1958
#define DEFAULT_ACCEPTMBOX_SIZE 0
1959
#endif
1963
1964
/*
1965
----------------------------------------------
1966
---------- Sequential layer options ----------
1967
----------------------------------------------
1968
*/
1977
#if !defined LWIP_NETCONN || defined __DOXYGEN__
1978
#define LWIP_NETCONN 1
1979
#endif
1980
1984
#if !defined LWIP_TCPIP_TIMEOUT || defined __DOXYGEN__
1985
#define LWIP_TCPIP_TIMEOUT 0
1986
#endif
1987
1998
#if !defined LWIP_NETCONN_SEM_PER_THREAD || defined __DOXYGEN__
1999
#define LWIP_NETCONN_SEM_PER_THREAD 0
2000
#endif
2001
2007
#if !defined LWIP_NETCONN_FULLDUPLEX || defined __DOXYGEN__
2008
#define LWIP_NETCONN_FULLDUPLEX 0
2009
#endif
2013
2014
/*
2015
------------------------------------
2016
---------- Socket options ----------
2017
------------------------------------
2018
*/
2027
#if !defined LWIP_SOCKET || defined __DOXYGEN__
2028
#define LWIP_SOCKET 1
2029
#endif
2030
2037
#if !defined LWIP_COMPAT_SOCKETS || defined __DOXYGEN__
2038
#define LWIP_COMPAT_SOCKETS 1
2039
#endif
2040
2046
#if !defined LWIP_POSIX_SOCKETS_IO_NAMES || defined __DOXYGEN__
2047
#define LWIP_POSIX_SOCKETS_IO_NAMES 1
2048
#endif
2049
2057
#if !defined LWIP_SOCKET_OFFSET || defined __DOXYGEN__
2058
#define LWIP_SOCKET_OFFSET 0
2059
#endif
2060
2068
#if !defined LWIP_SOCKET_EXTERNAL_HEADERS || defined __DOXYGEN__
2069
#define LWIP_SOCKET_EXTERNAL_HEADERS 0
2070
#endif
2071
2077
#if !defined LWIP_TCP_KEEPALIVE || defined __DOXYGEN__
2078
#define LWIP_TCP_KEEPALIVE 0
2079
#endif
2080
2085
#if !defined LWIP_SO_SNDTIMEO || defined __DOXYGEN__
2086
#define LWIP_SO_SNDTIMEO 0
2087
#endif
2088
2093
#if !defined LWIP_SO_RCVTIMEO || defined __DOXYGEN__
2094
#define LWIP_SO_RCVTIMEO 0
2095
#endif
2096
2101
#if !defined LWIP_SO_SNDRCVTIMEO_NONSTANDARD || defined __DOXYGEN__
2102
#define LWIP_SO_SNDRCVTIMEO_NONSTANDARD 0
2103
#endif
2104
2108
#if !defined LWIP_SO_RCVBUF || defined __DOXYGEN__
2109
#define LWIP_SO_RCVBUF 0
2110
#endif
2111
2115
#if !defined LWIP_SO_LINGER || defined __DOXYGEN__
2116
#define LWIP_SO_LINGER 0
2117
#endif
2118
2122
#if !defined RECV_BUFSIZE_DEFAULT || defined __DOXYGEN__
2123
#define RECV_BUFSIZE_DEFAULT INT_MAX
2124
#endif
2125
2129
#if !defined LWIP_TCP_CLOSE_TIMEOUT_MS_DEFAULT || defined __DOXYGEN__
2130
#define LWIP_TCP_CLOSE_TIMEOUT_MS_DEFAULT 20000
2131
#endif
2132
2136
#if !defined SO_REUSE || defined __DOXYGEN__
2137
#define SO_REUSE 0
2138
#endif
2139
2145
#if !defined SO_REUSE_RXTOALL || defined __DOXYGEN__
2146
#define SO_REUSE_RXTOALL 0
2147
#endif
2148
2157
#if !defined LWIP_FIONREAD_LINUXMODE || defined __DOXYGEN__
2158
#define LWIP_FIONREAD_LINUXMODE 0
2159
#endif
2160
2167
#if !defined LWIP_SOCKET_SELECT || defined __DOXYGEN__
2168
#define LWIP_SOCKET_SELECT 1
2169
#endif
2170
2175
#if !defined LWIP_SOCKET_POLL || defined __DOXYGEN__
2176
#define LWIP_SOCKET_POLL 1
2177
#endif
2181
2182
/*
2183
----------------------------------------
2184
---------- Statistics options ----------
2185
----------------------------------------
2186
*/
2195
#if !defined LWIP_STATS || defined __DOXYGEN__
2196
#define LWIP_STATS 1
2197
#endif
2198
2199
#if LWIP_STATS
2200
2204
#if !defined LWIP_STATS_DISPLAY || defined __DOXYGEN__
2205
#define LWIP_STATS_DISPLAY 0
2206
#endif
2207
2211
#if !defined LINK_STATS || defined __DOXYGEN__
2212
#define LINK_STATS 1
2213
#endif
2214
2218
#if !defined ETHARP_STATS || defined __DOXYGEN__
2219
#define ETHARP_STATS (LWIP_ARP)
2220
#endif
2221
2225
#if !defined IP_STATS || defined __DOXYGEN__
2226
#define IP_STATS 1
2227
#endif
2228
2233
#if !defined IPFRAG_STATS || defined __DOXYGEN__
2234
#define IPFRAG_STATS (IP_REASSEMBLY || IP_FRAG)
2235
#endif
2236
2240
#if !defined ICMP_STATS || defined __DOXYGEN__
2241
#define ICMP_STATS 1
2242
#endif
2243
2247
#if !defined IGMP_STATS || defined __DOXYGEN__
2248
#define IGMP_STATS (LWIP_IGMP)
2249
#endif
2250
2255
#if !defined UDP_STATS || defined __DOXYGEN__
2256
#define UDP_STATS (LWIP_UDP)
2257
#endif
2258
2263
#if !defined TCP_STATS || defined __DOXYGEN__
2264
#define TCP_STATS (LWIP_TCP)
2265
#endif
2266
2270
#if !defined MEM_STATS || defined __DOXYGEN__
2271
#define MEM_STATS ((MEM_CUSTOM_ALLOCATOR == 0) && (MEM_USE_POOLS == 0))
2272
#endif
2273
2277
#if !defined MEMP_STATS || defined __DOXYGEN__
2278
#define MEMP_STATS (MEMP_MEM_MALLOC == 0)
2279
#endif
2280
2284
#if !defined SYS_STATS || defined __DOXYGEN__
2285
#define SYS_STATS (NO_SYS == 0)
2286
#endif
2287
2291
#if !defined IP6_STATS || defined __DOXYGEN__
2292
#define IP6_STATS (LWIP_IPV6)
2293
#endif
2294
2298
#if !defined ICMP6_STATS || defined __DOXYGEN__
2299
#define ICMP6_STATS (LWIP_IPV6 && LWIP_ICMP6)
2300
#endif
2301
2305
#if !defined IP6_FRAG_STATS || defined __DOXYGEN__
2306
#define IP6_FRAG_STATS (LWIP_IPV6 && (LWIP_IPV6_FRAG || LWIP_IPV6_REASS))
2307
#endif
2308
2312
#if !defined MLD6_STATS || defined __DOXYGEN__
2313
#define MLD6_STATS (LWIP_IPV6 && LWIP_IPV6_MLD)
2314
#endif
2315
2319
#if !defined ND6_STATS || defined __DOXYGEN__
2320
#define ND6_STATS (LWIP_IPV6)
2321
#endif
2322
2326
#if !defined MIB2_STATS || defined __DOXYGEN__
2327
#define MIB2_STATS 0
2328
#endif
2329
2330
#else
2331
2332
#define LINK_STATS 0
2333
#define ETHARP_STATS 0
2334
#define IP_STATS 0
2335
#define IPFRAG_STATS 0
2336
#define ICMP_STATS 0
2337
#define IGMP_STATS 0
2338
#define UDP_STATS 0
2339
#define TCP_STATS 0
2340
#define MEM_STATS 0
2341
#define MEMP_STATS 0
2342
#define SYS_STATS 0
2343
#define LWIP_STATS_DISPLAY 0
2344
#define IP6_STATS 0
2345
#define ICMP6_STATS 0
2346
#define IP6_FRAG_STATS 0
2347
#define MLD6_STATS 0
2348
#define ND6_STATS 0
2349
#define MIB2_STATS 0
2350
2351
#endif
/* LWIP_STATS */
2355
2356
/*
2357
--------------------------------------
2358
---------- Checksum options ----------
2359
--------------------------------------
2360
*/
2371
#if !defined LWIP_CHECKSUM_CTRL_PER_NETIF || defined __DOXYGEN__
2372
#define LWIP_CHECKSUM_CTRL_PER_NETIF 0
2373
#endif
2374
2378
#if !defined CHECKSUM_GEN_IP || defined __DOXYGEN__
2379
#define CHECKSUM_GEN_IP 1
2380
#endif
2381
2385
#if !defined CHECKSUM_GEN_UDP || defined __DOXYGEN__
2386
#define CHECKSUM_GEN_UDP 1
2387
#endif
2388
2392
#if !defined CHECKSUM_GEN_TCP || defined __DOXYGEN__
2393
#define CHECKSUM_GEN_TCP 1
2394
#endif
2395
2399
#if !defined CHECKSUM_GEN_ICMP || defined __DOXYGEN__
2400
#define CHECKSUM_GEN_ICMP 1
2401
#endif
2402
2406
#if !defined CHECKSUM_GEN_ICMP6 || defined __DOXYGEN__
2407
#define CHECKSUM_GEN_ICMP6 1
2408
#endif
2409
2413
#if !defined CHECKSUM_CHECK_IP || defined __DOXYGEN__
2414
#define CHECKSUM_CHECK_IP 1
2415
#endif
2416
2420
#if !defined CHECKSUM_CHECK_UDP || defined __DOXYGEN__
2421
#define CHECKSUM_CHECK_UDP 1
2422
#endif
2423
2427
#if !defined CHECKSUM_CHECK_TCP || defined __DOXYGEN__
2428
#define CHECKSUM_CHECK_TCP 1
2429
#endif
2430
2434
#if !defined CHECKSUM_CHECK_ICMP || defined __DOXYGEN__
2435
#define CHECKSUM_CHECK_ICMP 1
2436
#endif
2437
2441
#if !defined CHECKSUM_CHECK_ICMP6 || defined __DOXYGEN__
2442
#define CHECKSUM_CHECK_ICMP6 1
2443
#endif
2444
2449
#if !defined LWIP_CHECKSUM_ON_COPY || defined __DOXYGEN__
2450
#define LWIP_CHECKSUM_ON_COPY 0
2451
#endif
2455
2456
/*
2457
---------------------------------------
2458
---------- IPv6 options ---------------
2459
---------------------------------------
2460
*/
2469
#if !defined LWIP_IPV6 || defined __DOXYGEN__
2470
#define LWIP_IPV6 0
2471
#endif
2472
2478
#if !defined IPV6_REASS_MAXAGE || defined __DOXYGEN__
2479
#define IPV6_REASS_MAXAGE 60
2480
#endif
2481
2499
#if !defined LWIP_IPV6_SCOPES || defined __DOXYGEN__
2500
#define LWIP_IPV6_SCOPES (LWIP_IPV6 && !LWIP_SINGLE_NETIF)
2501
#endif
2502
2509
#if !defined LWIP_IPV6_SCOPES_DEBUG || defined __DOXYGEN__
2510
#define LWIP_IPV6_SCOPES_DEBUG 0
2511
#endif
2512
2516
#if !defined LWIP_IPV6_NUM_ADDRESSES || defined __DOXYGEN__
2517
#define LWIP_IPV6_NUM_ADDRESSES 3
2518
#endif
2519
2523
#if !defined LWIP_IPV6_FORWARD || defined __DOXYGEN__
2524
#define LWIP_IPV6_FORWARD 0
2525
#endif
2526
2530
#if !defined LWIP_IPV6_FRAG || defined __DOXYGEN__
2531
#define LWIP_IPV6_FRAG 1
2532
#endif
2533
2537
#if !defined LWIP_IPV6_REASS || defined __DOXYGEN__
2538
#define LWIP_IPV6_REASS LWIP_IPV6
2539
#endif
2540
2545
#if !defined LWIP_IPV6_SEND_ROUTER_SOLICIT || defined __DOXYGEN__
2546
#define LWIP_IPV6_SEND_ROUTER_SOLICIT LWIP_IPV6
2547
#endif
2548
2552
#if !defined LWIP_IPV6_AUTOCONFIG || defined __DOXYGEN__
2553
#define LWIP_IPV6_AUTOCONFIG LWIP_IPV6
2554
#endif
2555
2563
#if !defined LWIP_IPV6_ADDRESS_LIFETIMES || defined __DOXYGEN__
2564
#define LWIP_IPV6_ADDRESS_LIFETIMES LWIP_IPV6_AUTOCONFIG
2565
#endif
2566
2570
#if !defined LWIP_IPV6_DUP_DETECT_ATTEMPTS || defined __DOXYGEN__
2571
#define LWIP_IPV6_DUP_DETECT_ATTEMPTS 1
2572
#endif
2576
2585
#if !defined LWIP_ICMP6 || defined __DOXYGEN__
2586
#define LWIP_ICMP6 LWIP_IPV6
2587
#endif
2588
2595
#if !defined LWIP_ICMP6_DATASIZE || defined __DOXYGEN__
2596
#define LWIP_ICMP6_DATASIZE 0
2597
#endif
2598
2602
#if !defined LWIP_ICMP6_HL || defined __DOXYGEN__
2603
#define LWIP_ICMP6_HL 255
2604
#endif
2608
2619
#if !defined LWIP_IPV6_MLD || defined __DOXYGEN__
2620
#define LWIP_IPV6_MLD LWIP_IPV6
2621
#endif
2622
2629
#if !defined MEMP_NUM_MLD6_GROUP || defined __DOXYGEN__
2630
#define MEMP_NUM_MLD6_GROUP 4
2631
#endif
2635
2645
#if !defined LWIP_ND6_QUEUEING || defined __DOXYGEN__
2646
#define LWIP_ND6_QUEUEING LWIP_IPV6
2647
#endif
2648
2652
#if !defined MEMP_NUM_ND6_QUEUE || defined __DOXYGEN__
2653
#define MEMP_NUM_ND6_QUEUE 20
2654
#endif
2655
2659
#if !defined LWIP_ND6_NUM_NEIGHBORS || defined __DOXYGEN__
2660
#define LWIP_ND6_NUM_NEIGHBORS 10
2661
#endif
2662
2666
#if !defined LWIP_ND6_NUM_DESTINATIONS || defined __DOXYGEN__
2667
#define LWIP_ND6_NUM_DESTINATIONS 10
2668
#endif
2669
2673
#if !defined LWIP_ND6_NUM_PREFIXES || defined __DOXYGEN__
2674
#define LWIP_ND6_NUM_PREFIXES 5
2675
#endif
2676
2680
#if !defined LWIP_ND6_NUM_ROUTERS || defined __DOXYGEN__
2681
#define LWIP_ND6_NUM_ROUTERS 3
2682
#endif
2683
2688
#if !defined LWIP_ND6_MAX_MULTICAST_SOLICIT || defined __DOXYGEN__
2689
#define LWIP_ND6_MAX_MULTICAST_SOLICIT 3
2690
#endif
2691
2696
#if !defined LWIP_ND6_MAX_UNICAST_SOLICIT || defined __DOXYGEN__
2697
#define LWIP_ND6_MAX_UNICAST_SOLICIT 3
2698
#endif
2699
2703
#if !defined LWIP_ND6_MAX_ANYCAST_DELAY_TIME || defined __DOXYGEN__
2704
#define LWIP_ND6_MAX_ANYCAST_DELAY_TIME 1000
2705
#endif
2706
2710
#if !defined LWIP_ND6_MAX_NEIGHBOR_ADVERTISEMENT || defined __DOXYGEN__
2711
#define LWIP_ND6_MAX_NEIGHBOR_ADVERTISEMENT 3
2712
#endif
2713
2718
#if !defined LWIP_ND6_REACHABLE_TIME || defined __DOXYGEN__
2719
#define LWIP_ND6_REACHABLE_TIME 30000
2720
#endif
2721
2725
#if !defined LWIP_ND6_RETRANS_TIMER || defined __DOXYGEN__
2726
#define LWIP_ND6_RETRANS_TIMER 1000
2727
#endif
2728
2733
#if !defined LWIP_ND6_DELAY_FIRST_PROBE_TIME || defined __DOXYGEN__
2734
#define LWIP_ND6_DELAY_FIRST_PROBE_TIME 5000
2735
#endif
2736
2741
#if !defined LWIP_ND6_ALLOW_RA_UPDATES || defined __DOXYGEN__
2742
#define LWIP_ND6_ALLOW_RA_UPDATES 1
2743
#endif
2744
2750
#if !defined LWIP_ND6_TCP_REACHABILITY_HINTS || defined __DOXYGEN__
2751
#define LWIP_ND6_TCP_REACHABILITY_HINTS 1
2752
#endif
2753
2759
#if !defined LWIP_ND6_RDNSS_MAX_DNS_SERVERS || defined __DOXYGEN__
2760
#define LWIP_ND6_RDNSS_MAX_DNS_SERVERS 0
2761
#endif
2765
2774
#if !defined LWIP_IPV6_DHCP6 || defined __DOXYGEN__
2775
#define LWIP_IPV6_DHCP6 0
2776
#endif
2777
2782
#if !defined LWIP_IPV6_DHCP6_STATEFUL || defined __DOXYGEN__
2783
#define LWIP_IPV6_DHCP6_STATEFUL 0
2784
#endif
2785
2789
#if !defined LWIP_IPV6_DHCP6_STATELESS || defined __DOXYGEN__
2790
#define LWIP_IPV6_DHCP6_STATELESS LWIP_IPV6_DHCP6
2791
#endif
2792
2798
#if !defined LWIP_DHCP6_GET_NTP_SRV || defined __DOXYGEN__
2799
#define LWIP_DHCP6_GET_NTP_SRV 0
2800
#endif
2801
2805
#if !defined LWIP_DHCP6_MAX_NTP_SERVERS || defined __DOXYGEN__
2806
#define LWIP_DHCP6_MAX_NTP_SERVERS 1
2807
#endif
2808
2814
#if !defined LWIP_DHCP6_MAX_DNS_SERVERS || defined __DOXYGEN__
2815
#define LWIP_DHCP6_MAX_DNS_SERVERS DNS_MAX_SERVERS
2816
#endif
2820
2821
/*
2822
---------------------------------------
2823
---------- Hook options ---------------
2824
---------------------------------------
2825
*/
2826
2833
2839
#ifdef __DOXYGEN__
2840
#define LWIP_HOOK_FILENAME "path/to/my/lwip_hooks.h"
2841
#endif
2842
2864
#ifdef __DOXYGEN__
2865
#define LWIP_HOOK_TCP_ISN(local_ip, local_port, remote_ip, remote_port)
2866
#endif
2867
2894
#ifdef __DOXYGEN__
2895
#define LWIP_HOOK_TCP_INPACKET_PCB(pcb, hdr, optlen, opt1len, opt2, p)
2896
#endif
2897
2916
#ifdef __DOXYGEN__
2917
#define LWIP_HOOK_TCP_OUT_TCPOPT_LENGTH(pcb, internal_len)
2918
#endif
2919
2940
#ifdef __DOXYGEN__
2941
#define LWIP_HOOK_TCP_OUT_ADD_TCPOPTS(p, hdr, pcb, opts)
2942
#endif
2943
2959
#ifdef __DOXYGEN__
2960
#define LWIP_HOOK_IP4_INPUT(pbuf, input_netif)
2961
#endif
2962
2975
#ifdef __DOXYGEN__
2976
#define LWIP_HOOK_IP4_ROUTE()
2977
#endif
2978
2992
#ifdef __DOXYGEN__
2993
#define LWIP_HOOK_IP4_ROUTE_SRC(src, dest)
2994
#endif
2995
3013
#ifdef __DOXYGEN__
3014
#define LWIP_HOOK_IP4_CANFORWARD(src, dest)
3015
#endif
3016
3035
#ifdef __DOXYGEN__
3036
#define LWIP_HOOK_ETHARP_GET_GW(netif, dest)
3037
#endif
3038
3054
#ifdef __DOXYGEN__
3055
#define LWIP_HOOK_IP6_INPUT(pbuf, input_netif)
3056
#endif
3057
3071
#ifdef __DOXYGEN__
3072
#define LWIP_HOOK_IP6_ROUTE(src, dest)
3073
#endif
3074
3093
#ifdef __DOXYGEN__
3094
#define LWIP_HOOK_ND6_GET_GW(netif, dest)
3095
#endif
3096
3111
#ifdef __DOXYGEN__
3112
#define LWIP_HOOK_VLAN_CHECK(netif, eth_hdr, vlan_hdr)
3113
#endif
3114
3135
#ifdef __DOXYGEN__
3136
#define LWIP_HOOK_VLAN_SET(netif, p, src, dst, eth_type)
3137
#endif
3138
3146
#ifdef __DOXYGEN__
3147
#define LWIP_HOOK_MEMP_AVAILABLE(memp_t_type)
3148
#endif
3149
3165
#ifdef __DOXYGEN__
3166
#define LWIP_HOOK_UNKNOWN_ETH_PROTOCOL(pbuf, netif)
3167
#endif
3168
3194
#ifdef __DOXYGEN__
3195
#define LWIP_HOOK_DHCP_APPEND_OPTIONS(netif, dhcp, state, msg, msg_type, options_len_ptr)
3196
#endif
3197
3222
#ifdef __DOXYGEN__
3223
#define LWIP_HOOK_DHCP_PARSE_OPTION(netif, dhcp, state, msg, msg_type, option, len, pbuf, offset)
3224
#endif
3225
3250
#ifdef __DOXYGEN__
3251
#define LWIP_HOOK_DHCP6_APPEND_OPTIONS(netif, dhcp6, state, msg, msg_type, options_len_ptr, max_len)
3252
#endif
3253
3273
#ifdef __DOXYGEN__
3274
#define LWIP_HOOK_SOCKETS_SETSOCKOPT(s, sock, level, optname, optval, optlen, err)
3275
#endif
3276
3296
#ifdef __DOXYGEN__
3297
#define LWIP_HOOK_SOCKETS_GETSOCKOPT(s, sock, level, optname, optval, optlen, err)
3298
#endif
3299
3319
#ifdef __DOXYGEN__
3320
#define LWIP_HOOK_NETCONN_EXTERNAL_RESOLVE(name, addr, addrtype, err)
3321
#endif
3325
3326
/*
3327
---------------------------------------
3328
---------- Debugging options ----------
3329
---------------------------------------
3330
*/
3342
#if !defined LWIP_DBG_MIN_LEVEL || defined __DOXYGEN__
3343
#define LWIP_DBG_MIN_LEVEL LWIP_DBG_LEVEL_ALL
3344
#endif
3345
3351
#if !defined LWIP_DBG_TYPES_ON || defined __DOXYGEN__
3352
#define LWIP_DBG_TYPES_ON LWIP_DBG_ON
3353
#endif
3354
3358
#if !defined ETHARP_DEBUG || defined __DOXYGEN__
3359
#define ETHARP_DEBUG LWIP_DBG_OFF
3360
#endif
3361
3365
#if !defined NETIF_DEBUG || defined __DOXYGEN__
3366
#define NETIF_DEBUG LWIP_DBG_OFF
3367
#endif
3368
3372
#if !defined PBUF_DEBUG || defined __DOXYGEN__
3373
#define PBUF_DEBUG LWIP_DBG_OFF
3374
#endif
3375
3379
#if !defined API_LIB_DEBUG || defined __DOXYGEN__
3380
#define API_LIB_DEBUG LWIP_DBG_OFF
3381
#endif
3382
3386
#if !defined API_MSG_DEBUG || defined __DOXYGEN__
3387
#define API_MSG_DEBUG LWIP_DBG_OFF
3388
#endif
3389
3393
#if !defined SOCKETS_DEBUG || defined __DOXYGEN__
3394
#define SOCKETS_DEBUG LWIP_DBG_OFF
3395
#endif
3396
3400
#if !defined ICMP_DEBUG || defined __DOXYGEN__
3401
#define ICMP_DEBUG LWIP_DBG_OFF
3402
#endif
3403
3407
#if !defined IGMP_DEBUG || defined __DOXYGEN__
3408
#define IGMP_DEBUG LWIP_DBG_OFF
3409
#endif
3410
3414
#if !defined INET_DEBUG || defined __DOXYGEN__
3415
#define INET_DEBUG LWIP_DBG_OFF
3416
#endif
3417
3421
#if !defined IP_DEBUG || defined __DOXYGEN__
3422
#define IP_DEBUG LWIP_DBG_OFF
3423
#endif
3424
3428
#if !defined IP_REASS_DEBUG || defined __DOXYGEN__
3429
#define IP_REASS_DEBUG LWIP_DBG_OFF
3430
#endif
3431
3435
#if !defined RAW_DEBUG || defined __DOXYGEN__
3436
#define RAW_DEBUG LWIP_DBG_OFF
3437
#endif
3438
3442
#if !defined MEM_DEBUG || defined __DOXYGEN__
3443
#define MEM_DEBUG LWIP_DBG_OFF
3444
#endif
3445
3449
#if !defined MEMP_DEBUG || defined __DOXYGEN__
3450
#define MEMP_DEBUG LWIP_DBG_OFF
3451
#endif
3452
3456
#if !defined SYS_DEBUG || defined __DOXYGEN__
3457
#define SYS_DEBUG LWIP_DBG_OFF
3458
#endif
3459
3463
#if !defined TIMERS_DEBUG || defined __DOXYGEN__
3464
#define TIMERS_DEBUG LWIP_DBG_OFF
3465
#endif
3466
3470
#if !defined TCP_DEBUG || defined __DOXYGEN__
3471
#define TCP_DEBUG LWIP_DBG_OFF
3472
#endif
3473
3477
#if !defined TCP_INPUT_DEBUG || defined __DOXYGEN__
3478
#define TCP_INPUT_DEBUG LWIP_DBG_OFF
3479
#endif
3480
3484
#if !defined TCP_FR_DEBUG || defined __DOXYGEN__
3485
#define TCP_FR_DEBUG LWIP_DBG_OFF
3486
#endif
3487
3492
#if !defined TCP_RTO_DEBUG || defined __DOXYGEN__
3493
#define TCP_RTO_DEBUG LWIP_DBG_OFF
3494
#endif
3495
3499
#if !defined TCP_CWND_DEBUG || defined __DOXYGEN__
3500
#define TCP_CWND_DEBUG LWIP_DBG_OFF
3501
#endif
3502
3506
#if !defined TCP_WND_DEBUG || defined __DOXYGEN__
3507
#define TCP_WND_DEBUG LWIP_DBG_OFF
3508
#endif
3509
3513
#if !defined TCP_OUTPUT_DEBUG || defined __DOXYGEN__
3514
#define TCP_OUTPUT_DEBUG LWIP_DBG_OFF
3515
#endif
3516
3520
#if !defined TCP_RST_DEBUG || defined __DOXYGEN__
3521
#define TCP_RST_DEBUG LWIP_DBG_OFF
3522
#endif
3523
3527
#if !defined TCP_QLEN_DEBUG || defined __DOXYGEN__
3528
#define TCP_QLEN_DEBUG LWIP_DBG_OFF
3529
#endif
3530
3534
#if !defined UDP_DEBUG || defined __DOXYGEN__
3535
#define UDP_DEBUG LWIP_DBG_OFF
3536
#endif
3537
3541
#if !defined TCPIP_DEBUG || defined __DOXYGEN__
3542
#define TCPIP_DEBUG LWIP_DBG_OFF
3543
#endif
3544
3548
#if !defined SLIP_DEBUG || defined __DOXYGEN__
3549
#define SLIP_DEBUG LWIP_DBG_OFF
3550
#endif
3551
3555
#if !defined DHCP_DEBUG || defined __DOXYGEN__
3556
#define DHCP_DEBUG LWIP_DBG_OFF
3557
#endif
3558
3562
#if !defined AUTOIP_DEBUG || defined __DOXYGEN__
3563
#define AUTOIP_DEBUG LWIP_DBG_OFF
3564
#endif
3565
3569
#if !defined ACD_DEBUG || defined __DOXYGEN__
3570
#define ACD_DEBUG LWIP_DBG_OFF
3571
#endif
3572
3576
#if !defined DNS_DEBUG || defined __DOXYGEN__
3577
#define DNS_DEBUG LWIP_DBG_OFF
3578
#endif
3579
3583
#if !defined IP6_DEBUG || defined __DOXYGEN__
3584
#define IP6_DEBUG LWIP_DBG_OFF
3585
#endif
3586
3590
#if !defined DHCP6_DEBUG || defined __DOXYGEN__
3591
#define DHCP6_DEBUG LWIP_DBG_OFF
3592
#endif
3596
3600
#if !defined LWIP_TESTMODE
3601
#define LWIP_TESTMODE 0
3602
#endif
3603
3604
/*
3605
--------------------------------------------------
3606
---------- Performance tracking options ----------
3607
--------------------------------------------------
3608
*/
3618
#if !defined LWIP_PERF || defined __DOXYGEN__
3619
#define LWIP_PERF 0
3620
#endif
3624
3625
#endif
/* LWIP_HDR_OPT_H */
debug.h
core
ps2ip
include
lwip_include
lwip
opt.h
Generated by
1.18.0