xref: /linux-6.15/net/sctp/Kconfig (revision bb33381d)
1#
2# SCTP configuration
3#
4
5menuconfig IP_SCTP
6	tristate "The SCTP Protocol"
7	depends on INET
8	depends on IPV6 || IPV6=n
9	select CRYPTO
10	select CRYPTO_HMAC
11	select CRYPTO_SHA1
12	select LIBCRC32C
13	---help---
14	  Stream Control Transmission Protocol
15
16	  From RFC 2960 <http://www.ietf.org/rfc/rfc2960.txt>.
17
18	  "SCTP is a reliable transport protocol operating on top of a
19	  connectionless packet network such as IP.  It offers the following
20	  services to its users:
21
22	  -- acknowledged error-free non-duplicated transfer of user data,
23	  -- data fragmentation to conform to discovered path MTU size,
24	  -- sequenced delivery of user messages within multiple streams,
25	  with an option for order-of-arrival delivery of individual user
26	  messages,
27	  -- optional bundling of multiple user messages into a single SCTP
28	  packet, and
29	  -- network-level fault tolerance through supporting of multi-
30	  homing at either or both ends of an association."
31
32	  To compile this protocol support as a module, choose M here: the
33	  module will be called sctp. Debug messages are handeled by the
34	  kernel's dynamic debugging framework.
35
36	  If in doubt, say N.
37
38if IP_SCTP
39
40config NET_SCTPPROBE
41	tristate "SCTP: Association probing"
42        depends on PROC_FS && KPROBES
43        ---help---
44        This module allows for capturing the changes to SCTP association
45        state in response to incoming packets. It is used for debugging
46        SCTP congestion control algorithms. If you don't understand
47        what was just said, you don't need it: say N.
48
49        To compile this code as a module, choose M here: the
50        module will be called sctp_probe.
51
52config SCTP_DBG_TSNS
53	bool "SCTP: Debug transactions"
54	help
55	  If you say Y, this will enable transaction debugging, visible
56	  from the kernel's dynamic debugging framework.
57
58	  If unsure, say N.  However, if you are running into problems, use
59	  this option to gather outqueue trace information.
60
61config SCTP_DBG_OBJCNT
62	bool "SCTP: Debug object counts"
63	depends on PROC_FS
64	help
65	  If you say Y, this will enable debugging support for counting the
66	  type of objects that are currently allocated.  This is useful for
67	  identifying memory leaks. This debug information can be viewed by
68	  'cat /proc/net/sctp/sctp_dbg_objcnt'
69
70	  If unsure, say N
71choice
72	prompt "Default SCTP cookie HMAC encoding"
73	default SCTP_DEFAULT_COOKIE_HMAC_MD5
74	help
75	  This option sets the default sctp cookie hmac algorithm
76	  when in doubt select 'md5'
77
78config SCTP_DEFAULT_COOKIE_HMAC_MD5
79	bool "Enable optional MD5 hmac cookie generation"
80	help
81	  Enable optional MD5 hmac based SCTP cookie generation
82	select SCTP_COOKIE_HMAC_MD5
83
84config SCTP_DEFAULT_COOKIE_HMAC_SHA1
85	bool "Enable optional SHA1 hmac cookie generation"
86	help
87	  Enable optional SHA1 hmac based SCTP cookie generation
88	select SCTP_COOKIE_HMAC_SHA1
89
90config SCTP_DEFAULT_COOKIE_HMAC_NONE
91	bool "Use no hmac alg in SCTP cookie generation"
92	help
93	  Use no hmac algorithm in SCTP cookie generation
94
95endchoice
96
97config SCTP_COOKIE_HMAC_MD5
98	bool "Enable optional MD5 hmac cookie generation"
99	help
100	  Enable optional MD5 hmac based SCTP cookie generation
101	select CRYPTO_HMAC if SCTP_COOKIE_HMAC_MD5
102	select CRYPTO_MD5 if SCTP_COOKIE_HMAC_MD5
103
104config SCTP_COOKIE_HMAC_SHA1
105	bool "Enable optional SHA1 hmac cookie generation"
106	help
107	  Enable optional SHA1 hmac based SCTP cookie generation
108	select CRYPTO_HMAC if SCTP_COOKIE_HMAC_SHA1
109	select CRYPTO_SHA1 if SCTP_COOKIE_HMAC_SHA1
110
111
112endif # IP_SCTP
113