| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915 |
- menu "LWIP"
- config LWIP_LOCAL_HOSTNAME
- string "Local netif hostname"
- default 'espressif'
- help
- The default name this device will report to other devices on the network.
- Could be updated at runtime with esp_netif_set_hostname()
- config LWIP_DNS_SUPPORT_MDNS_QUERIES
- bool "Enable mDNS queries in resolving host name"
- default y
- help
- If this feature is enabled, standard API such as gethostbyname
- support .local addresses by sending one shot multicast mDNS
- query
- config LWIP_L2_TO_L3_COPY
- bool "Enable copy between Layer2 and Layer3 packets"
- default n
- help
- If this feature is enabled, all traffic from layer2(WIFI Driver) will be
- copied to a new buffer before sending it to layer3(LWIP stack), freeing
- the layer2 buffer.
- Please be notified that the total layer2 receiving buffer is fixed and
- ESP32 currently supports 25 layer2 receiving buffer, when layer2 buffer
- runs out of memory, then the incoming packets will be dropped in hardware.
- The layer3 buffer is allocated from the heap, so the total layer3 receiving
- buffer depends on the available heap size, when heap runs out of memory,
- no copy will be sent to layer3 and packet will be dropped in layer2.
- Please make sure you fully understand the impact of this feature before
- enabling it.
- config LWIP_IRAM_OPTIMIZATION
- bool "Enable LWIP IRAM optimization"
- default n
- help
- If this feature is enabled, some functions relating to RX/TX in LWIP will be
- put into IRAM, it can improve UDP/TCP throughput by >10% for single core mode,
- it doesn't help too much for dual core mode. On the other hand, it needs about
- 10KB IRAM for these optimizations.
- If this feature is disabled, all lwip functions will be put into FLASH.
- config LWIP_TIMERS_ONDEMAND
- bool "Enable LWIP Timers on demand"
- default y
- help
- If this feature is enabled, IGMP and MLD6 timers will be activated only
- when joining groups or receiving QUERY packets.
- This feature will reduce the power consumption for applications which do not
- use IGMP and MLD6.
- config LWIP_MAX_SOCKETS
- int "Max number of open sockets"
- range 1 16
- default 10
- help
- Sockets take up a certain amount of memory, and allowing fewer
- sockets to be open at the same time conserves memory. Specify
- the maximum amount of sockets here. The valid value is from 1
- to 16.
- config LWIP_USE_ONLY_LWIP_SELECT
- bool "Support LWIP socket select() only (DEPRECATED)"
- default n
- help
- This option is deprecated. Use VFS_SUPPORT_SELECT instead, which is
- the inverse of this option.
- The virtual filesystem layer of select() redirects sockets to
- lwip_select() and non-socket file descriptors to their respective driver
- implementations. If this option is enabled then all calls of select()
- will be redirected to lwip_select(), therefore, select can be used
- for sockets only.
- config LWIP_SO_LINGER
- bool "Enable SO_LINGER processing"
- default n
- help
- Enabling this option allows SO_LINGER processing.
- l_onoff = 1,l_linger can set the timeout.
- If l_linger=0, When a connection is closed, TCP will terminate the connection.
- This means that TCP will discard any data packets stored in the socket send buffer
- and send an RST to the peer.
- If l_linger!=0,Then closesocket() calls to block the process until
- the remaining data packets has been sent or timed out.
- config LWIP_SO_REUSE
- bool "Enable SO_REUSEADDR option"
- default y
- help
- Enabling this option allows binding to a port which remains in
- TIME_WAIT.
- config LWIP_SO_REUSE_RXTOALL
- bool "SO_REUSEADDR copies broadcast/multicast to all matches"
- depends on LWIP_SO_REUSE
- default y
- help
- Enabling this option means that any incoming broadcast or multicast
- packet will be copied to all of the local sockets that it matches
- (may be more than one if SO_REUSEADDR is set on the socket.)
- This increases memory overhead as the packets need to be copied,
- however they are only copied per matching socket. You can safely
- disable it if you don't plan to receive broadcast or multicast
- traffic on more than one socket at a time.
- config LWIP_SO_RCVBUF
- bool "Enable SO_RCVBUF option"
- default n
- help
- Enabling this option allows checking for available data on a netconn.
- config LWIP_NETBUF_RECVINFO
- bool "Enable IP_PKTINFO option"
- default n
- help
- Enabling this option allows checking for the destination address
- of a received IPv4 Packet.
- config LWIP_IP4_FRAG
- bool "Enable fragment outgoing IP4 packets"
- default y
- help
- Enabling this option allows fragmenting outgoing IP4 packets if their size
- exceeds MTU.
- config LWIP_IP6_FRAG
- bool "Enable fragment outgoing IP6 packets"
- default y
- depends on LWIP_IPV6
- help
- Enabling this option allows fragmenting outgoing IP6 packets if their size
- exceeds MTU.
- config LWIP_IP4_REASSEMBLY
- bool "Enable reassembly incoming fragmented IP4 packets"
- default n
- help
- Enabling this option allows reassemblying incoming fragmented IP4 packets.
- config LWIP_IP6_REASSEMBLY
- bool "Enable reassembly incoming fragmented IP6 packets"
- default n
- depends on LWIP_IPV6
- help
- Enabling this option allows reassemblying incoming fragmented IP6 packets.
- config LWIP_IP_FORWARD
- bool "Enable IP forwarding"
- default n
- help
- Enabling this option allows packets forwarding across multiple interfaces.
- config LWIP_IPV4_NAPT
- bool "Enable NAT (new/experimental)"
- depends on LWIP_IP_FORWARD
- select LWIP_L2_TO_L3_COPY
- default n
- help
- Enabling this option allows Network Address and Port Translation.
- config LWIP_STATS
- bool "Enable LWIP statistics"
- default n
- help
- Enabling this option allows LWIP statistics
- config LWIP_ETHARP_TRUST_IP_MAC
- bool "Enable LWIP ARP trust"
- default n
- help
- Enabling this option allows ARP table to be updated.
- If this option is enabled, the incoming IP packets cause the ARP table to be
- updated with the source MAC and IP addresses supplied in the packet.
- You may want to disable this if you do not trust LAN peers to have the
- correct addresses, or as a limited approach to attempt to handle
- spoofing. If disabled, lwIP will need to make a new ARP request if
- the peer is not already in the ARP table, adding a little latency.
- The peer *is* in the ARP table if it requested our address before.
- Also notice that this slows down input processing of every IP packet!
- There are two known issues in real application if this feature is enabled:
- - The LAN peer may have bug to update the ARP table after the ARP entry is aged out.
- If the ARP entry on the LAN peer is aged out but failed to be updated, all IP packets
- sent from LWIP to the LAN peer will be dropped by LAN peer.
- - The LAN peer may not be trustful, the LAN peer may send IP packets to LWIP with
- two different MACs, but the same IP address. If this happens, the LWIP has problem
- to receive IP packets from LAN peer.
- So the recommendation is to disable this option.
- Here the LAN peer means the other side to which the ESP station or soft-AP is connected.
- config LWIP_ESP_GRATUITOUS_ARP
- bool "Send gratuitous ARP periodically"
- default y
- help
- Enable this option allows to send gratuitous ARP periodically.
- This option solve the compatibility issues.If the ARP table of the AP is old, and the AP
- doesn't send ARP request to update it's ARP table, this will lead to the STA sending IP packet fail.
- Thus we send gratuitous ARP periodically to let AP update it's ARP table.
- config LWIP_GARP_TMR_INTERVAL
- int "GARP timer interval(seconds)"
- default 60
- depends on LWIP_ESP_GRATUITOUS_ARP
- help
- Set the timer interval for gratuitous ARP. The default value is 60s
- config LWIP_TCPIP_RECVMBOX_SIZE
- int "TCPIP task receive mail box size"
- default 32
- range 6 64 if !LWIP_WND_SCALE
- range 6 1024 if LWIP_WND_SCALE
- help
- Set TCPIP task receive mail box size. Generally bigger value means higher throughput
- but more memory. The value should be bigger than UDP/TCP mail box size.
- config LWIP_DHCP_DOES_ARP_CHECK
- bool "DHCP: Perform ARP check on any offered address"
- default y
- help
- Enabling this option performs a check (via ARP request) if the offered IP address
- is not already in use by another host on the network.
- config LWIP_DHCP_RESTORE_LAST_IP
- bool "DHCP: Restore last IP obtained from DHCP server"
- default n
- help
- When this option is enabled, DHCP client tries to re-obtain last valid IP address obtained from DHCP
- server. Last valid DHCP configuration is stored in nvs and restored after reset/power-up. If IP is still
- available, there is no need for sending discovery message to DHCP server and save some time.
- menu "DHCP server"
- config LWIP_DHCPS_LEASE_UNIT
- int "Multiplier for lease time, in seconds"
- range 1 3600
- default 60
- help
- The DHCP server is calculating lease time multiplying the sent
- and received times by this number of seconds per unit.
- The default is 60, that equals one minute.
- config LWIP_DHCPS_MAX_STATION_NUM
- int "Maximum number of stations"
- range 1 64
- default 8
- help
- The maximum number of DHCP clients that are connected to the server.
- After this number is exceeded, DHCP server removes of the oldest device
- from it's address pool, without notification.
- endmenu # DHCPS
- menuconfig LWIP_AUTOIP
- bool "Enable IPV4 Link-Local Addressing (AUTOIP)"
- default n
- help
- Enabling this option allows the device to self-assign an address
- in the 169.256/16 range if none is assigned statically or via DHCP.
- See RFC 3927.
- config LWIP_AUTOIP_TRIES
- int "DHCP Probes before self-assigning IPv4 LL address"
- range 1 100
- default 2
- depends on LWIP_AUTOIP
- help
- DHCP client will send this many probes before self-assigning a
- link local address.
- From LWIP help: "This can be set as low as 1 to get an AutoIP
- address very quickly, but you should be prepared to handle a
- changing IP address when DHCP overrides AutoIP." (In the case of
- ESP-IDF, this means multiple SYSTEM_EVENT_STA_GOT_IP events.)
- config LWIP_AUTOIP_MAX_CONFLICTS
- int "Max IP conflicts before rate limiting"
- range 1 100
- default 9
- depends on LWIP_AUTOIP
- help
- If the AUTOIP functionality detects this many IP conflicts while
- self-assigning an address, it will go into a rate limited mode.
- config LWIP_AUTOIP_RATE_LIMIT_INTERVAL
- int "Rate limited interval (seconds)"
- range 5 120
- default 20
- depends on LWIP_AUTOIP
- help
- If rate limiting self-assignment requests, wait this long between
- each request.
- config LWIP_IPV6
- bool "Enable IPv6"
- default y
- help
- Enable IPv6 function. If not use IPv6 function, set this option to n.
- If disable LWIP_IPV6, not adding coap and asio component into the build.
- Please assign them to EXCLUDE_COMPONENTS in the make or cmake file in your
- project directory, so that the component will not be compiled.
- config LWIP_IPV6_AUTOCONFIG
- bool "Enable IPV6 stateless address autoconfiguration (SLAAC)"
- depends on LWIP_IPV6
- default n
- help
- Enabling this option allows the devices to IPV6 stateless address autoconfiguration (SLAAC).
- See RFC 4862.
- menuconfig LWIP_NETIF_LOOPBACK
- bool "Support per-interface loopback"
- default y
- help
- Enabling this option means that if a packet is sent with a destination
- address equal to the interface's own IP address, it will "loop back" and
- be received by this interface.
- config LWIP_LOOPBACK_MAX_PBUFS
- int "Max queued loopback packets per interface"
- range 0 16
- default 8
- depends on LWIP_NETIF_LOOPBACK
- help
- Configure the maximum number of packets which can be queued for
- loopback on a given interface. Reducing this number may cause packets
- to be dropped, but will avoid filling memory with queued packet data.
- menu "TCP"
- config LWIP_MAX_ACTIVE_TCP
- int "Maximum active TCP Connections"
- range 1 1024
- default 16
- help
- The maximum number of simultaneously active TCP
- connections. The practical maximum limit is
- determined by available heap memory at runtime.
- Changing this value by itself does not substantially
- change the memory usage of LWIP, except for preventing
- new TCP connections after the limit is reached.
- config LWIP_MAX_LISTENING_TCP
- int "Maximum listening TCP Connections"
- range 1 1024
- default 16
- help
- The maximum number of simultaneously listening TCP
- connections. The practical maximum limit is
- determined by available heap memory at runtime.
- Changing this value by itself does not substantially
- change the memory usage of LWIP, except for preventing
- new listening TCP connections after the limit is reached.
- config LWIP_TCP_HIGH_SPEED_RETRANSMISSION
- bool "TCP high speed retransmissions"
- default y
- help
- Speed up the TCP retransmission interval. If disabled,
- it is recommended to change the number of SYN retransmissions to 6,
- and TCP initial rto time to 3000.
- config LWIP_TCP_MAXRTX
- int "Maximum number of retransmissions of data segments"
- default 12
- range 3 12
- help
- Set maximum number of retransmissions of data segments.
- config LWIP_TCP_SYNMAXRTX
- int "Maximum number of retransmissions of SYN segments"
- default 6 if !LWIP_TCP_HIGH_SPEED_RETRANSMISSION
- default 12 if LWIP_TCP_HIGH_SPEED_RETRANSMISSION
- range 3 12
- help
- Set maximum number of retransmissions of SYN segments.
- config LWIP_TCP_MSS
- int "Maximum Segment Size (MSS)"
- default 1440
- range 536 1460
- help
- Set maximum segment size for TCP transmission.
- Can be set lower to save RAM, the default value 1460(ipv4)/1440(ipv6) will give best throughput.
- IPv4 TCP_MSS Range: 576 <= TCP_MSS <= 1460
- IPv6 TCP_MSS Range: 1220<= TCP_mSS <= 1440
- config LWIP_TCP_TMR_INTERVAL
- int "TCP timer interval(ms)"
- default 250
- help
- Set TCP timer interval in milliseconds.
- Can be used to speed connections on bad networks.
- A lower value will redeliver unacked packets faster.
- config LWIP_TCP_MSL
- int "Maximum segment lifetime (MSL)"
- default 60000
- help
- Set maximum segment lifetime in in milliseconds.
- config LWIP_TCP_SND_BUF_DEFAULT
- int "Default send buffer size"
- default 5744 # 4 * default MSS
- range 2440 65535 if !LWIP_WND_SCALE
- range 2440 1024000 if LWIP_WND_SCALE
- help
- Set default send buffer size for new TCP sockets.
- Per-socket send buffer size can be changed at runtime
- with lwip_setsockopt(s, TCP_SNDBUF, ...).
- This value must be at least 2x the MSS size, and the default
- is 4x the default MSS size.
- Setting a smaller default SNDBUF size can save some RAM, but
- will decrease performance.
- config LWIP_TCP_WND_DEFAULT
- int "Default receive window size"
- default 5744 # 4 * default MSS
- range 2440 65535 if !LWIP_WND_SCALE
- range 2440 1024000 if LWIP_WND_SCALE
- help
- Set default TCP receive window size for new TCP sockets.
- Per-socket receive window size can be changed at runtime
- with lwip_setsockopt(s, TCP_WINDOW, ...).
- Setting a smaller default receive window size can save some RAM,
- but will significantly decrease performance.
- config LWIP_TCP_RECVMBOX_SIZE
- int "Default TCP receive mail box size"
- default 6
- range 6 64 if !LWIP_WND_SCALE
- range 6 1024 if LWIP_WND_SCALE
- help
- Set TCP receive mail box size. Generally bigger value means higher throughput
- but more memory. The recommended value is: LWIP_TCP_WND_DEFAULT/TCP_MSS + 2, e.g. if
- LWIP_TCP_WND_DEFAULT=14360, TCP_MSS=1436, then the recommended receive mail box size is
- (14360/1436 + 2) = 12.
- TCP receive mail box is a per socket mail box, when the application receives packets
- from TCP socket, LWIP core firstly posts the packets to TCP receive mail box and the
- application then fetches the packets from mail box. It means LWIP can caches maximum
- LWIP_TCP_RECCVMBOX_SIZE packets for each TCP socket, so the maximum possible cached TCP packets
- for all TCP sockets is LWIP_TCP_RECCVMBOX_SIZE multiples the maximum TCP socket number. In other
- words, the bigger LWIP_TCP_RECVMBOX_SIZE means more memory.
- On the other hand, if the receiv mail box is too small, the mail box may be full. If the
- mail box is full, the LWIP drops the packets. So generally we need to make sure the TCP
- receive mail box is big enough to avoid packet drop between LWIP core and application.
- config LWIP_TCP_QUEUE_OOSEQ
- bool "Queue incoming out-of-order segments"
- default y
- help
- Queue incoming out-of-order segments for later use.
- Disable this option to save some RAM during TCP sessions, at the expense
- of increased retransmissions if segments arrive out of order.
- config LWIP_TCP_SACK_OUT
- bool "Support sending selective acknowledgements"
- default n
- help
- TCP will support sending selective acknowledgements (SACKs).
- config LWIP_TCP_KEEP_CONNECTION_WHEN_IP_CHANGES
- bool "Keep TCP connections when IP changed"
- default n
- help
- This option is enabled when the following scenario happen:
- network dropped and reconnected, IP changes is like: 192.168.0.2->0.0.0.0->192.168.0.2
- Disable this option to keep consistent with the original LWIP code behavior.
- choice LWIP_TCP_OVERSIZE
- prompt "Pre-allocate transmit PBUF size"
- default LWIP_TCP_OVERSIZE_MSS
- help
- Allows enabling "oversize" allocation of TCP transmission pbufs ahead of time,
- which can reduce the length of pbuf chains used for transmission.
- This will not make a difference to sockets where Nagle's algorithm
- is disabled.
- Default value of MSS is fine for most applications, 25% MSS may save
- some RAM when only transmitting small amounts of data. Disabled will
- have worst performance and fragmentation characteristics, but uses
- least RAM overall.
- config LWIP_TCP_OVERSIZE_MSS
- bool "MSS"
- config LWIP_TCP_OVERSIZE_QUARTER_MSS
- bool "25% MSS"
- config LWIP_TCP_OVERSIZE_DISABLE
- bool "Disabled"
- endchoice
- config LWIP_WND_SCALE
- bool "Support TCP window scale"
- depends on SPIRAM_TRY_ALLOCATE_WIFI_LWIP
- default n
- help
- Enable this feature to support TCP window scaling.
- config LWIP_TCP_RCV_SCALE
- int "Set TCP receiving window scaling factor"
- depends on LWIP_WND_SCALE
- range 0 14
- default 0
- help
- Enable this feature to support TCP window scaling.
- config LWIP_TCP_RTO_TIME
- int "Default TCP rto time"
- default 3000 if !LWIP_TCP_HIGH_SPEED_RETRANSMISSION
- default 1500 if LWIP_TCP_HIGH_SPEED_RETRANSMISSION
- help
- Set default TCP rto time for a reasonable initial rto.
- In bad network environment, recommend set value of rto time to 1500.
- endmenu # TCP
- menu "UDP"
- config LWIP_MAX_UDP_PCBS
- int "Maximum active UDP control blocks"
- range 1 1024
- default 16
- help
- The maximum number of active UDP "connections" (ie
- UDP sockets sending/receiving data).
- The practical maximum limit is determined by available
- heap memory at runtime.
- config LWIP_UDP_RECVMBOX_SIZE
- int "Default UDP receive mail box size"
- default 6
- range 6 64
- help
- Set UDP receive mail box size. The recommended value is 6.
- UDP receive mail box is a per socket mail box, when the application receives packets
- from UDP socket, LWIP core firstly posts the packets to UDP receive mail box and the
- application then fetches the packets from mail box. It means LWIP can caches maximum
- UDP_RECCVMBOX_SIZE packets for each UDP socket, so the maximum possible cached UDP packets
- for all UDP sockets is UDP_RECCVMBOX_SIZE multiples the maximum UDP socket number. In other
- words, the bigger UDP_RECVMBOX_SIZE means more memory.
- On the other hand, if the receiv mail box is too small, the mail box may be full. If the
- mail box is full, the LWIP drops the packets. So generally we need to make sure the UDP
- receive mail box is big enough to avoid packet drop between LWIP core and application.
- endmenu # UDP
- menu "Checksums"
- config LWIP_CHECKSUM_CHECK_IP
- bool "Enable LWIP IP checksums"
- default n
- help
- Enable checksum checking for received IP messages
- config LWIP_CHECKSUM_CHECK_UDP
- bool "Enable LWIP UDP checksums"
- default n
- help
- Enable checksum checking for received UDP messages
- config LWIP_CHECKSUM_CHECK_ICMP
- bool "Enable LWIP ICMP checksums"
- default y
- help
- Enable checksum checking for received ICMP messages
- endmenu # Checksums
- config LWIP_TCPIP_TASK_STACK_SIZE
- int "TCP/IP Task Stack Size"
- default 3072
- # for high log levels, tcpip_adapter API calls can end up
- # a few calls deep and logging there can trigger a stack overflow
- range 2048 65536 if LOG_DEFAULT_LEVEL < 4
- range 2560 65536 if LOG_DEFAULT_LEVEL >= 4
- help
- Configure TCP/IP task stack size, used by LWIP to process multi-threaded TCP/IP operations.
- Setting this stack too small will result in stack overflow crashes.
- choice LWIP_TCPIP_TASK_AFFINITY
- prompt "TCP/IP task affinity"
- default LWIP_TCPIP_TASK_AFFINITY_NO_AFFINITY
- help
- Allows setting LwIP tasks affinity, i.e. whether the task is pinned to
- CPU0, pinned to CPU1, or allowed to run on any CPU.
- Currently this applies to "TCP/IP" task and "Ping" task.
- config LWIP_TCPIP_TASK_AFFINITY_NO_AFFINITY
- bool "No affinity"
- config LWIP_TCPIP_TASK_AFFINITY_CPU0
- bool "CPU0"
- config LWIP_TCPIP_TASK_AFFINITY_CPU1
- bool "CPU1"
- depends on !FREERTOS_UNICORE
- endchoice
- config LWIP_TCPIP_TASK_AFFINITY
- hex
- default FREERTOS_NO_AFFINITY if LWIP_TCPIP_TASK_AFFINITY_NO_AFFINITY
- default 0x0 if LWIP_TCPIP_TASK_AFFINITY_CPU0
- default 0x1 if LWIP_TCPIP_TASK_AFFINITY_CPU1
- menuconfig LWIP_PPP_SUPPORT
- bool "Enable PPP support (new/experimental)"
- default n
- help
- Enable PPP stack. Now only PPP over serial is possible.
- PPP over serial support is experimental and unsupported.
- config LWIP_PPP_ENABLE_IPV6
- bool "Enable IPV6 support for PPP connections (IPV6CP)"
- depends on LWIP_PPP_SUPPORT && LWIP_IPV6
- default y
- help
- Enable IPV6 support in PPP for the local link between the DTE (processor) and DCE (modem).
- There are some modems which do not support the IPV6 addressing in the local link.
- If they are requested for IPV6CP negotiation, they may time out.
- This would in turn fail the configuration for the whole link.
- If your modem is not responding correctly to PPP Phase Network, try to disable IPV6 support.
- config LWIP_IPV6_MEMP_NUM_ND6_QUEUE
- int "Max number of IPv6 packets to queue during MAC resolution"
- depends on LWIP_IPV6
- range 3 20
- default 3
- help
- Config max number of IPv6 packets to queue during MAC resolution.
- config LWIP_IPV6_ND6_NUM_NEIGHBORS
- int "Max number of entries in IPv6 neighbor cache"
- depends on LWIP_IPV6
- range 3 10
- default 5
- help
- Config max number of entries in IPv6 neighbor cache
- config LWIP_PPP_NOTIFY_PHASE_SUPPORT
- bool "Enable Notify Phase Callback"
- depends on LWIP_PPP_SUPPORT
- default n
- help
- Enable to set a callback which is called on change of the internal PPP state machine.
- config LWIP_PPP_PAP_SUPPORT
- bool "Enable PAP support"
- depends on LWIP_PPP_SUPPORT
- default n
- help
- Enable Password Authentication Protocol (PAP) support
- config LWIP_PPP_CHAP_SUPPORT
- bool "Enable CHAP support"
- depends on LWIP_PPP_SUPPORT
- default n
- help
- Enable Challenge Handshake Authentication Protocol (CHAP) support
- config LWIP_PPP_MSCHAP_SUPPORT
- bool "Enable MSCHAP support"
- depends on LWIP_PPP_SUPPORT
- default n
- help
- Enable Microsoft version of the Challenge-Handshake Authentication Protocol (MSCHAP) support
- config LWIP_PPP_MPPE_SUPPORT
- bool "Enable MPPE support"
- depends on LWIP_PPP_SUPPORT
- default n
- help
- Enable Microsoft Point-to-Point Encryption (MPPE) support
- config LWIP_PPP_DEBUG_ON
- bool "Enable PPP debug log output"
- depends on LWIP_PPP_SUPPORT
- default n
- help
- Enable PPP debug log output
- menuconfig LWIP_SLIP_SUPPORT
- bool "Enable SLIP support (new/experimental)"
- default n
- help
- Enable SLIP stack. Now only SLIP over serial is possible.
- SLIP over serial support is experimental and unsupported.
- config LWIP_SLIP_DEBUG_ON
- bool "Enable SLIP debug log output"
- depends on LWIP_SLIP_SUPPORT
- default n
- help
- Enable SLIP debug log output
- menu "ICMP"
- config LWIP_MULTICAST_PING
- bool "Respond to multicast pings"
- default n
- config LWIP_BROADCAST_PING
- bool "Respond to broadcast pings"
- default n
- endmenu # ICMP
- menu "LWIP RAW API"
- config LWIP_MAX_RAW_PCBS
- int "Maximum LWIP RAW PCBs"
- range 1 1024
- default 16
- help
- The maximum number of simultaneously active LWIP
- RAW protocol control blocks. The practical maximum
- limit is determined by available heap memory at runtime.
- endmenu # LWIP RAW API
- menu "SNTP"
- config LWIP_DHCP_MAX_NTP_SERVERS
- int "Maximum number of NTP servers"
- default 1
- range 1 16
- help
- Set maximum number of NTP servers used by LwIP SNTP module.
- First argument of sntp_setserver/sntp_setservername functions
- is limited to this value.
- config LWIP_SNTP_UPDATE_DELAY
- int "Request interval to update time (ms)"
- range 15000 4294967295
- default 3600000
- help
- This option allows you to set the time update period via SNTP.
- Default is 1 hour. Must not be below 15 seconds by specification.
- (SNTPv4 RFC 4330 enforces a minimum update time of 15 seconds).
- endmenu # SNTP
- config LWIP_ESP_LWIP_ASSERT
- bool "Enable LWIP ASSERT checks"
- default y
- depends on !COMPILER_OPTIMIZATION_ASSERTIONS_DISABLE
- help
- Enable this option keeps LWIP assertion checks enabled.
- It is recommended to keep this option enabled.
- If asserts are disabled for the entire project, they are also disabled
- for LWIP and this option is ignored.
- menu "Hooks"
- choice LWIP_HOOK_TCP_ISN
- prompt "TCP ISN Hook"
- default LWIP_HOOK_TCP_ISN_DEFAULT
- help
- Enables to define a TCP ISN hook to randomize initial sequence
- number in TCP connection.
- The default TCP ISN algorithm used in IDF (standardized in RFC 6528)
- produces ISN by combining an MD5 of the new TCP id and a stable
- secret with the current time.
- This is because the lwIP implementation (`tcp_next_iss`) is not
- very strong, as it does not take into consideration any platform
- specific entropy source.
- Set to LWIP_HOOK_TCP_ISN_CUSTOM to provide custom implementation.
- Set to LWIP_HOOK_TCP_ISN_NONE to use lwIP implementation.
- config LWIP_HOOK_TCP_ISN_NONE
- bool "No hook declared"
- config LWIP_HOOK_TCP_ISN_DEFAULT
- bool "Default implementation"
- config LWIP_HOOK_TCP_ISN_CUSTOM
- bool "Custom implementation"
- endchoice
- choice LWIP_HOOK_IP6_ROUTE
- prompt "IPv6 route Hook"
- depends on LWIP_IPV6
- default LWIP_HOOK_IP6_ROUTE_NONE
- help
- Enables custom IPv6 route hook.
- Setting this to "default" provides weak implementation
- stub that could be overwritten in application code.
- Setting this to "custom" provides hook's declaration
- only and expects the application to implement it.
- config LWIP_HOOK_IP6_ROUTE_NONE
- bool "No hook declared"
- config LWIP_HOOK_IP6_ROUTE_DEFAULT
- bool "Default (weak) implementation"
- config LWIP_HOOK_IP6_ROUTE_CUSTOM
- bool "Custom implementation"
- endchoice
- choice LWIP_HOOK_NETCONN_EXTERNAL_RESOLVE
- prompt "Netconn external resolve Hook"
- default LWIP_HOOK_NETCONN_EXT_RESOLVE_NONE
- help
- Enables custom DNS resolve hook.
- Setting this to "default" provides weak implementation
- stub that could be overwritten in application code.
- Setting this to "custom" provides hook's declaration
- only and expects the application to implement it.
- config LWIP_HOOK_NETCONN_EXT_RESOLVE_NONE
- bool "No hook declared"
- config LWIP_HOOK_NETCONN_EXT_RESOLVE_DEFAULT
- bool "Default (weak) implementation"
- config LWIP_HOOK_NETCONN_EXT_RESOLVE_CUSTOM
- bool "Custom implementation"
- endchoice
- endmenu # Hooks
- menuconfig LWIP_DEBUG
- bool "Enable LWIP Debug"
- default n
- config LWIP_NETIF_DEBUG
- bool "Enable netif debug messages"
- depends on LWIP_DEBUG
- default n
- config LWIP_PBUF_DEBUG
- bool "Enable pbuf debug messages"
- depends on LWIP_DEBUG
- default n
- config LWIP_ETHARP_DEBUG
- bool "Enable etharp debug messages"
- depends on LWIP_DEBUG
- default n
- config LWIP_API_LIB_DEBUG
- bool "Enable api lib debug messages"
- depends on LWIP_DEBUG
- default n
- config LWIP_SOCKETS_DEBUG
- bool "Enable socket debug messages"
- depends on LWIP_DEBUG
- default n
- config LWIP_IP_DEBUG
- bool "Enable IP debug messages"
- depends on LWIP_DEBUG
- default n
- config LWIP_ICMP_DEBUG
- bool "Enable ICMP debug messages"
- depends on LWIP_DEBUG
- default n
- config LWIP_DHCP_STATE_DEBUG
- bool "Enable DHCP state tracking"
- depends on LWIP_DEBUG
- default n
- config LWIP_DHCP_DEBUG
- bool "Enable DHCP debug messages"
- depends on LWIP_DEBUG
- default n
- config LWIP_IP6_DEBUG
- bool "Enable IP6 debug messages"
- depends on LWIP_DEBUG
- default n
- config LWIP_ICMP6_DEBUG
- bool "Enable ICMP6 debug messages"
- depends on LWIP_DEBUG
- default n
- config LWIP_TCP_DEBUG
- bool "Enable TCP debug messages"
- depends on LWIP_DEBUG
- default n
- endmenu
|