From: Greg Hudson Date: Thu, 28 Mar 2013 19:59:07 +0000 (-0400) Subject: Fix kdb_ldap_create_principal cleanup X-Git-Tag: krb5-1.12-alpha1~242 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=49f908733b5ddf491e53c7c84d0cbae263e31eae;p=thirdparty%2Fkrb5.git Fix kdb_ldap_create_principal cleanup entry must be initialized before all code which can jump to cleanup. --- diff --git a/src/plugins/kdb/ldap/ldap_util/kdb5_ldap_realm.c b/src/plugins/kdb/ldap/ldap_util/kdb5_ldap_realm.c index 1050fcd73e..7494928647 100644 --- a/src/plugins/kdb/ldap/ldap_util/kdb5_ldap_realm.c +++ b/src/plugins/kdb/ldap/ldap_util/kdb5_ldap_realm.c @@ -1344,6 +1344,8 @@ kdb_ldap_create_principal(krb5_context context, krb5_principal princ, krb5_timestamp now; krb5_actkvno_node actkvno; + memset(&entry, 0, sizeof(entry)); + if ((pblock == NULL) || (context == NULL)) { retval = EINVAL; goto cleanup; @@ -1355,8 +1357,6 @@ kdb_ldap_create_principal(krb5_context context, krb5_principal princ, goto cleanup; } - memset(&entry, 0, sizeof(entry)); - tl_data = malloc(sizeof(*tl_data)); if (tl_data == NULL) { retval = ENOMEM;