Commit b7e0fe9f authored by Vlad Yasevich's avatar Vlad Yasevich
Browse files

SCTP: Fix build issues with SCTP AUTH.



SCTP-AUTH requires selection of CRYPTO, HMAC and SHA1 since
SHA1 is a MUST requirement for AUTH.  We also support SHA256,
but that's optional, so fix the code to treat it as such.

Signed-off-by: default avatarVlad Yasevich <vladislav.yasevich@hp.com>
parent 555d3d5d
Loading
Loading
Loading
Loading
+6 −3
Original line number Diff line number Diff line
@@ -441,11 +441,14 @@ enum {
	SCTP_AUTH_HMAC_ID_RESERVED_0,
	SCTP_AUTH_HMAC_ID_SHA1,
	SCTP_AUTH_HMAC_ID_RESERVED_2,
	SCTP_AUTH_HMAC_ID_SHA256
#if defined (CONFIG_CRYPTO_SHA256) || defined (CONFIG_CRYPTO_SHA256_MODULE)
	SCTP_AUTH_HMAC_ID_SHA256,
#endif
	__SCTP_AUTH_HMAC_MAX
};

#define SCTP_AUTH_HMAC_ID_MAX	SCTP_AUTH_HMAC_ID_SHA256
#define SCTP_AUTH_NUM_HMACS (SCTP_AUTH_HMAC_ID_SHA256 + 1)
#define SCTP_AUTH_HMAC_ID_MAX	__SCTP_AUTH_HMAC_MAX - 1
#define SCTP_AUTH_NUM_HMACS 	__SCTP_AUTH_HMAC_MAX
#define SCTP_SHA1_SIG_SIZE 20
#define SCTP_SHA256_SIG_SIZE 32

+3 −3
Original line number Diff line number Diff line
@@ -6,9 +6,9 @@ menuconfig IP_SCTP
	tristate "The SCTP Protocol (EXPERIMENTAL)"
	depends on INET && EXPERIMENTAL
	depends on IPV6 || IPV6=n
	select CRYPTO if SCTP_HMAC_SHA1 || SCTP_HMAC_MD5
	select CRYPTO_HMAC if SCTP_HMAC_SHA1 || SCTP_HMAC_MD5
	select CRYPTO_SHA1 if SCTP_HMAC_SHA1
	select CRYPTO
	select CRYPTO_HMAC
	select CRYPTO_SHA1
	select CRYPTO_MD5 if SCTP_HMAC_MD5
	---help---
	  Stream Control Transmission Protocol
+2 −0
Original line number Diff line number Diff line
@@ -54,11 +54,13 @@ static struct sctp_hmac sctp_hmac_list[SCTP_AUTH_NUM_HMACS] = {
		/* id 2 is reserved as well */
		.hmac_id = SCTP_AUTH_HMAC_ID_RESERVED_2,
	},
#if defined (CONFIG_CRYPTO_SHA256) || defined (CONFIG_CRYPTO_SHA256_MODULE)
	{
		.hmac_id = SCTP_AUTH_HMAC_ID_SHA256,
		.hmac_name="hmac(sha256)",
		.hmac_len = SCTP_SHA256_SIG_SIZE,
	}
#endif
};