# SPDX-License-Identifier: GPL-2.0-only
#
# TIPC configuration
#

menuconfig TIPC
	tristate "The TIPC Protocol"
	depends on INET
	depends on IPV6 || IPV6=n
	help
	  The Transparent Inter Process Communication (TIPC) protocol is
	  specially designed for intra cluster communication. This protocol
	  originates from Ericsson where it has been used in carrier grade
	  cluster applications for many years.

	  For more information about TIPC, see http://tipc.sourceforge.net.

	  This protocol support is also available as a module ( = code which
	  can be inserted in and removed from the running kernel whenever you
	  want). The module will be called tipc. If you want to compile it
	  as a module, say M here and read <file:Documentation/kbuild/modules.rst>.

	  If in doubt, say N.

config TIPC_MEDIA_IB
	bool "InfiniBand media type support"
	depends on TIPC && INFINIBAND_IPOIB
	help
	  Saying Y here will enable support for running TIPC on
	  IP-over-InfiniBand devices.
config TIPC_MEDIA_UDP
	bool "IP/UDP media type support"
	depends on TIPC
	select NET_UDP_TUNNEL
	help
	  Saying Y here will enable support for running TIPC over IP/UDP
	bool
	default y
config TIPC_CRYPTO
	bool "TIPC encryption support"
	depends on TIPC
	select CRYPTO
	select CRYPTO_AES
	select CRYPTO_GCM
	help
	  Saying Y here will enable support for TIPC encryption.
	  All TIPC messages will be encrypted/decrypted by using the currently most
	  advanced algorithm: AEAD AES-GCM (like IPSec or TLS) before leaving/
	  entering the TIPC stack.
	  Key setting from user-space is performed via netlink by a user program
	  (e.g. the iproute2 'tipc' tool).
	bool
	default y

config TIPC_DIAG
	tristate "TIPC: socket monitoring interface"
	depends on TIPC
	default y
	help
	Support for TIPC socket monitoring interface used by ss tool.
	If unsure, say Y.