mirror of https://gitlab.com/qemu-project/qemu
crypto: Use the correct const type for driver
This allows the in memory structures to be read-only. Signed-off-by: Richard Henderson <richard.henderson@linaro.org> Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
This commit is contained in:
parent
954721ffa8
commit
7b5dbfb777
|
@ -218,7 +218,7 @@ static void qcrypto_afalg_comm_ctx_free(QCryptoCipher *cipher)
|
||||||
qcrypto_afalg_comm_free(cipher->opaque);
|
qcrypto_afalg_comm_free(cipher->opaque);
|
||||||
}
|
}
|
||||||
|
|
||||||
struct QCryptoCipherDriver qcrypto_cipher_afalg_driver = {
|
const struct QCryptoCipherDriver qcrypto_cipher_afalg_driver = {
|
||||||
.cipher_encrypt = qcrypto_afalg_cipher_encrypt,
|
.cipher_encrypt = qcrypto_afalg_cipher_encrypt,
|
||||||
.cipher_decrypt = qcrypto_afalg_cipher_decrypt,
|
.cipher_decrypt = qcrypto_afalg_cipher_decrypt,
|
||||||
.cipher_setiv = qcrypto_afalg_cipher_setiv,
|
.cipher_setiv = qcrypto_afalg_cipher_setiv,
|
||||||
|
|
|
@ -522,7 +522,7 @@ qcrypto_builtin_cipher_setiv(QCryptoCipher *cipher,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static struct QCryptoCipherDriver qcrypto_cipher_lib_driver = {
|
static const struct QCryptoCipherDriver qcrypto_cipher_lib_driver = {
|
||||||
.cipher_encrypt = qcrypto_builtin_cipher_encrypt,
|
.cipher_encrypt = qcrypto_builtin_cipher_encrypt,
|
||||||
.cipher_decrypt = qcrypto_builtin_cipher_decrypt,
|
.cipher_decrypt = qcrypto_builtin_cipher_decrypt,
|
||||||
.cipher_setiv = qcrypto_builtin_cipher_setiv,
|
.cipher_setiv = qcrypto_builtin_cipher_setiv,
|
||||||
|
|
|
@ -413,7 +413,7 @@ qcrypto_gcrypt_cipher_setiv(QCryptoCipher *cipher,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static struct QCryptoCipherDriver qcrypto_cipher_lib_driver = {
|
static const struct QCryptoCipherDriver qcrypto_cipher_lib_driver = {
|
||||||
.cipher_encrypt = qcrypto_gcrypt_cipher_encrypt,
|
.cipher_encrypt = qcrypto_gcrypt_cipher_encrypt,
|
||||||
.cipher_decrypt = qcrypto_gcrypt_cipher_decrypt,
|
.cipher_decrypt = qcrypto_gcrypt_cipher_decrypt,
|
||||||
.cipher_setiv = qcrypto_gcrypt_cipher_setiv,
|
.cipher_setiv = qcrypto_gcrypt_cipher_setiv,
|
||||||
|
|
|
@ -724,7 +724,7 @@ qcrypto_nettle_cipher_setiv(QCryptoCipher *cipher,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static struct QCryptoCipherDriver qcrypto_cipher_lib_driver = {
|
static const struct QCryptoCipherDriver qcrypto_cipher_lib_driver = {
|
||||||
.cipher_encrypt = qcrypto_nettle_cipher_encrypt,
|
.cipher_encrypt = qcrypto_nettle_cipher_encrypt,
|
||||||
.cipher_decrypt = qcrypto_nettle_cipher_decrypt,
|
.cipher_decrypt = qcrypto_nettle_cipher_decrypt,
|
||||||
.cipher_setiv = qcrypto_nettle_cipher_setiv,
|
.cipher_setiv = qcrypto_nettle_cipher_setiv,
|
||||||
|
|
|
@ -165,7 +165,7 @@ QCryptoCipher *qcrypto_cipher_new(QCryptoCipherAlgorithm alg,
|
||||||
{
|
{
|
||||||
QCryptoCipher *cipher;
|
QCryptoCipher *cipher;
|
||||||
void *ctx = NULL;
|
void *ctx = NULL;
|
||||||
QCryptoCipherDriver *drv = NULL;
|
const QCryptoCipherDriver *drv = NULL;
|
||||||
|
|
||||||
#ifdef CONFIG_AF_ALG
|
#ifdef CONFIG_AF_ALG
|
||||||
ctx = qcrypto_afalg_cipher_ctx_new(alg, mode, key, nkey, NULL);
|
ctx = qcrypto_afalg_cipher_ctx_new(alg, mode, key, nkey, NULL);
|
||||||
|
@ -187,7 +187,7 @@ QCryptoCipher *qcrypto_cipher_new(QCryptoCipherAlgorithm alg,
|
||||||
cipher->alg = alg;
|
cipher->alg = alg;
|
||||||
cipher->mode = mode;
|
cipher->mode = mode;
|
||||||
cipher->opaque = ctx;
|
cipher->opaque = ctx;
|
||||||
cipher->driver = (void *)drv;
|
cipher->driver = drv;
|
||||||
|
|
||||||
return cipher;
|
return cipher;
|
||||||
}
|
}
|
||||||
|
@ -199,7 +199,7 @@ int qcrypto_cipher_encrypt(QCryptoCipher *cipher,
|
||||||
size_t len,
|
size_t len,
|
||||||
Error **errp)
|
Error **errp)
|
||||||
{
|
{
|
||||||
QCryptoCipherDriver *drv = cipher->driver;
|
const QCryptoCipherDriver *drv = cipher->driver;
|
||||||
return drv->cipher_encrypt(cipher, in, out, len, errp);
|
return drv->cipher_encrypt(cipher, in, out, len, errp);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -210,7 +210,7 @@ int qcrypto_cipher_decrypt(QCryptoCipher *cipher,
|
||||||
size_t len,
|
size_t len,
|
||||||
Error **errp)
|
Error **errp)
|
||||||
{
|
{
|
||||||
QCryptoCipherDriver *drv = cipher->driver;
|
const QCryptoCipherDriver *drv = cipher->driver;
|
||||||
return drv->cipher_decrypt(cipher, in, out, len, errp);
|
return drv->cipher_decrypt(cipher, in, out, len, errp);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -219,14 +219,14 @@ int qcrypto_cipher_setiv(QCryptoCipher *cipher,
|
||||||
const uint8_t *iv, size_t niv,
|
const uint8_t *iv, size_t niv,
|
||||||
Error **errp)
|
Error **errp)
|
||||||
{
|
{
|
||||||
QCryptoCipherDriver *drv = cipher->driver;
|
const QCryptoCipherDriver *drv = cipher->driver;
|
||||||
return drv->cipher_setiv(cipher, iv, niv, errp);
|
return drv->cipher_setiv(cipher, iv, niv, errp);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void qcrypto_cipher_free(QCryptoCipher *cipher)
|
void qcrypto_cipher_free(QCryptoCipher *cipher)
|
||||||
{
|
{
|
||||||
QCryptoCipherDriver *drv;
|
const QCryptoCipherDriver *drv;
|
||||||
if (cipher) {
|
if (cipher) {
|
||||||
drv = cipher->driver;
|
drv = cipher->driver;
|
||||||
drv->cipher_free(cipher);
|
drv->cipher_free(cipher);
|
||||||
|
|
|
@ -47,7 +47,7 @@ qcrypto_afalg_cipher_ctx_new(QCryptoCipherAlgorithm alg,
|
||||||
const uint8_t *key,
|
const uint8_t *key,
|
||||||
size_t nkey, Error **errp);
|
size_t nkey, Error **errp);
|
||||||
|
|
||||||
extern struct QCryptoCipherDriver qcrypto_cipher_afalg_driver;
|
extern const struct QCryptoCipherDriver qcrypto_cipher_afalg_driver;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -81,7 +81,7 @@ struct QCryptoCipher {
|
||||||
QCryptoCipherAlgorithm alg;
|
QCryptoCipherAlgorithm alg;
|
||||||
QCryptoCipherMode mode;
|
QCryptoCipherMode mode;
|
||||||
void *opaque;
|
void *opaque;
|
||||||
void *driver;
|
const QCryptoCipherDriver *driver;
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Reference in New Issue