]> git.ipfire.org Git - thirdparty/gnutls.git/commitdiff
vko: fix possible unitilized scalar access
authorDmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Sun, 10 Nov 2019 11:06:58 +0000 (14:06 +0300)
committerDmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Mon, 11 Nov 2019 20:51:15 +0000 (23:51 +0300)
Fix error path in _gnutls_gost_keytrans_decrypt. If
_asn1_strict_der_decode() fails, cleanup path will try to
gnutls_pk_params_release(&pub), which will access unitialized pub
variable. Fix by deleting asn1 sctructure directly.

Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
lib/vko.c

index a419390ffaf7a7ed1c77041d5b1e7fefbed0274b..f8aa80dfc71deb1c2f0ae79dab24251eecc42369 100644 (file)
--- a/lib/vko.c
+++ b/lib/vko.c
@@ -197,7 +197,9 @@ _gnutls_gost_keytrans_decrypt(gnutls_pk_params_st *priv,
        if (ret != ASN1_SUCCESS) {
                gnutls_assert();
                ret = _gnutls_asn2err(ret);
-               goto cleanup;
+               asn1_delete_structure(&kx);
+
+               return ret;
        }
 
        ret = _gnutls_get_asn_mpis(kx,