mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-04 16:23:55 -06:00
crypto: add additional query accessors for cipher instances
Adds new methods to allow querying the length of the cipher key, block size and initialization vectors. Reviewed-by: Eric Blake <eblake@redhat.com> Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
This commit is contained in:
parent
5dc42c186d
commit
dd2bf9eb95
3 changed files with 95 additions and 0 deletions
|
@ -229,6 +229,7 @@ static void test_cipher(const void *opaque)
|
|||
uint8_t *key, *iv, *ciphertext, *plaintext, *outtext;
|
||||
size_t nkey, niv, nciphertext, nplaintext;
|
||||
char *outtexthex;
|
||||
size_t ivsize, keysize, blocksize;
|
||||
|
||||
nkey = unhex_string(data->key, &key);
|
||||
niv = unhex_string(data->iv, &iv);
|
||||
|
@ -245,6 +246,15 @@ static void test_cipher(const void *opaque)
|
|||
&error_abort);
|
||||
g_assert(cipher != NULL);
|
||||
|
||||
keysize = qcrypto_cipher_get_key_len(data->alg);
|
||||
blocksize = qcrypto_cipher_get_block_len(data->alg);
|
||||
ivsize = qcrypto_cipher_get_iv_len(data->alg, data->mode);
|
||||
|
||||
g_assert_cmpint(keysize, ==, nkey);
|
||||
g_assert_cmpint(ivsize, ==, niv);
|
||||
if (niv) {
|
||||
g_assert_cmpint(blocksize, ==, niv);
|
||||
}
|
||||
|
||||
if (iv) {
|
||||
g_assert(qcrypto_cipher_setiv(cipher,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue