-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

The attached patch reverts the change I introduced earlier with my patch
c825253e74027f87b900c0b811ae019d767c0848.

The patch is a one-liner but its context is a little more complex - I
actually reached out to Martin Nagy, who wrote much of the original fail
over code to be sure.

The fail over code is not strictly in charge of resolving. Its main
function is to provide a server to connect to for a service.

It is legal, although not currently used, to have a server that has no
name (server->common == NULL). In this case, no resolving should be done
and it is assumed that the failover user, which are the SSSD back ends
in our case, would perform any resolving out of band, perhaps using the
user_data attribute of fo_server structure.

The attached patch would fix the segfault described in #692472 but not
its root cause, which appears to be an issue with the confdb.

        Jakub
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org/

iEYEARECAAYFAk2Vut0ACgkQHsardTLnvCXhEACfVTn5Cf8UNxfZVXjH8aLFDM0g
NB0AnRjyOoj1hJLoRYMgInB4tw3enw4/
=Jf9X
-----END PGP SIGNATURE-----
From d31f15757733d519370a65f30147881d8e98e3aa Mon Sep 17 00:00:00 2001
From: Jakub Hrozek <jhro...@redhat.com>
Date: Fri, 1 Apr 2011 13:33:47 +0200
Subject: [PATCH] Do not attempt to resolve nameless servers

The failover code is not strictly in charge of resolving. Its main
function is to provide a server to connect to for a service.

It is legal, although not currently used, to have a server that has no
name (server->common == NULL). In this case, no resolving should be done
and it is assumed that the failover user, which are the SSSD back ends
in our case, would perform any resolving out of band, perhaps using the
user_data attribute of fo_server structure.
---
 src/providers/fail_over.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/src/providers/fail_over.c b/src/providers/fail_over.c
index 4967e19..613efc0 100644
--- a/src/providers/fail_over.c
+++ b/src/providers/fail_over.c
@@ -312,7 +312,7 @@ get_server_status(struct fo_server *server)
     time_t timeout;
 
     if (server->common == NULL)
-        return SERVER_NAME_NOT_RESOLVED;
+        return SERVER_NAME_RESOLVED;
 
     DEBUG(7, ("Status of server '%s' is '%s'\n", SERVER_NAME(server),
               str_server_status(server->common->server_status)));
-- 
1.7.4

Attachment: 0001-Do-not-attempt-to-resolve-nameless-servers.patch.sig
Description: PGP signature

_______________________________________________
sssd-devel mailing list
sssd-devel@lists.fedorahosted.org
https://fedorahosted.org/mailman/listinfo/sssd-devel

Reply via email to