]> xenbits.xensource.com Git - libvirt.git/commitdiff
virCryptoEncryptDataAESgnutls: Use virSecureErase instead of VIR_DISPOSE_N
authorPeter Krempa <pkrempa@redhat.com>
Mon, 1 Feb 2021 13:13:53 +0000 (14:13 +0100)
committerPeter Krempa <pkrempa@redhat.com>
Wed, 3 Feb 2021 12:07:13 +0000 (13:07 +0100)
Clear out the value using virSecureErase and free it with g_free so
that VIR_DISPOSE_N can be phased out.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
src/util/vircrypto.c

index c4874550afd93da6eaf63ec6c9b277b766d8e434..d2a42d83e254370c3e3c92a1de8927968e1515e3 100644 (file)
@@ -25,6 +25,7 @@
 #include "virerror.h"
 #include "viralloc.h"
 #include "virrandom.h"
+#include "virsecureerase.h"
 
 #include <gnutls/gnutls.h>
 #include <gnutls/crypto.h>
@@ -206,7 +207,8 @@ virCryptoEncryptDataAESgnutls(gnutls_cipher_algorithm_t gnutls_enc_alg,
     return 0;
 
  error:
-    VIR_DISPOSE_N(ciphertext, ciphertextlen);
+    virSecureErase(ciphertext, ciphertextlen);
+    g_free(ciphertext);
     memset(&enc_key, 0, sizeof(gnutls_datum_t));
     memset(&iv_buf, 0, sizeof(gnutls_datum_t));
     return -1;