fdc6dbf176
We have projects that need to sense ip address changes in time, and set ip address or clear ip address through netlink so the relevant implementation is added. The usage and command structure are consistent with linux Signed-off-by: zhanghongyu <zhanghongyu@xiaomi.com>
123 lines
3.3 KiB
Plaintext
123 lines
3.3 KiB
Plaintext
#
|
|
# For a description of the syntax of this configuration file,
|
|
# see the file kconfig-language.txt in the NuttX tools repository.
|
|
#
|
|
|
|
menu "Netlink Socket Support"
|
|
|
|
config NET_NETLINK
|
|
bool "Netlink socket support"
|
|
default n
|
|
depends on SCHED_WORKQUEUE
|
|
select WQUEUE_NOTIFIER
|
|
---help---
|
|
Enable support for Netlink-like IPC sockets that will permit user-
|
|
space applications to interact with network services.
|
|
|
|
This logic is a WIP. Currently only fragmentary support is
|
|
available, not enough to actually do anything of consequence.
|
|
Only the following features are implemented at this time:
|
|
|
|
NETLINK_ROUTE capability to read the ARP table.
|
|
|
|
if NET_NETLINK
|
|
|
|
config NETLINK_PREALLOC_CONNS
|
|
int "Preallocated Netlink connections"
|
|
default 4
|
|
---help---
|
|
Number of Netlink 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 NETLINK_ALLOC_CONNS
|
|
int "Dynamic Netlink connections allocation"
|
|
default 0
|
|
---help---
|
|
Dynamic memory allocations for Netlink.
|
|
|
|
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 NETLINK_MAX_CONNS
|
|
int "Maximum number of Netlink connections"
|
|
default 0
|
|
depends on NETLINK_ALLOC_CONNS > 0
|
|
---help---
|
|
If dynamic connections allocation is selected (NETLINK_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.
|
|
|
|
menu "Netlink Protocols"
|
|
|
|
config NETLINK_ROUTE
|
|
bool "Netlink Route protocol"
|
|
default n
|
|
---help---
|
|
Support the NETLINK_ROUTE protocol option.
|
|
|
|
if NETLINK_ROUTE
|
|
|
|
config NETLINK_DISABLE_GETLINK
|
|
bool "Disable RTM_GETLINK support"
|
|
default n
|
|
---help---
|
|
RTM_GETLINK is used to enumerate network devices.
|
|
|
|
config NETLINK_DISABLE_GETNEIGH
|
|
bool "Disable RTM_GETNEIGH support"
|
|
default n
|
|
---help---
|
|
RTM_GETNEIGH is used to retrieve Neighbor/ARP tables.
|
|
|
|
config NETLINK_DISABLE_GETROUTE
|
|
bool "Disable RTM_GETROUTE support"
|
|
default n
|
|
---help---
|
|
RTM_GETROUTE is used to retrieve routing tables.
|
|
|
|
config NETLINK_DISABLE_NEWADDR
|
|
bool "Disable RTM_NEWADDR support"
|
|
default n
|
|
---help---
|
|
RTM_NEWADDR is used to set netdev address.
|
|
|
|
config NETLINK_DISABLE_DELADDR
|
|
bool "Disable RTM_DELADDR support"
|
|
default n
|
|
---help---
|
|
RTM_DELADDR is used to delete netdev address.
|
|
|
|
config NETLINK_DISABLE_GETADDR
|
|
bool "Disable RTM_GETADDR support"
|
|
default n
|
|
---help---
|
|
RTM_GETADDR is used to get netdev address.
|
|
|
|
config NETLINK_VALIDATE_POLICY
|
|
bool "Enable netlink message policy verification"
|
|
default n
|
|
---help---
|
|
VALIDATE_POLICY is used to make sure the parameters
|
|
you pass in are valid.
|
|
|
|
endif # NETLINK_ROUTE
|
|
endmenu # Netlink Protocols
|
|
endif # NET_NETLINK
|
|
endmenu # Netlink Socket Support
|