Blob Blame History Raw
From 4065b979071b6e34b440f1db24d66d8691792bee Mon Sep 17 00:00:00 2001
From: Alexander Bokovoy <abokovoy@redhat.com>
Date: Thu, 3 Sep 2015 18:24:26 +0300
Subject: [PATCH] client referral: return correct client principal in case of a
 wrong realm

prepare_error_as_req() gets protocol error code but compares it with
table code and misses to add proper client principal as returned by the
DAL driver.

Use proper error code constant.
---
 src/kdc/do_as_req.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/kdc/do_as_req.c b/src/kdc/do_as_req.c
index 3a3ce8b..5440949 100644
--- a/src/kdc/do_as_req.c
+++ b/src/kdc/do_as_req.c
@@ -862,7 +862,7 @@ prepare_error_as(struct kdc_request_state *rstate, krb5_kdc_req *request,
         return retval;
     errpkt.error = error;
     errpkt.server = request->server;
-    errpkt.client = (error == KRB5KDC_ERR_WRONG_REALM) ? canon_client :
+    errpkt.client = (error == KDC_ERR_WRONG_REALM) ? canon_client :
         request->client;
     errpkt.text = string2data((char *)status);
 
-- 
2.4.3