Changeset View
Changeset View
Standalone View
Standalone View
head/sys/mips/cavium/cryptocteon/cryptocteon.c
Show First 20 Lines • Show All 115 Lines • ▼ Show 20 Lines | cryptocteon_auth_supported(const struct crypto_session_params *csp) | ||||
return (true); | return (true); | ||||
} | } | ||||
static bool | static bool | ||||
cryptocteon_cipher_supported(const struct crypto_session_params *csp) | cryptocteon_cipher_supported(const struct crypto_session_params *csp) | ||||
{ | { | ||||
switch (csp->csp_cipher_alg) { | switch (csp->csp_cipher_alg) { | ||||
case CRYPTO_DES_CBC: | |||||
case CRYPTO_3DES_CBC: | |||||
if (csp->csp_ivlen != 8) | |||||
return (false); | |||||
if (csp->csp_cipher_klen != 8 && | |||||
csp->csp_cipher_klen != 24) | |||||
return (false); | |||||
break; | |||||
case CRYPTO_AES_CBC: | case CRYPTO_AES_CBC: | ||||
if (csp->csp_ivlen != 16) | if (csp->csp_ivlen != 16) | ||||
return (false); | return (false); | ||||
if (csp->csp_cipher_klen != 16 && | if (csp->csp_cipher_klen != 16 && | ||||
csp->csp_cipher_klen != 24 && | csp->csp_cipher_klen != 24 && | ||||
csp->csp_cipher_klen != 32) | csp->csp_cipher_klen != 32) | ||||
return (false); | return (false); | ||||
break; | break; | ||||
▲ Show 20 Lines • Show All 84 Lines • ▼ Show 20 Lines | case CSP_MODE_DIGEST: | ||||
case CRYPTO_SHA1_HMAC: | case CRYPTO_SHA1_HMAC: | ||||
ocd->octo_encrypt = octo_null_sha1_encrypt; | ocd->octo_encrypt = octo_null_sha1_encrypt; | ||||
ocd->octo_decrypt = octo_null_sha1_encrypt; | ocd->octo_decrypt = octo_null_sha1_encrypt; | ||||
break; | break; | ||||
} | } | ||||
break; | break; | ||||
case CSP_MODE_CIPHER: | case CSP_MODE_CIPHER: | ||||
switch (csp->csp_cipher_alg) { | switch (csp->csp_cipher_alg) { | ||||
case CRYPTO_DES_CBC: | |||||
case CRYPTO_3DES_CBC: | |||||
ocd->octo_encrypt = octo_des_cbc_encrypt; | |||||
ocd->octo_decrypt = octo_des_cbc_decrypt; | |||||
break; | |||||
case CRYPTO_AES_CBC: | case CRYPTO_AES_CBC: | ||||
ocd->octo_encrypt = octo_aes_cbc_encrypt; | ocd->octo_encrypt = octo_aes_cbc_encrypt; | ||||
ocd->octo_decrypt = octo_aes_cbc_decrypt; | ocd->octo_decrypt = octo_aes_cbc_decrypt; | ||||
break; | break; | ||||
} | } | ||||
break; | break; | ||||
case CSP_MODE_ETA: | case CSP_MODE_ETA: | ||||
switch (csp->csp_cipher_alg) { | switch (csp->csp_cipher_alg) { | ||||
case CRYPTO_DES_CBC: | |||||
case CRYPTO_3DES_CBC: | |||||
switch (csp->csp_auth_alg) { | |||||
case CRYPTO_MD5_HMAC: | |||||
ocd->octo_encrypt = octo_des_cbc_md5_encrypt; | |||||
ocd->octo_decrypt = octo_des_cbc_md5_decrypt; | |||||
break; | |||||
case CRYPTO_SHA1_HMAC: | |||||
ocd->octo_encrypt = octo_des_cbc_sha1_encrypt; | |||||
ocd->octo_decrypt = octo_des_cbc_sha1_encrypt; | |||||
break; | |||||
} | |||||
break; | |||||
case CRYPTO_AES_CBC: | case CRYPTO_AES_CBC: | ||||
switch (csp->csp_auth_alg) { | switch (csp->csp_auth_alg) { | ||||
case CRYPTO_MD5_HMAC: | case CRYPTO_MD5_HMAC: | ||||
ocd->octo_encrypt = octo_aes_cbc_md5_encrypt; | ocd->octo_encrypt = octo_aes_cbc_md5_encrypt; | ||||
ocd->octo_decrypt = octo_aes_cbc_md5_decrypt; | ocd->octo_decrypt = octo_aes_cbc_md5_decrypt; | ||||
break; | break; | ||||
case CRYPTO_SHA1_HMAC: | case CRYPTO_SHA1_HMAC: | ||||
ocd->octo_encrypt = octo_aes_cbc_sha1_encrypt; | ocd->octo_encrypt = octo_aes_cbc_sha1_encrypt; | ||||
▲ Show 20 Lines • Show All 199 Lines • Show Last 20 Lines |