crypto: drop back compatibility typedefs for nettle

Now that we only support modern nettle, we don't need to have local
typedefs to mask the real nettle types.

Reviewed-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
Message-Id: <20210514120415.1368922-5-berrange@redhat.com>
Reviewed-by: Willian Rampazzo <willianr@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
This commit is contained in:
Daniel P. Berrangé 2021-05-14 13:04:07 +01:00 committed by Thomas Huth
parent 20ba7a4a34
commit 115e4b7003
3 changed files with 30 additions and 44 deletions

View File

@ -34,16 +34,6 @@
#include <nettle/xts.h> #include <nettle/xts.h>
#endif #endif
typedef void (*QCryptoCipherNettleFuncWrapper)(const void *ctx,
size_t length,
uint8_t *dst,
const uint8_t *src);
typedef nettle_cipher_func * QCryptoCipherNettleFuncNative;
typedef const void * cipher_ctx_t;
typedef size_t cipher_length_t;
#define CONST_CTX const
static inline bool qcrypto_length_check(size_t len, size_t blocksize, static inline bool qcrypto_length_check(size_t len, size_t blocksize,
Error **errp) Error **errp)
{ {
@ -166,12 +156,12 @@ static const struct QCryptoCipherDriver NAME##_driver_ctr = { \
static void NAME##_xts_wrape(const void *ctx, size_t length, \ static void NAME##_xts_wrape(const void *ctx, size_t length, \
uint8_t *dst, const uint8_t *src) \ uint8_t *dst, const uint8_t *src) \
{ \ { \
ENCRYPT((cipher_ctx_t)ctx, length, dst, src); \ ENCRYPT((const void *)ctx, length, dst, src); \
} \ } \
static void NAME##_xts_wrapd(const void *ctx, size_t length, \ static void NAME##_xts_wrapd(const void *ctx, size_t length, \
uint8_t *dst, const uint8_t *src) \ uint8_t *dst, const uint8_t *src) \
{ \ { \
DECRYPT((cipher_ctx_t)ctx, length, dst, src); \ DECRYPT((const void *)ctx, length, dst, src); \
} \ } \
static int NAME##_encrypt_xts(QCryptoCipher *cipher, const void *in, \ static int NAME##_encrypt_xts(QCryptoCipher *cipher, const void *in, \
void *out, size_t len, Error **errp) \ void *out, size_t len, Error **errp) \
@ -251,13 +241,13 @@ typedef struct QCryptoNettleDESRFB {
uint8_t iv[DES_BLOCK_SIZE]; uint8_t iv[DES_BLOCK_SIZE];
} QCryptoNettleDESRFB; } QCryptoNettleDESRFB;
static void des_encrypt_native(cipher_ctx_t ctx, cipher_length_t length, static void des_encrypt_native(const void *ctx, size_t length,
uint8_t *dst, const uint8_t *src) uint8_t *dst, const uint8_t *src)
{ {
des_encrypt(ctx, length, dst, src); des_encrypt(ctx, length, dst, src);
} }
static void des_decrypt_native(cipher_ctx_t ctx, cipher_length_t length, static void des_decrypt_native(const void *ctx, size_t length,
uint8_t *dst, const uint8_t *src) uint8_t *dst, const uint8_t *src)
{ {
des_decrypt(ctx, length, dst, src); des_decrypt(ctx, length, dst, src);
@ -273,13 +263,13 @@ typedef struct QCryptoNettleDES3 {
uint8_t iv[DES3_BLOCK_SIZE]; uint8_t iv[DES3_BLOCK_SIZE];
} QCryptoNettleDES3; } QCryptoNettleDES3;
static void des3_encrypt_native(cipher_ctx_t ctx, cipher_length_t length, static void des3_encrypt_native(const void *ctx, size_t length,
uint8_t *dst, const uint8_t *src) uint8_t *dst, const uint8_t *src)
{ {
des3_encrypt(ctx, length, dst, src); des3_encrypt(ctx, length, dst, src);
} }
static void des3_decrypt_native(cipher_ctx_t ctx, cipher_length_t length, static void des3_decrypt_native(const void *ctx, size_t length,
uint8_t *dst, const uint8_t *src) uint8_t *dst, const uint8_t *src)
{ {
des3_decrypt(ctx, length, dst, src); des3_decrypt(ctx, length, dst, src);
@ -296,17 +286,17 @@ typedef struct QCryptoNettleAES128 {
struct aes128_ctx key[2], key_xts[2]; struct aes128_ctx key[2], key_xts[2];
} QCryptoNettleAES128; } QCryptoNettleAES128;
static void aes128_encrypt_native(cipher_ctx_t ctx, cipher_length_t length, static void aes128_encrypt_native(const void *ctx, size_t length,
uint8_t *dst, const uint8_t *src) uint8_t *dst, const uint8_t *src)
{ {
CONST_CTX struct aes128_ctx *keys = ctx; const struct aes128_ctx *keys = ctx;
aes128_encrypt(&keys[0], length, dst, src); aes128_encrypt(&keys[0], length, dst, src);
} }
static void aes128_decrypt_native(cipher_ctx_t ctx, cipher_length_t length, static void aes128_decrypt_native(const void *ctx, size_t length,
uint8_t *dst, const uint8_t *src) uint8_t *dst, const uint8_t *src)
{ {
CONST_CTX struct aes128_ctx *keys = ctx; const struct aes128_ctx *keys = ctx;
aes128_decrypt(&keys[1], length, dst, src); aes128_decrypt(&keys[1], length, dst, src);
} }
@ -322,17 +312,17 @@ typedef struct QCryptoNettleAES192 {
struct aes192_ctx key[2], key_xts[2]; struct aes192_ctx key[2], key_xts[2];
} QCryptoNettleAES192; } QCryptoNettleAES192;
static void aes192_encrypt_native(cipher_ctx_t ctx, cipher_length_t length, static void aes192_encrypt_native(const void *ctx, size_t length,
uint8_t *dst, const uint8_t *src) uint8_t *dst, const uint8_t *src)
{ {
CONST_CTX struct aes192_ctx *keys = ctx; const struct aes192_ctx *keys = ctx;
aes192_encrypt(&keys[0], length, dst, src); aes192_encrypt(&keys[0], length, dst, src);
} }
static void aes192_decrypt_native(cipher_ctx_t ctx, cipher_length_t length, static void aes192_decrypt_native(const void *ctx, size_t length,
uint8_t *dst, const uint8_t *src) uint8_t *dst, const uint8_t *src)
{ {
CONST_CTX struct aes192_ctx *keys = ctx; const struct aes192_ctx *keys = ctx;
aes192_decrypt(&keys[1], length, dst, src); aes192_decrypt(&keys[1], length, dst, src);
} }
@ -348,17 +338,17 @@ typedef struct QCryptoNettleAES256 {
struct aes256_ctx key[2], key_xts[2]; struct aes256_ctx key[2], key_xts[2];
} QCryptoNettleAES256; } QCryptoNettleAES256;
static void aes256_encrypt_native(cipher_ctx_t ctx, cipher_length_t length, static void aes256_encrypt_native(const void *ctx, size_t length,
uint8_t *dst, const uint8_t *src) uint8_t *dst, const uint8_t *src)
{ {
CONST_CTX struct aes256_ctx *keys = ctx; const struct aes256_ctx *keys = ctx;
aes256_encrypt(&keys[0], length, dst, src); aes256_encrypt(&keys[0], length, dst, src);
} }
static void aes256_decrypt_native(cipher_ctx_t ctx, cipher_length_t length, static void aes256_decrypt_native(const void *ctx, size_t length,
uint8_t *dst, const uint8_t *src) uint8_t *dst, const uint8_t *src)
{ {
CONST_CTX struct aes256_ctx *keys = ctx; const struct aes256_ctx *keys = ctx;
aes256_decrypt(&keys[1], length, dst, src); aes256_decrypt(&keys[1], length, dst, src);
} }
@ -373,13 +363,13 @@ typedef struct QCryptoNettleCAST128 {
struct cast128_ctx key, key_xts; struct cast128_ctx key, key_xts;
} QCryptoNettleCAST128; } QCryptoNettleCAST128;
static void cast128_encrypt_native(cipher_ctx_t ctx, cipher_length_t length, static void cast128_encrypt_native(const void *ctx, size_t length,
uint8_t *dst, const uint8_t *src) uint8_t *dst, const uint8_t *src)
{ {
cast128_encrypt(ctx, length, dst, src); cast128_encrypt(ctx, length, dst, src);
} }
static void cast128_decrypt_native(cipher_ctx_t ctx, cipher_length_t length, static void cast128_decrypt_native(const void *ctx, size_t length,
uint8_t *dst, const uint8_t *src) uint8_t *dst, const uint8_t *src)
{ {
cast128_decrypt(ctx, length, dst, src); cast128_decrypt(ctx, length, dst, src);
@ -397,13 +387,13 @@ typedef struct QCryptoNettleSerpent {
} QCryptoNettleSerpent; } QCryptoNettleSerpent;
static void serpent_encrypt_native(cipher_ctx_t ctx, cipher_length_t length, static void serpent_encrypt_native(const void *ctx, size_t length,
uint8_t *dst, const uint8_t *src) uint8_t *dst, const uint8_t *src)
{ {
serpent_encrypt(ctx, length, dst, src); serpent_encrypt(ctx, length, dst, src);
} }
static void serpent_decrypt_native(cipher_ctx_t ctx, cipher_length_t length, static void serpent_decrypt_native(const void *ctx, size_t length,
uint8_t *dst, const uint8_t *src) uint8_t *dst, const uint8_t *src)
{ {
serpent_decrypt(ctx, length, dst, src); serpent_decrypt(ctx, length, dst, src);
@ -420,13 +410,13 @@ typedef struct QCryptoNettleTwofish {
struct twofish_ctx key, key_xts; struct twofish_ctx key, key_xts;
} QCryptoNettleTwofish; } QCryptoNettleTwofish;
static void twofish_encrypt_native(cipher_ctx_t ctx, cipher_length_t length, static void twofish_encrypt_native(const void *ctx, size_t length,
uint8_t *dst, const uint8_t *src) uint8_t *dst, const uint8_t *src)
{ {
twofish_encrypt(ctx, length, dst, src); twofish_encrypt(ctx, length, dst, src);
} }
static void twofish_decrypt_native(cipher_ctx_t ctx, cipher_length_t length, static void twofish_decrypt_native(const void *ctx, size_t length,
uint8_t *dst, const uint8_t *src) uint8_t *dst, const uint8_t *src)
{ {
twofish_decrypt(ctx, length, dst, src); twofish_decrypt(ctx, length, dst, src);

View File

@ -26,14 +26,12 @@
#include <nettle/sha.h> #include <nettle/sha.h>
#include <nettle/ripemd160.h> #include <nettle/ripemd160.h>
typedef size_t hash_length_t;
typedef void (*qcrypto_nettle_init)(void *ctx); typedef void (*qcrypto_nettle_init)(void *ctx);
typedef void (*qcrypto_nettle_write)(void *ctx, typedef void (*qcrypto_nettle_write)(void *ctx,
hash_length_t len, size_t len,
const uint8_t *buf); const uint8_t *buf);
typedef void (*qcrypto_nettle_result)(void *ctx, typedef void (*qcrypto_nettle_result)(void *ctx,
hash_length_t len, size_t len,
uint8_t *buf); uint8_t *buf);
union qcrypto_hash_ctx { union qcrypto_hash_ctx {

View File

@ -18,18 +18,16 @@
#include "hmacpriv.h" #include "hmacpriv.h"
#include <nettle/hmac.h> #include <nettle/hmac.h>
typedef size_t hmac_length_t;
typedef void (*qcrypto_nettle_hmac_setkey)(void *ctx, typedef void (*qcrypto_nettle_hmac_setkey)(void *ctx,
hmac_length_t key_length, size_t key_length,
const uint8_t *key); const uint8_t *key);
typedef void (*qcrypto_nettle_hmac_update)(void *ctx, typedef void (*qcrypto_nettle_hmac_update)(void *ctx,
hmac_length_t length, size_t length,
const uint8_t *data); const uint8_t *data);
typedef void (*qcrypto_nettle_hmac_digest)(void *ctx, typedef void (*qcrypto_nettle_hmac_digest)(void *ctx,
hmac_length_t length, size_t length,
uint8_t *digest); uint8_t *digest);
typedef struct QCryptoHmacNettle QCryptoHmacNettle; typedef struct QCryptoHmacNettle QCryptoHmacNettle;