8f840e47f1
This one will implement all the interface of inet_diag, inet_diag_handler. which includes sctp_diag_dump, sctp_diag_dump_one and sctp_diag_get_info. It will work as a module, and register inet_diag_handler when loading. v2->v3: - fix the mistake in inet_assoc_attr_size(). - change inet_diag_msg_laddrs_fill() name to inet_diag_msg_sctpladdrs_fill. - change inet_diag_msg_paddrs_fill() name to inet_diag_msg_sctpaddrs_fill. - add inet_diag_msg_sctpinfo_fill() to make asoc/ep fill code clearer. - add inet_diag_msg_sctpasoc_fill() to make asoc fill code clearer. - merge inet_asoc_diag_fill() and inet_ep_diag_fill() to inet_sctp_diag_fill(). - call sctp_diag_get_info() directly, instead by handler, cause the caller is in the same file with it. - call lock_sock in sctp_tsp_dump_one() to make sure we call get sctp info safely. - after lock_sock(sk), we should check sk != assoc->base.sk. - change mem[SK_MEMINFO_WMEM_ALLOC] to asoc->sndbuf_used for asoc dump when asoc->ep->sndbuf_policy is set. don't use INET_DIAG_MEMINFO attr any more. Signed-off-by: Xin Long <lucien.xin@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
108 lines
3.2 KiB
Plaintext
108 lines
3.2 KiB
Plaintext
#
|
|
# SCTP configuration
|
|
#
|
|
|
|
menuconfig IP_SCTP
|
|
tristate "The SCTP Protocol"
|
|
depends on INET
|
|
depends on IPV6 || IPV6=n
|
|
select CRYPTO
|
|
select CRYPTO_HMAC
|
|
select CRYPTO_SHA1
|
|
select LIBCRC32C
|
|
---help---
|
|
Stream Control Transmission Protocol
|
|
|
|
From RFC 2960 <http://www.ietf.org/rfc/rfc2960.txt>.
|
|
|
|
"SCTP is a reliable transport protocol operating on top of a
|
|
connectionless packet network such as IP. It offers the following
|
|
services to its users:
|
|
|
|
-- acknowledged error-free non-duplicated transfer of user data,
|
|
-- data fragmentation to conform to discovered path MTU size,
|
|
-- sequenced delivery of user messages within multiple streams,
|
|
with an option for order-of-arrival delivery of individual user
|
|
messages,
|
|
-- optional bundling of multiple user messages into a single SCTP
|
|
packet, and
|
|
-- network-level fault tolerance through supporting of multi-
|
|
homing at either or both ends of an association."
|
|
|
|
To compile this protocol support as a module, choose M here: the
|
|
module will be called sctp. Debug messages are handeled by the
|
|
kernel's dynamic debugging framework.
|
|
|
|
If in doubt, say N.
|
|
|
|
if IP_SCTP
|
|
|
|
config NET_SCTPPROBE
|
|
tristate "SCTP: Association probing"
|
|
depends on PROC_FS && KPROBES
|
|
---help---
|
|
This module allows for capturing the changes to SCTP association
|
|
state in response to incoming packets. It is used for debugging
|
|
SCTP congestion control algorithms. If you don't understand
|
|
what was just said, you don't need it: say N.
|
|
|
|
To compile this code as a module, choose M here: the
|
|
module will be called sctp_probe.
|
|
|
|
config SCTP_DBG_OBJCNT
|
|
bool "SCTP: Debug object counts"
|
|
depends on PROC_FS
|
|
help
|
|
If you say Y, this will enable debugging support for counting the
|
|
type of objects that are currently allocated. This is useful for
|
|
identifying memory leaks. This debug information can be viewed by
|
|
'cat /proc/net/sctp/sctp_dbg_objcnt'
|
|
|
|
If unsure, say N
|
|
choice
|
|
prompt "Default SCTP cookie HMAC encoding"
|
|
default SCTP_DEFAULT_COOKIE_HMAC_MD5
|
|
help
|
|
This option sets the default sctp cookie hmac algorithm
|
|
when in doubt select 'md5'
|
|
|
|
config SCTP_DEFAULT_COOKIE_HMAC_MD5
|
|
bool "Enable optional MD5 hmac cookie generation"
|
|
help
|
|
Enable optional MD5 hmac based SCTP cookie generation
|
|
select SCTP_COOKIE_HMAC_MD5
|
|
|
|
config SCTP_DEFAULT_COOKIE_HMAC_SHA1
|
|
bool "Enable optional SHA1 hmac cookie generation"
|
|
help
|
|
Enable optional SHA1 hmac based SCTP cookie generation
|
|
select SCTP_COOKIE_HMAC_SHA1
|
|
|
|
config SCTP_DEFAULT_COOKIE_HMAC_NONE
|
|
bool "Use no hmac alg in SCTP cookie generation"
|
|
help
|
|
Use no hmac algorithm in SCTP cookie generation
|
|
|
|
endchoice
|
|
|
|
config SCTP_COOKIE_HMAC_MD5
|
|
bool "Enable optional MD5 hmac cookie generation"
|
|
help
|
|
Enable optional MD5 hmac based SCTP cookie generation
|
|
select CRYPTO_HMAC if SCTP_COOKIE_HMAC_MD5
|
|
select CRYPTO_MD5 if SCTP_COOKIE_HMAC_MD5
|
|
|
|
config SCTP_COOKIE_HMAC_SHA1
|
|
bool "Enable optional SHA1 hmac cookie generation"
|
|
help
|
|
Enable optional SHA1 hmac based SCTP cookie generation
|
|
select CRYPTO_HMAC if SCTP_COOKIE_HMAC_SHA1
|
|
select CRYPTO_SHA1 if SCTP_COOKIE_HMAC_SHA1
|
|
|
|
config INET_SCTP_DIAG
|
|
depends on INET_DIAG
|
|
def_tristate INET_DIAG
|
|
|
|
|
|
endif # IP_SCTP
|