0001 # SPDX-License-Identifier: GPL-2.0-only
0002 #
0003 # SCTP configuration
0004 #
0005
0006 menuconfig IP_SCTP
0007 tristate "The SCTP Protocol"
0008 depends on INET
0009 depends on IPV6 || IPV6=n
0010 select CRYPTO
0011 select CRYPTO_HMAC
0012 select CRYPTO_SHA1
0013 select LIBCRC32C
0014 select NET_UDP_TUNNEL
0015 help
0016 Stream Control Transmission Protocol
0017
0018 From RFC 2960 <http://www.ietf.org/rfc/rfc2960.txt>.
0019
0020 "SCTP is a reliable transport protocol operating on top of a
0021 connectionless packet network such as IP. It offers the following
0022 services to its users:
0023
0024 -- acknowledged error-free non-duplicated transfer of user data,
0025 -- data fragmentation to conform to discovered path MTU size,
0026 -- sequenced delivery of user messages within multiple streams,
0027 with an option for order-of-arrival delivery of individual user
0028 messages,
0029 -- optional bundling of multiple user messages into a single SCTP
0030 packet, and
0031 -- network-level fault tolerance through supporting of multi-
0032 homing at either or both ends of an association."
0033
0034 To compile this protocol support as a module, choose M here: the
0035 module will be called sctp. Debug messages are handled by the
0036 kernel's dynamic debugging framework.
0037
0038 If in doubt, say N.
0039
0040 if IP_SCTP
0041
0042 config SCTP_DBG_OBJCNT
0043 bool "SCTP: Debug object counts"
0044 depends on PROC_FS
0045 help
0046 If you say Y, this will enable debugging support for counting the
0047 type of objects that are currently allocated. This is useful for
0048 identifying memory leaks. This debug information can be viewed by
0049 'cat /proc/net/sctp/sctp_dbg_objcnt'
0050
0051 If unsure, say N
0052 choice
0053 prompt "Default SCTP cookie HMAC encoding"
0054 default SCTP_DEFAULT_COOKIE_HMAC_MD5
0055 help
0056 This option sets the default sctp cookie hmac algorithm
0057 when in doubt select 'md5'
0058
0059 config SCTP_DEFAULT_COOKIE_HMAC_MD5
0060 bool "Enable optional MD5 hmac cookie generation"
0061 help
0062 Enable optional MD5 hmac based SCTP cookie generation
0063 select SCTP_COOKIE_HMAC_MD5
0064
0065 config SCTP_DEFAULT_COOKIE_HMAC_SHA1
0066 bool "Enable optional SHA1 hmac cookie generation"
0067 help
0068 Enable optional SHA1 hmac based SCTP cookie generation
0069 select SCTP_COOKIE_HMAC_SHA1
0070
0071 config SCTP_DEFAULT_COOKIE_HMAC_NONE
0072 bool "Use no hmac alg in SCTP cookie generation"
0073 help
0074 Use no hmac algorithm in SCTP cookie generation
0075
0076 endchoice
0077
0078 config SCTP_COOKIE_HMAC_MD5
0079 bool "Enable optional MD5 hmac cookie generation"
0080 help
0081 Enable optional MD5 hmac based SCTP cookie generation
0082 select CRYPTO_HMAC if SCTP_COOKIE_HMAC_MD5
0083 select CRYPTO_MD5 if SCTP_COOKIE_HMAC_MD5
0084
0085 config SCTP_COOKIE_HMAC_SHA1
0086 bool "Enable optional SHA1 hmac cookie generation"
0087 help
0088 Enable optional SHA1 hmac based SCTP cookie generation
0089 select CRYPTO_HMAC if SCTP_COOKIE_HMAC_SHA1
0090 select CRYPTO_SHA1 if SCTP_COOKIE_HMAC_SHA1
0091
0092 config INET_SCTP_DIAG
0093 depends on INET_DIAG
0094 def_tristate INET_DIAG
0095
0096
0097 endif # IP_SCTP