krb5_wrap: Fix CID 1034833 Resource leak
authorVolker Lendecke <vl@samba.org>
Fri, 30 Mar 2018 14:23:07 +0000 (09:23 -0500)
committerJeremy Allison <jra@samba.org>
Tue, 3 Apr 2018 22:44:23 +0000 (00:44 +0200)
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
lib/krb5_wrap/keytab_util.c

index f9a8679290cf221d6ebde2a1a651df7ad73fb460..fd8308cedfe4141119eabebebce59884f5d254bc 100644 (file)
@@ -179,12 +179,14 @@ krb5_error_code kt_copy_one_principal(krb5_context context,
 
     ret = krb5_kt_resolve (context, from, &src_keytab);
     if (ret) {
+       krb5_free_principal(context, princ);
        krb5_set_error_message(context, ret, "resolving src keytab `%s'", from);
        return ret;
     }
 
     ret = krb5_kt_resolve (context, to, &dst_keytab);
     if (ret) {
+       krb5_free_principal(context, princ);
        krb5_kt_close (context, src_keytab);
        krb5_set_error_message(context, ret, "resolving dst keytab `%s'", to);
        return ret;
@@ -223,6 +225,7 @@ krb5_error_code kt_copy_one_principal(krb5_context context,
        }
     }
 
+    krb5_free_principal(context, princ);
     krb5_kt_close (context, src_keytab);
     krb5_kt_close (context, dst_keytab);
     return ret;