Blame 0002-library-return-error-if-no-matching-key-was-found.patch

8fc58f6
From 4987a21f4839ab7ea50e932c72df05075efb89b3 Mon Sep 17 00:00:00 2001
8fc58f6
From: Sumit Bose <sbose@redhat.com>
8fc58f6
Date: Thu, 21 Mar 2019 15:05:33 +0100
8fc58f6
Subject: [PATCH 2/2] library: return error if no matching key was found
8fc58f6
8fc58f6
To avoid a misleading debug message indicating success a proper erro
8fc58f6
code should be returned the no matching key was found when trying to
8fc58f6
copy an keytab entry for a new principal.
8fc58f6
8fc58f6
Related to https://bugzilla.redhat.com/show_bug.cgi?id=1644311
8fc58f6
---
8fc58f6
 library/adkrb5.c | 5 ++---
8fc58f6
 1 file changed, 2 insertions(+), 3 deletions(-)
8fc58f6
8fc58f6
diff --git a/library/adkrb5.c b/library/adkrb5.c
8fc58f6
index 033c181..7f77373 100644
8fc58f6
--- a/library/adkrb5.c
8fc58f6
+++ b/library/adkrb5.c
8fc58f6
@@ -298,11 +298,10 @@ _adcli_krb5_keytab_copy_entries (krb5_context k5,
8fc58f6
 
8fc58f6
 		code = _adcli_krb5_get_keyblock (k5, keytab, &entry.key,
8fc58f6
 		                                 match_enctype_and_kvno, &closure);
8fc58f6
-		if (code != 0) {
8fc58f6
-			return code;
8fc58f6
+		if (code != 0 || closure.matched == 0) {
8fc58f6
+			return code != 0 ? code : ENOKEY;
8fc58f6
 		}
8fc58f6
 
8fc58f6
-
8fc58f6
 		entry.principal = principal;
8fc58f6
 		entry.vno = kvno;
8fc58f6
 
8fc58f6
-- 
8fc58f6
2.20.1
8fc58f6