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: Vlad Yasevich <vladislav.yasevich@hp.com>
This commit is contained in:
@@ -441,11 +441,14 @@ enum {
|
|||||||
SCTP_AUTH_HMAC_ID_RESERVED_0,
|
SCTP_AUTH_HMAC_ID_RESERVED_0,
|
||||||
SCTP_AUTH_HMAC_ID_SHA1,
|
SCTP_AUTH_HMAC_ID_SHA1,
|
||||||
SCTP_AUTH_HMAC_ID_RESERVED_2,
|
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_HMAC_ID_MAX __SCTP_AUTH_HMAC_MAX - 1
|
||||||
#define SCTP_AUTH_NUM_HMACS (SCTP_AUTH_HMAC_ID_SHA256 + 1)
|
#define SCTP_AUTH_NUM_HMACS __SCTP_AUTH_HMAC_MAX
|
||||||
#define SCTP_SHA1_SIG_SIZE 20
|
#define SCTP_SHA1_SIG_SIZE 20
|
||||||
#define SCTP_SHA256_SIG_SIZE 32
|
#define SCTP_SHA256_SIG_SIZE 32
|
||||||
|
|
||||||
|
@@ -6,9 +6,9 @@ menuconfig IP_SCTP
|
|||||||
tristate "The SCTP Protocol (EXPERIMENTAL)"
|
tristate "The SCTP Protocol (EXPERIMENTAL)"
|
||||||
depends on INET && EXPERIMENTAL
|
depends on INET && EXPERIMENTAL
|
||||||
depends on IPV6 || IPV6=n
|
depends on IPV6 || IPV6=n
|
||||||
select CRYPTO if SCTP_HMAC_SHA1 || SCTP_HMAC_MD5
|
select CRYPTO
|
||||||
select CRYPTO_HMAC if SCTP_HMAC_SHA1 || SCTP_HMAC_MD5
|
select CRYPTO_HMAC
|
||||||
select CRYPTO_SHA1 if SCTP_HMAC_SHA1
|
select CRYPTO_SHA1
|
||||||
select CRYPTO_MD5 if SCTP_HMAC_MD5
|
select CRYPTO_MD5 if SCTP_HMAC_MD5
|
||||||
---help---
|
---help---
|
||||||
Stream Control Transmission Protocol
|
Stream Control Transmission Protocol
|
||||||
|
@@ -54,11 +54,13 @@ static struct sctp_hmac sctp_hmac_list[SCTP_AUTH_NUM_HMACS] = {
|
|||||||
/* id 2 is reserved as well */
|
/* id 2 is reserved as well */
|
||||||
.hmac_id = SCTP_AUTH_HMAC_ID_RESERVED_2,
|
.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_id = SCTP_AUTH_HMAC_ID_SHA256,
|
||||||
.hmac_name="hmac(sha256)",
|
.hmac_name="hmac(sha256)",
|
||||||
.hmac_len = SCTP_SHA256_SIG_SIZE,
|
.hmac_len = SCTP_SHA256_SIG_SIZE,
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user