18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only
28c2ecf20Sopenharmony_ci#
38c2ecf20Sopenharmony_ci# SCTP configuration
48c2ecf20Sopenharmony_ci#
58c2ecf20Sopenharmony_ci
68c2ecf20Sopenharmony_cimenuconfig IP_SCTP
78c2ecf20Sopenharmony_ci	tristate "The SCTP Protocol"
88c2ecf20Sopenharmony_ci	depends on INET
98c2ecf20Sopenharmony_ci	depends on IPV6 || IPV6=n
108c2ecf20Sopenharmony_ci	select CRYPTO
118c2ecf20Sopenharmony_ci	select CRYPTO_HMAC
128c2ecf20Sopenharmony_ci	select CRYPTO_SHA1
138c2ecf20Sopenharmony_ci	select LIBCRC32C
148c2ecf20Sopenharmony_ci	help
158c2ecf20Sopenharmony_ci	  Stream Control Transmission Protocol
168c2ecf20Sopenharmony_ci
178c2ecf20Sopenharmony_ci	  From RFC 2960 <http://www.ietf.org/rfc/rfc2960.txt>.
188c2ecf20Sopenharmony_ci
198c2ecf20Sopenharmony_ci	  "SCTP is a reliable transport protocol operating on top of a
208c2ecf20Sopenharmony_ci	  connectionless packet network such as IP.  It offers the following
218c2ecf20Sopenharmony_ci	  services to its users:
228c2ecf20Sopenharmony_ci
238c2ecf20Sopenharmony_ci	  -- acknowledged error-free non-duplicated transfer of user data,
248c2ecf20Sopenharmony_ci	  -- data fragmentation to conform to discovered path MTU size,
258c2ecf20Sopenharmony_ci	  -- sequenced delivery of user messages within multiple streams,
268c2ecf20Sopenharmony_ci	  with an option for order-of-arrival delivery of individual user
278c2ecf20Sopenharmony_ci	  messages,
288c2ecf20Sopenharmony_ci	  -- optional bundling of multiple user messages into a single SCTP
298c2ecf20Sopenharmony_ci	  packet, and
308c2ecf20Sopenharmony_ci	  -- network-level fault tolerance through supporting of multi-
318c2ecf20Sopenharmony_ci	  homing at either or both ends of an association."
328c2ecf20Sopenharmony_ci
338c2ecf20Sopenharmony_ci	  To compile this protocol support as a module, choose M here: the
348c2ecf20Sopenharmony_ci	  module will be called sctp. Debug messages are handled by the
358c2ecf20Sopenharmony_ci	  kernel's dynamic debugging framework.
368c2ecf20Sopenharmony_ci
378c2ecf20Sopenharmony_ci	  If in doubt, say N.
388c2ecf20Sopenharmony_ci
398c2ecf20Sopenharmony_ciif IP_SCTP
408c2ecf20Sopenharmony_ci
418c2ecf20Sopenharmony_ciconfig SCTP_DBG_OBJCNT
428c2ecf20Sopenharmony_ci	bool "SCTP: Debug object counts"
438c2ecf20Sopenharmony_ci	depends on PROC_FS
448c2ecf20Sopenharmony_ci	help
458c2ecf20Sopenharmony_ci	  If you say Y, this will enable debugging support for counting the
468c2ecf20Sopenharmony_ci	  type of objects that are currently allocated.  This is useful for
478c2ecf20Sopenharmony_ci	  identifying memory leaks. This debug information can be viewed by
488c2ecf20Sopenharmony_ci	  'cat /proc/net/sctp/sctp_dbg_objcnt'
498c2ecf20Sopenharmony_ci
508c2ecf20Sopenharmony_ci	  If unsure, say N
518c2ecf20Sopenharmony_cichoice
528c2ecf20Sopenharmony_ci	prompt "Default SCTP cookie HMAC encoding"
538c2ecf20Sopenharmony_ci	default SCTP_DEFAULT_COOKIE_HMAC_MD5
548c2ecf20Sopenharmony_ci	help
558c2ecf20Sopenharmony_ci	  This option sets the default sctp cookie hmac algorithm
568c2ecf20Sopenharmony_ci	  when in doubt select 'md5'
578c2ecf20Sopenharmony_ci
588c2ecf20Sopenharmony_ciconfig SCTP_DEFAULT_COOKIE_HMAC_MD5
598c2ecf20Sopenharmony_ci	bool "Enable optional MD5 hmac cookie generation"
608c2ecf20Sopenharmony_ci	help
618c2ecf20Sopenharmony_ci	  Enable optional MD5 hmac based SCTP cookie generation
628c2ecf20Sopenharmony_ci	select SCTP_COOKIE_HMAC_MD5
638c2ecf20Sopenharmony_ci
648c2ecf20Sopenharmony_ciconfig SCTP_DEFAULT_COOKIE_HMAC_SHA1
658c2ecf20Sopenharmony_ci	bool "Enable optional SHA1 hmac cookie generation"
668c2ecf20Sopenharmony_ci	help
678c2ecf20Sopenharmony_ci	  Enable optional SHA1 hmac based SCTP cookie generation
688c2ecf20Sopenharmony_ci	select SCTP_COOKIE_HMAC_SHA1
698c2ecf20Sopenharmony_ci
708c2ecf20Sopenharmony_ciconfig SCTP_DEFAULT_COOKIE_HMAC_NONE
718c2ecf20Sopenharmony_ci	bool "Use no hmac alg in SCTP cookie generation"
728c2ecf20Sopenharmony_ci	help
738c2ecf20Sopenharmony_ci	  Use no hmac algorithm in SCTP cookie generation
748c2ecf20Sopenharmony_ci
758c2ecf20Sopenharmony_ciendchoice
768c2ecf20Sopenharmony_ci
778c2ecf20Sopenharmony_ciconfig SCTP_COOKIE_HMAC_MD5
788c2ecf20Sopenharmony_ci	bool "Enable optional MD5 hmac cookie generation"
798c2ecf20Sopenharmony_ci	help
808c2ecf20Sopenharmony_ci	  Enable optional MD5 hmac based SCTP cookie generation
818c2ecf20Sopenharmony_ci	select CRYPTO_HMAC if SCTP_COOKIE_HMAC_MD5
828c2ecf20Sopenharmony_ci	select CRYPTO_MD5 if SCTP_COOKIE_HMAC_MD5
838c2ecf20Sopenharmony_ci
848c2ecf20Sopenharmony_ciconfig SCTP_COOKIE_HMAC_SHA1
858c2ecf20Sopenharmony_ci	bool "Enable optional SHA1 hmac cookie generation"
868c2ecf20Sopenharmony_ci	help
878c2ecf20Sopenharmony_ci	  Enable optional SHA1 hmac based SCTP cookie generation
888c2ecf20Sopenharmony_ci	select CRYPTO_HMAC if SCTP_COOKIE_HMAC_SHA1
898c2ecf20Sopenharmony_ci	select CRYPTO_SHA1 if SCTP_COOKIE_HMAC_SHA1
908c2ecf20Sopenharmony_ci
918c2ecf20Sopenharmony_ciconfig INET_SCTP_DIAG
928c2ecf20Sopenharmony_ci	depends on INET_DIAG
938c2ecf20Sopenharmony_ci	def_tristate INET_DIAG
948c2ecf20Sopenharmony_ci
958c2ecf20Sopenharmony_ci
968c2ecf20Sopenharmony_ciendif # IP_SCTP
97