On 12/10/2012 07:21 PM, Jakub Hrozek wrote:
On Mon, Dec 10, 2012 at 11:57:18AM -0500, Simo Sorce wrote:
On Mon, 2012-12-10 at 16:00 +0100, Pavel Březina wrote:
https://fedorahosted.org/sssd/ticket/1680

ACK

Simo.

Pushed to master.

Pavel, can you also provide a version that applies on sssd-1-9 ?

Sure, the patch is attached.

From cc0213da5b940e3f5c6c25eaf3ce0ab3155f0834 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Pavel=20B=C5=99ezina?= <[email protected]>
Date: Tue, 11 Dec 2012 11:15:24 +0100
Subject: [PATCH] let krb5_kpasswd failover work

https://fedorahosted.org/sssd/ticket/1680

Bad service name (KERBEROS) was provided when setting port status,
thus the port status never changed
---
 src/providers/krb5/krb5_auth.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/providers/krb5/krb5_auth.c b/src/providers/krb5/krb5_auth.c
index a4bd631cb637211dac00b6ffcb4ed77144383afe..fb37ad4f6876f6fb354793908a1efe41ea47f66d 100644
--- a/src/providers/krb5/krb5_auth.c
+++ b/src/providers/krb5/krb5_auth.c
@@ -869,7 +869,7 @@ static void krb5_child_done(struct tevent_req *subreq)
         /* ..which is unreachable by now.. */
         if (res->msg_status == PAM_AUTHTOK_LOCK_BUSY) {
             be_fo_set_port_status(state->be_ctx,
-                                  state->krb5_ctx->service->name,
+                                  state->krb5_ctx->kpasswd_service->name,
                                   kr->kpasswd_srv, PORT_NOT_WORKING);
             /* ..try to resolve next kpasswd server */
             if (krb5_next_kpasswd(req) == NULL) {
@@ -878,7 +878,7 @@ static void krb5_child_done(struct tevent_req *subreq)
             return;
         } else {
             be_fo_set_port_status(state->be_ctx,
-                                  state->krb5_ctx->service->name,
+                                  state->krb5_ctx->kpasswd_service->name,
                                   kr->kpasswd_srv, PORT_WORKING);
         }
     }
@@ -978,7 +978,8 @@ static struct tevent_req *krb5_next_server(struct tevent_req *req)
         case SSS_PAM_CHAUTHTOK:
         case SSS_PAM_CHAUTHTOK_PRELIM:
             if (state->kr->kpasswd_srv) {
-                be_fo_set_port_status(state->be_ctx, state->krb5_ctx->service->name,
+                be_fo_set_port_status(state->be_ctx,
+                                      state->krb5_ctx->kpasswd_service->name,
                                       state->kr->kpasswd_srv, PORT_NOT_WORKING);
                 next_req = krb5_next_kpasswd(req);
                 break;
-- 
1.7.11.7

_______________________________________________
sssd-devel mailing list
[email protected]
https://lists.fedorahosted.org/mailman/listinfo/sssd-devel

Reply via email to