mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-05 08:43:55 -06:00
crypto: Move cipher->driver init to qcrypto_*_cipher_ctx_new
The class vtable should be set by the class initializer. This will also allow additional subclassing, reducing the amount of indirection in the hierarchy. Signed-off-by: Richard Henderson <richard.henderson@linaro.org> Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
This commit is contained in:
parent
3eedf5cc9d
commit
da30cd77e1
6 changed files with 13 additions and 10 deletions
|
@ -22,6 +22,8 @@
|
|||
#include "crypto/desrfb.h"
|
||||
#include "crypto/xts.h"
|
||||
|
||||
static const struct QCryptoCipherDriver qcrypto_cipher_lib_driver;
|
||||
|
||||
typedef struct QCryptoCipherBuiltinAESContext QCryptoCipherBuiltinAESContext;
|
||||
struct QCryptoCipherBuiltinAESContext {
|
||||
AES_KEY enc;
|
||||
|
@ -292,6 +294,7 @@ qcrypto_cipher_init_aes(QCryptoCipherMode mode,
|
|||
ctxt->encrypt = qcrypto_cipher_encrypt_aes;
|
||||
ctxt->decrypt = qcrypto_cipher_decrypt_aes;
|
||||
|
||||
ctxt->base.driver = &qcrypto_cipher_lib_driver;
|
||||
return &ctxt->base;
|
||||
|
||||
error:
|
||||
|
@ -396,6 +399,7 @@ qcrypto_cipher_init_des_rfb(QCryptoCipherMode mode,
|
|||
ctxt->encrypt = qcrypto_cipher_encrypt_des_rfb;
|
||||
ctxt->decrypt = qcrypto_cipher_decrypt_des_rfb;
|
||||
|
||||
ctxt->base.driver = &qcrypto_cipher_lib_driver;
|
||||
return &ctxt->base;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue