From b5a7b42a3a095c43038b665f4ee4bce69d062a10 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Love=20H=C3=B6rnquist=20=C3=85strand?= Date: Fri, 23 Apr 2004 19:43:57 +0000 Subject: [PATCH] (krb5_crypto_init): clear return pointer on failure git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@13752 ec53bebd-3082-4978-b11e-865c3cabbd6b --- lib/krb5/crypto.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lib/krb5/crypto.c b/lib/krb5/crypto.c index 16bea70ad..e30b3ff64 100644 --- a/lib/krb5/crypto.c +++ b/lib/krb5/crypto.c @@ -3677,18 +3677,21 @@ krb5_crypto_init(krb5_context context, (*crypto)->et = _find_enctype(etype); if((*crypto)->et == NULL || ((*crypto)->et->flags & F_DISABLED)) { free(*crypto); + *crypto = NULL; krb5_set_error_string (context, "encryption type %d not supported", etype); return KRB5_PROG_ETYPE_NOSUPP; } if((*crypto)->et->keytype->size != key->keyvalue.length) { free(*crypto); + *crypto = NULL; krb5_set_error_string (context, "encryption key has bad length"); return KRB5_BAD_KEYSIZE; } ret = krb5_copy_keyblock(context, key, &(*crypto)->key.key); if(ret) { free(*crypto); + *crypto = NULL; return ret; } (*crypto)->key.schedule = NULL;