From 2df7b85433bddf2dd28c6b7ed3dc94970ef40e36 Mon Sep 17 00:00:00 2001 From: Uri Simchoni Date: Wed, 23 Sep 2015 14:45:47 +0300 Subject: [PATCH] net: fix a crash with net ads keytab create Fix a crash that happens when executing "net ads keytab create" and the machine account in AD does not have setvice principal names attached to it. BUG: https://bugzilla.samba.org/show_bug.cgi?id=11528 Signed-off-by: Uri Simchoni Reviewed-by: Jeremy Allison Reviewed-by: Stefan Metzmacher (cherry picked from commit e224e622971853bddbe24df717ea5dcddef71b89) --- source3/libads/ldap.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/source3/libads/ldap.c b/source3/libads/ldap.c index 70301de16fa..6031b421e98 100644 --- a/source3/libads/ldap.c +++ b/source3/libads/ldap.c @@ -2004,6 +2004,13 @@ ADS_STATUS ads_get_service_principal_names(TALLOC_CTX *mem_ctx, res, "servicePrincipalName", num_spns); + if (*spn_array == NULL) { + DEBUG(1, ("Host account for %s does not have service principal " + "names.\n", + machine_name)); + status = ADS_ERROR(LDAP_NO_SUCH_OBJECT); + goto done; + } done: ads_msgfree(ads, res); -- 2.11.4.GIT