nuttx/net/icmp/Kconfig
Alan Carvalho de Assis 82946d0d5f net: Enable ICMP by default if IPv4 is enabled
Signed-off-by: Alan C. Assis <acassis@gmail.com>
2024-07-09 17:08:27 +08:00

96 lines
2.7 KiB
Plaintext

#
# For a description of the syntax of this configuration file,
# see the file kconfig-language.txt in the NuttX tools repository.
#
menu "ICMP Networking Support"
config NET_ICMP
bool "Enable ICMP networking"
default NET_IPv4
---help---
Enable minimal ICMP support. Includes built-in support
for sending replies to received ECHO (ping) requests.
config NET_ICMP_NO_STACK
bool "Disable ICMP stack"
default n
select NET_ICMP
---help---
Build without ICMP stack even if ICMP networking support enabled.
if NET_ICMP && !NET_ICMP_NO_STACK
config NET_ICMP_PMTU_ENTRIES
int "Path MTU Discovery (PMTUD) ICMP pmtu entry number"
default 0
---help---
The number of the ICMP pmtu entry
config NET_ICMP_PMTU_TIMEOUT
int "Path MTU Discovery (PMTUD) ICMP pmtu entry timeout (Time Unit:minute)"
default 10
depends on NET_ICMP_PMTU_ENTRIES != 0
---help---
The timout of the ICMP pmtu entry
config NET_ICMP_SOCKET
bool "IPPROTO_ICMP socket support"
default n
select MM_IOB
---help---
Enable support for IPPROTO_ICMP sockets. These sockets are needed
for application level support for sending ECHO (ping) requests and
receiving associated ECHO replies.
if NET_ICMP_SOCKET
config NET_ICMP_PREALLOC_CONNS
int "Preallocated ICMP packet sockets"
default 4
---help---
Number of ICMP connections (all tasks).
This number of connections will be pre-allocated during system boot.
If dynamic connections allocation is enabled, more connections may
be allocated at a later time, as the system needs them. Else this
will be the maximum number of connections available to the system
at all times.
Set to 0 to disable (and rely only on dynamic allocations).
config NET_ICMP_ALLOC_CONNS
int "Dynamic ICMP connections allocation"
default 0
---help---
Dynamic memory allocations for ICMP.
When set to 0 all dynamic allocations are disabled.
When set to 1 a new connection will be allocated every time,
and it will be free'd when no longer needed.
Setting this to 2 or more will allocate the connections in
batches (with batch size equal to this config). When a
connection is no longer needed, it will be returned to the
free connections pool, and it will never be deallocated!
config NET_ICMP_MAX_CONNS
int "Maximum number of ICMP connections"
default 0
depends on NET_ICMP_ALLOC_CONNS > 0
---help---
If dynamic connections allocation is selected (NET_ICMP_ALLOC_CONNS > 0)
this will limit the number of connections that can be allocated.
This is useful in case the system is under very heavy load (or
under attack), ensuring that the heap will not be exhausted.
config NET_ICMP_NPOLLWAITERS
int "Number of ICMP poll waiters"
default 1
endif # NET_ICMP_SOCKET
endif # NET_ICMP && !NET_ICMP_NO_STACK
endmenu # ICMP Networking Support