xref: /openbmc/linux/net/sctp/Kconfig (revision 6a551c11)
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_OBJCNT
53	bool "SCTP: Debug object counts"
54	depends on PROC_FS
55	help
56	  If you say Y, this will enable debugging support for counting the
57	  type of objects that are currently allocated.  This is useful for
58	  identifying memory leaks. This debug information can be viewed by
59	  'cat /proc/net/sctp/sctp_dbg_objcnt'
60
61	  If unsure, say N
62choice
63	prompt "Default SCTP cookie HMAC encoding"
64	default SCTP_DEFAULT_COOKIE_HMAC_MD5
65	help
66	  This option sets the default sctp cookie hmac algorithm
67	  when in doubt select 'md5'
68
69config SCTP_DEFAULT_COOKIE_HMAC_MD5
70	bool "Enable optional MD5 hmac cookie generation"
71	help
72	  Enable optional MD5 hmac based SCTP cookie generation
73	select SCTP_COOKIE_HMAC_MD5
74
75config SCTP_DEFAULT_COOKIE_HMAC_SHA1
76	bool "Enable optional SHA1 hmac cookie generation"
77	help
78	  Enable optional SHA1 hmac based SCTP cookie generation
79	select SCTP_COOKIE_HMAC_SHA1
80
81config SCTP_DEFAULT_COOKIE_HMAC_NONE
82	bool "Use no hmac alg in SCTP cookie generation"
83	help
84	  Use no hmac algorithm in SCTP cookie generation
85
86endchoice
87
88config SCTP_COOKIE_HMAC_MD5
89	bool "Enable optional MD5 hmac cookie generation"
90	help
91	  Enable optional MD5 hmac based SCTP cookie generation
92	select CRYPTO_HMAC if SCTP_COOKIE_HMAC_MD5
93	select CRYPTO_MD5 if SCTP_COOKIE_HMAC_MD5
94
95config SCTP_COOKIE_HMAC_SHA1
96	bool "Enable optional SHA1 hmac cookie generation"
97	help
98	  Enable optional SHA1 hmac based SCTP cookie generation
99	select CRYPTO_HMAC if SCTP_COOKIE_HMAC_SHA1
100	select CRYPTO_SHA1 if SCTP_COOKIE_HMAC_SHA1
101
102config INET_SCTP_DIAG
103	depends on INET_DIAG
104	def_tristate INET_DIAG
105
106
107endif # IP_SCTP
108