mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2026-05-22 02:27:36 +03:00
module: icp: remove vestigia of crypto sessions
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Closes #12901
This commit is contained in:
+15
-24
@@ -81,16 +81,14 @@ static int aes_decrypt_final(crypto_ctx_t *, crypto_data_t *);
|
||||
static int aes_encrypt(crypto_ctx_t *, crypto_data_t *, crypto_data_t *);
|
||||
static int aes_encrypt_update(crypto_ctx_t *, crypto_data_t *,
|
||||
crypto_data_t *);
|
||||
static int aes_encrypt_atomic(crypto_session_id_t,
|
||||
crypto_mechanism_t *, crypto_key_t *, crypto_data_t *,
|
||||
crypto_data_t *, crypto_spi_ctx_template_t);
|
||||
static int aes_encrypt_atomic(crypto_mechanism_t *, crypto_key_t *,
|
||||
crypto_data_t *, crypto_data_t *, crypto_spi_ctx_template_t);
|
||||
|
||||
static int aes_decrypt(crypto_ctx_t *, crypto_data_t *, crypto_data_t *);
|
||||
static int aes_decrypt_update(crypto_ctx_t *, crypto_data_t *,
|
||||
crypto_data_t *);
|
||||
static int aes_decrypt_atomic(crypto_session_id_t,
|
||||
crypto_mechanism_t *, crypto_key_t *, crypto_data_t *,
|
||||
crypto_data_t *, crypto_spi_ctx_template_t);
|
||||
static int aes_decrypt_atomic(crypto_mechanism_t *, crypto_key_t *,
|
||||
crypto_data_t *, crypto_data_t *, crypto_spi_ctx_template_t);
|
||||
|
||||
static const crypto_cipher_ops_t aes_cipher_ops = {
|
||||
.encrypt_init = aes_encrypt_init,
|
||||
@@ -105,12 +103,10 @@ static const crypto_cipher_ops_t aes_cipher_ops = {
|
||||
.decrypt_atomic = aes_decrypt_atomic
|
||||
};
|
||||
|
||||
static int aes_mac_atomic(crypto_session_id_t,
|
||||
crypto_mechanism_t *, crypto_key_t *, crypto_data_t *, crypto_data_t *,
|
||||
crypto_spi_ctx_template_t);
|
||||
static int aes_mac_verify_atomic(crypto_session_id_t,
|
||||
crypto_mechanism_t *, crypto_key_t *, crypto_data_t *, crypto_data_t *,
|
||||
crypto_spi_ctx_template_t);
|
||||
static int aes_mac_atomic(crypto_mechanism_t *, crypto_key_t *, crypto_data_t *,
|
||||
crypto_data_t *, crypto_spi_ctx_template_t);
|
||||
static int aes_mac_verify_atomic(crypto_mechanism_t *, crypto_key_t *,
|
||||
crypto_data_t *, crypto_data_t *, crypto_spi_ctx_template_t);
|
||||
|
||||
static const crypto_mac_ops_t aes_mac_ops = {
|
||||
.mac_init = NULL,
|
||||
@@ -832,12 +828,10 @@ aes_decrypt_final(crypto_ctx_t *ctx, crypto_data_t *data)
|
||||
}
|
||||
|
||||
static int
|
||||
aes_encrypt_atomic(crypto_session_id_t session_id,
|
||||
crypto_mechanism_t *mechanism,
|
||||
aes_encrypt_atomic(crypto_mechanism_t *mechanism,
|
||||
crypto_key_t *key, crypto_data_t *plaintext, crypto_data_t *ciphertext,
|
||||
crypto_spi_ctx_template_t template)
|
||||
{
|
||||
(void) session_id;
|
||||
aes_ctx_t aes_ctx; /* on the stack */
|
||||
off_t saved_offset;
|
||||
size_t saved_length;
|
||||
@@ -968,12 +962,10 @@ out:
|
||||
}
|
||||
|
||||
static int
|
||||
aes_decrypt_atomic(crypto_session_id_t session_id,
|
||||
crypto_mechanism_t *mechanism,
|
||||
aes_decrypt_atomic(crypto_mechanism_t *mechanism,
|
||||
crypto_key_t *key, crypto_data_t *ciphertext, crypto_data_t *plaintext,
|
||||
crypto_spi_ctx_template_t template)
|
||||
{
|
||||
(void) session_id;
|
||||
aes_ctx_t aes_ctx; /* on the stack */
|
||||
off_t saved_offset;
|
||||
size_t saved_length;
|
||||
@@ -1308,7 +1300,7 @@ process_gmac_mech(crypto_mechanism_t *mech, crypto_data_t *data,
|
||||
}
|
||||
|
||||
static int
|
||||
aes_mac_atomic(crypto_session_id_t session_id, crypto_mechanism_t *mechanism,
|
||||
aes_mac_atomic(crypto_mechanism_t *mechanism,
|
||||
crypto_key_t *key, crypto_data_t *data, crypto_data_t *mac,
|
||||
crypto_spi_ctx_template_t template)
|
||||
{
|
||||
@@ -1324,14 +1316,13 @@ aes_mac_atomic(crypto_session_id_t session_id, crypto_mechanism_t *mechanism,
|
||||
gcm_mech.cm_param_len = sizeof (CK_AES_GCM_PARAMS);
|
||||
gcm_mech.cm_param = (char *)&gcm_params;
|
||||
|
||||
return (aes_encrypt_atomic(session_id, &gcm_mech,
|
||||
return (aes_encrypt_atomic(&gcm_mech,
|
||||
key, &null_crypto_data, mac, template));
|
||||
}
|
||||
|
||||
static int
|
||||
aes_mac_verify_atomic(crypto_session_id_t session_id,
|
||||
crypto_mechanism_t *mechanism, crypto_key_t *key, crypto_data_t *data,
|
||||
crypto_data_t *mac, crypto_spi_ctx_template_t template)
|
||||
aes_mac_verify_atomic(crypto_mechanism_t *mechanism, crypto_key_t *key,
|
||||
crypto_data_t *data, crypto_data_t *mac, crypto_spi_ctx_template_t template)
|
||||
{
|
||||
CK_AES_GCM_PARAMS gcm_params;
|
||||
crypto_mechanism_t gcm_mech;
|
||||
@@ -1345,6 +1336,6 @@ aes_mac_verify_atomic(crypto_session_id_t session_id,
|
||||
gcm_mech.cm_param_len = sizeof (CK_AES_GCM_PARAMS);
|
||||
gcm_mech.cm_param = (char *)&gcm_params;
|
||||
|
||||
return (aes_decrypt_atomic(session_id, &gcm_mech,
|
||||
return (aes_decrypt_atomic(&gcm_mech,
|
||||
key, mac, &null_crypto_data, template));
|
||||
}
|
||||
|
||||
+10
-16
@@ -94,8 +94,8 @@ static int sha2_digest_init(crypto_ctx_t *, crypto_mechanism_t *);
|
||||
static int sha2_digest(crypto_ctx_t *, crypto_data_t *, crypto_data_t *);
|
||||
static int sha2_digest_update(crypto_ctx_t *, crypto_data_t *);
|
||||
static int sha2_digest_final(crypto_ctx_t *, crypto_data_t *);
|
||||
static int sha2_digest_atomic(crypto_session_id_t,
|
||||
crypto_mechanism_t *, crypto_data_t *, crypto_data_t *);
|
||||
static int sha2_digest_atomic(crypto_mechanism_t *, crypto_data_t *,
|
||||
crypto_data_t *);
|
||||
|
||||
static const crypto_digest_ops_t sha2_digest_ops = {
|
||||
.digest_init = sha2_digest_init,
|
||||
@@ -109,12 +109,10 @@ static int sha2_mac_init(crypto_ctx_t *, crypto_mechanism_t *, crypto_key_t *,
|
||||
crypto_spi_ctx_template_t);
|
||||
static int sha2_mac_update(crypto_ctx_t *, crypto_data_t *);
|
||||
static int sha2_mac_final(crypto_ctx_t *, crypto_data_t *);
|
||||
static int sha2_mac_atomic(crypto_session_id_t,
|
||||
crypto_mechanism_t *, crypto_key_t *, crypto_data_t *, crypto_data_t *,
|
||||
crypto_spi_ctx_template_t);
|
||||
static int sha2_mac_verify_atomic(crypto_session_id_t,
|
||||
crypto_mechanism_t *, crypto_key_t *, crypto_data_t *, crypto_data_t *,
|
||||
crypto_spi_ctx_template_t);
|
||||
static int sha2_mac_atomic(crypto_mechanism_t *, crypto_key_t *,
|
||||
crypto_data_t *, crypto_data_t *, crypto_spi_ctx_template_t);
|
||||
static int sha2_mac_verify_atomic(crypto_mechanism_t *, crypto_key_t *,
|
||||
crypto_data_t *, crypto_data_t *, crypto_spi_ctx_template_t);
|
||||
|
||||
static const crypto_mac_ops_t sha2_mac_ops = {
|
||||
.mac_init = sha2_mac_init,
|
||||
@@ -537,10 +535,9 @@ sha2_digest_final(crypto_ctx_t *ctx, crypto_data_t *digest)
|
||||
}
|
||||
|
||||
static int
|
||||
sha2_digest_atomic(crypto_session_id_t session_id,
|
||||
crypto_mechanism_t *mechanism, crypto_data_t *data, crypto_data_t *digest)
|
||||
sha2_digest_atomic(crypto_mechanism_t *mechanism, crypto_data_t *data,
|
||||
crypto_data_t *digest)
|
||||
{
|
||||
(void) session_id;
|
||||
int ret = CRYPTO_SUCCESS;
|
||||
SHA2_CTX sha2_ctx;
|
||||
uint32_t sha_digest_len;
|
||||
@@ -898,11 +895,10 @@ sha2_mac_final(crypto_ctx_t *ctx, crypto_data_t *mac)
|
||||
}
|
||||
|
||||
static int
|
||||
sha2_mac_atomic(crypto_session_id_t session_id, crypto_mechanism_t *mechanism,
|
||||
sha2_mac_atomic(crypto_mechanism_t *mechanism,
|
||||
crypto_key_t *key, crypto_data_t *data, crypto_data_t *mac,
|
||||
crypto_spi_ctx_template_t ctx_template)
|
||||
{
|
||||
(void) session_id;
|
||||
int ret = CRYPTO_SUCCESS;
|
||||
uchar_t digest[SHA512_DIGEST_LENGTH];
|
||||
sha2_hmac_ctx_t sha2_hmac_ctx;
|
||||
@@ -1031,12 +1027,10 @@ bail:
|
||||
}
|
||||
|
||||
static int
|
||||
sha2_mac_verify_atomic(crypto_session_id_t session_id,
|
||||
crypto_mechanism_t *mechanism,
|
||||
sha2_mac_verify_atomic(crypto_mechanism_t *mechanism,
|
||||
crypto_key_t *key, crypto_data_t *data, crypto_data_t *mac,
|
||||
crypto_spi_ctx_template_t ctx_template)
|
||||
{
|
||||
(void) session_id;
|
||||
int ret = CRYPTO_SUCCESS;
|
||||
uchar_t digest[SHA512_DIGEST_LENGTH];
|
||||
sha2_hmac_ctx_t sha2_hmac_ctx;
|
||||
|
||||
@@ -49,8 +49,8 @@ static int skein_digest_init(crypto_ctx_t *, crypto_mechanism_t *);
|
||||
static int skein_digest(crypto_ctx_t *, crypto_data_t *, crypto_data_t *);
|
||||
static int skein_update(crypto_ctx_t *, crypto_data_t *);
|
||||
static int skein_final(crypto_ctx_t *, crypto_data_t *);
|
||||
static int skein_digest_atomic(crypto_session_id_t,
|
||||
crypto_mechanism_t *, crypto_data_t *, crypto_data_t *);
|
||||
static int skein_digest_atomic(crypto_mechanism_t *, crypto_data_t *,
|
||||
crypto_data_t *);
|
||||
|
||||
static const crypto_digest_ops_t skein_digest_ops = {
|
||||
.digest_init = skein_digest_init,
|
||||
@@ -62,9 +62,8 @@ static const crypto_digest_ops_t skein_digest_ops = {
|
||||
|
||||
static int skein_mac_init(crypto_ctx_t *, crypto_mechanism_t *, crypto_key_t *,
|
||||
crypto_spi_ctx_template_t);
|
||||
static int skein_mac_atomic(crypto_session_id_t,
|
||||
crypto_mechanism_t *, crypto_key_t *, crypto_data_t *, crypto_data_t *,
|
||||
crypto_spi_ctx_template_t);
|
||||
static int skein_mac_atomic(crypto_mechanism_t *, crypto_key_t *,
|
||||
crypto_data_t *, crypto_data_t *, crypto_spi_ctx_template_t);
|
||||
|
||||
static const crypto_mac_ops_t skein_mac_ops = {
|
||||
.mac_init = skein_mac_init,
|
||||
@@ -467,10 +466,9 @@ skein_final(crypto_ctx_t *ctx, crypto_data_t *digest)
|
||||
* Supported input/output formats are raw, uio and mblk.
|
||||
*/
|
||||
static int
|
||||
skein_digest_atomic(crypto_session_id_t session_id,
|
||||
crypto_mechanism_t *mechanism, crypto_data_t *data, crypto_data_t *digest)
|
||||
skein_digest_atomic(crypto_mechanism_t *mechanism, crypto_data_t *data,
|
||||
crypto_data_t *digest)
|
||||
{
|
||||
(void) session_id;
|
||||
int error;
|
||||
skein_ctx_t skein_ctx;
|
||||
crypto_ctx_t ctx;
|
||||
@@ -570,12 +568,11 @@ errout:
|
||||
* function as to those of the partial operations above.
|
||||
*/
|
||||
static int
|
||||
skein_mac_atomic(crypto_session_id_t session_id, crypto_mechanism_t *mechanism,
|
||||
skein_mac_atomic(crypto_mechanism_t *mechanism,
|
||||
crypto_key_t *key, crypto_data_t *data, crypto_data_t *mac,
|
||||
crypto_spi_ctx_template_t ctx_template)
|
||||
{
|
||||
/* faux crypto context just for skein_digest_{update,final} */
|
||||
(void) session_id;
|
||||
int error;
|
||||
crypto_ctx_t ctx;
|
||||
skein_ctx_t skein_ctx;
|
||||
|
||||
Reference in New Issue
Block a user