OCF: Hook up plain RIPEMD160 in cryptosoft and /dev/crypto.

Reviewed by:	markj
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D33612
This commit is contained in:
John Baldwin 2021-12-29 16:46:48 -08:00
parent b406897911
commit c3a688ef4d
6 changed files with 21 additions and 0 deletions

View file

@ -511,6 +511,8 @@ crypto_auth_hash(const struct crypto_session_params *csp)
return (&auth_hash_null);
case CRYPTO_RIPEMD160_HMAC:
return (&auth_hash_hmac_ripemd_160);
case CRYPTO_RIPEMD160:
return (&auth_hash_ripemd_160);
case CRYPTO_SHA1:
return (&auth_hash_sha1);
case CRYPTO_SHA2_224:

View file

@ -449,6 +449,9 @@ cse_create(struct fcrypt *fcr, struct session2_op *sop)
return (EINVAL);
}
break;
case CRYPTO_RIPEMD160:
thash = &auth_hash_ripemd_160;
break;
case CRYPTO_SHA1:
thash = &auth_hash_sha1;
break;

View file

@ -1177,6 +1177,7 @@ swcr_setup_auth(struct swcr_session *ses,
csp->csp_auth_klen, swa->sw_octx);
}
break;
case CRYPTO_RIPEMD160:
case CRYPTO_SHA1:
case CRYPTO_SHA2_224:
case CRYPTO_SHA2_256:

View file

@ -70,6 +70,7 @@ extern const struct auth_hash auth_hash_hmac_sha2_224;
extern const struct auth_hash auth_hash_hmac_sha2_256;
extern const struct auth_hash auth_hash_hmac_sha2_384;
extern const struct auth_hash auth_hash_hmac_sha2_512;
extern const struct auth_hash auth_hash_ripemd_160;
extern const struct auth_hash auth_hash_sha1;
extern const struct auth_hash auth_hash_sha2_224;
extern const struct auth_hash auth_hash_sha2_256;

View file

@ -57,6 +57,18 @@ static void RMD160Init_int(void *);
static int RMD160Update_int(void *, const void *, u_int);
static void RMD160Final_int(uint8_t *, void *);
/* Plain hash */
const struct auth_hash auth_hash_ripemd_160 = {
.type = CRYPTO_RIPEMD160,
.name = "RIPEMD-160",
.hashsize = RIPEMD160_HASH_LEN,
.ctxsize = sizeof(RMD160_CTX),
.blocksize = RIPEMD160_BLOCK_LEN,
.Init = RMD160Init_int,
.Update = RMD160Update_int,
.Final = RMD160Final_int,
};
/* Authentication instances */
const struct auth_hash auth_hash_hmac_ripemd_160 = {
.type = CRYPTO_RIPEMD160_HMAC,

View file

@ -168,6 +168,8 @@ static const struct alg {
const EVP_MD *(*evp_md)(void);
int pkey;
} algs[] = {
{ .name = "ripemd160", .mac = CRYPTO_RIPEMD160, .type = T_HASH,
.evp_md = EVP_ripemd160 },
{ .name = "sha1", .mac = CRYPTO_SHA1, .type = T_HASH,
.evp_md = EVP_sha1 },
{ .name = "sha224", .mac = CRYPTO_SHA2_224, .type = T_HASH,