From: Stefan Metzmacher Date: Fri, 19 May 2017 15:08:24 +0000 (+0200) Subject: s3:libads: make use of kerberos_secrets_fetch_salt_princ() in ads_keytab_add_entry() X-Git-Tag: tdb-1.3.14~124 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b0928a2687a9ffe92ebdce7b5252781d62e7e02d;p=thirdparty%2Fsamba.git s3:libads: make use of kerberos_secrets_fetch_salt_princ() in ads_keytab_add_entry() BUG: https://bugzilla.samba.org/show_bug.cgi?id=12782 Signed-off-by: Stefan Metzmacher Reviewed-by: Andreas Schneider --- diff --git a/source3/libads/kerberos_keytab.c b/source3/libads/kerberos_keytab.c index 96df10fcf65..ff12ec04af6 100644 --- a/source3/libads/kerberos_keytab.c +++ b/source3/libads/kerberos_keytab.c @@ -237,10 +237,14 @@ int ads_keytab_add_entry(ADS_STRUCT *ads, const char *srvPrinc) goto out; } + salt_princ_s = kerberos_secrets_fetch_salt_princ(); + if (salt_princ_s == NULL) { + DBG_WARNING("kerberos_secrets_fetch_salt_princ() failed\n"); + ret = -1; + goto out; + } + for (i = 0; enctypes[i]; i++) { - salt_princ_s = kerberos_fetch_salt_princ_for_host_princ(context, - princ_s, - enctypes[i]); /* add the fqdn principal to the keytab */ ret = smb_krb5_kt_add_entry(context, @@ -254,7 +258,6 @@ int ads_keytab_add_entry(ADS_STRUCT *ads, const char *srvPrinc) false); if (ret) { DEBUG(1, (__location__ ": Failed to add entry to keytab\n")); - SAFE_FREE(salt_princ_s); goto out; } @@ -272,14 +275,13 @@ int ads_keytab_add_entry(ADS_STRUCT *ads, const char *srvPrinc) if (ret) { DEBUG(1, (__location__ ": Failed to add short entry to keytab\n")); - SAFE_FREE(salt_princ_s); goto out; } } - SAFE_FREE(salt_princ_s); } out: + SAFE_FREE(salt_princ_s); TALLOC_FREE(tmpctx); if (keytab) {