[PATCH 02/11] virCryptoEncryptDataAESgnutls: Properly initialize data structures

Peter Krempa pkrempa at redhat.com
Fri Dec 9 16:28:54 UTC 2022


The initialization vector is not optional thus we also don't need to
check whether the caller passed it in. Additionally we can use c99
initializers for the gnutls_datum_t structs.

Signed-off-by: Peter Krempa <pkrempa at redhat.com>
---
 src/util/vircrypto.c | 11 ++---------
 1 file changed, 2 insertions(+), 9 deletions(-)

diff --git a/src/util/vircrypto.c b/src/util/vircrypto.c
index 1bddb333dc..b28d3fc23d 100644
--- a/src/util/vircrypto.c
+++ b/src/util/vircrypto.c
@@ -125,8 +125,8 @@ virCryptoEncryptDataAESgnutls(gnutls_cipher_algorithm_t gnutls_enc_alg,
     int rc;
     size_t i;
     gnutls_cipher_hd_t handle = NULL;
-    gnutls_datum_t enc_key;
-    gnutls_datum_t iv_buf;
+    gnutls_datum_t enc_key = { .data = enckey, .size = enckeylen };
+    gnutls_datum_t iv_buf = { .data = iv, .size = ivlen };
     uint8_t *ciphertext;
     size_t ciphertextlen;

@@ -146,13 +146,6 @@ virCryptoEncryptDataAESgnutls(gnutls_cipher_algorithm_t gnutls_enc_alg,
     for (i = datalen; i < ciphertextlen; i++)
         ciphertext[i] = ciphertextlen - datalen;

-    /* Initialize the gnutls cipher */
-    enc_key.size = enckeylen;
-    enc_key.data = enckey;
-    if (iv) {
-        iv_buf.size = ivlen;
-        iv_buf.data = iv;
-    }
     if ((rc = gnutls_cipher_init(&handle, gnutls_enc_alg,
                                  &enc_key, &iv_buf)) < 0) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-- 
2.38.1



More information about the libvir-list mailing list