mirror of
https://github.com/qemu/qemu.git
synced 2024-11-24 03:13:44 +08:00
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);
|
||||
}
|
||||
|
||||
struct QCryptoCipherDriver qcrypto_cipher_afalg_driver = {
|
||||
const struct QCryptoCipherDriver qcrypto_cipher_afalg_driver = {
|
||||
.cipher_encrypt = qcrypto_afalg_cipher_encrypt,
|
||||
.cipher_decrypt = qcrypto_afalg_cipher_decrypt,
|
||||
.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_decrypt = qcrypto_builtin_cipher_decrypt,
|
||||
.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_decrypt = qcrypto_gcrypt_cipher_decrypt,
|
||||
.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_decrypt = qcrypto_nettle_cipher_decrypt,
|
||||
.cipher_setiv = qcrypto_nettle_cipher_setiv,
|
||||
|
@ -165,7 +165,7 @@ QCryptoCipher *qcrypto_cipher_new(QCryptoCipherAlgorithm alg,
|
||||
{
|
||||
QCryptoCipher *cipher;
|
||||
void *ctx = NULL;
|
||||
QCryptoCipherDriver *drv = NULL;
|
||||
const QCryptoCipherDriver *drv = NULL;
|
||||
|
||||
#ifdef CONFIG_AF_ALG
|
||||
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->mode = mode;
|
||||
cipher->opaque = ctx;
|
||||
cipher->driver = (void *)drv;
|
||||
cipher->driver = drv;
|
||||
|
||||
return cipher;
|
||||
}
|
||||
@ -199,7 +199,7 @@ int qcrypto_cipher_encrypt(QCryptoCipher *cipher,
|
||||
size_t len,
|
||||
Error **errp)
|
||||
{
|
||||
QCryptoCipherDriver *drv = cipher->driver;
|
||||
const QCryptoCipherDriver *drv = cipher->driver;
|
||||
return drv->cipher_encrypt(cipher, in, out, len, errp);
|
||||
}
|
||||
|
||||
@ -210,7 +210,7 @@ int qcrypto_cipher_decrypt(QCryptoCipher *cipher,
|
||||
size_t len,
|
||||
Error **errp)
|
||||
{
|
||||
QCryptoCipherDriver *drv = cipher->driver;
|
||||
const QCryptoCipherDriver *drv = cipher->driver;
|
||||
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,
|
||||
Error **errp)
|
||||
{
|
||||
QCryptoCipherDriver *drv = cipher->driver;
|
||||
const QCryptoCipherDriver *drv = cipher->driver;
|
||||
return drv->cipher_setiv(cipher, iv, niv, errp);
|
||||
}
|
||||
|
||||
|
||||
void qcrypto_cipher_free(QCryptoCipher *cipher)
|
||||
{
|
||||
QCryptoCipherDriver *drv;
|
||||
const QCryptoCipherDriver *drv;
|
||||
if (cipher) {
|
||||
drv = cipher->driver;
|
||||
drv->cipher_free(cipher);
|
||||
|
@ -47,7 +47,7 @@ qcrypto_afalg_cipher_ctx_new(QCryptoCipherAlgorithm alg,
|
||||
const uint8_t *key,
|
||||
size_t nkey, Error **errp);
|
||||
|
||||
extern struct QCryptoCipherDriver qcrypto_cipher_afalg_driver;
|
||||
extern const struct QCryptoCipherDriver qcrypto_cipher_afalg_driver;
|
||||
|
||||
#endif
|
||||
|
||||
|
@ -81,7 +81,7 @@ struct QCryptoCipher {
|
||||
QCryptoCipherAlgorithm alg;
|
||||
QCryptoCipherMode mode;
|
||||
void *opaque;
|
||||
void *driver;
|
||||
const QCryptoCipherDriver *driver;
|
||||
};
|
||||
|
||||
/**
|
||||
|
Loading…
Reference in New Issue
Block a user