summaryrefslogtreecommitdiff
path: root/src/providers/fail_over.h
AgeCommit message (Collapse)AuthorFilesLines
2013-08-09Remove unused constantJakub Hrozek1-2/+0
2013-04-10DNS sites support - SRV lookup plugin interfacePavel Březina1-0/+9
https://fedorahosted.org/sssd/ticket/1032 Introduces two new error codes: - ERR_SRV_NOT_FOUND - ERR_SRV_LOOKUP_ERROR Since id_provider is authoritative in case of SRV plugin choise, ability to override the selected pluging during runtime is not desirable. We rely on the fact that id_provider is initialized before all other providers, thus the plugin is set correctly.
2012-12-18try primary server after retry_timeout + 1 seconds when switching to backupPavel Březina1-0/+2
https://fedorahosted.org/sssd/ticket/1679 The problem is when we are about to reset the server status, we don't get through the timeout (30 seconds) because the "switch to primary server" task is scheduled 30 seconds after fall back to a backup server. Thus the server status remains "not working" and is resetted after another 30 seconds. We need to make sure that the server status is tried after the timeout period. retry_timeout is currently hardcoded to 30, thus the change in man page.
2012-09-13FO: Check server validity before setting statusJakub Hrozek1-1/+1
The list of resolved servers is allocated on the back end context and kept in the fo_service structure. However, a single request often resolves a server and keeps a pointer until the end of a request and only then gives feedback about the server based on the request result. This presents a big race condition in case the SRV resolution is used. When there are requests coming in in parallel, it is possible that an incoming request will invalidate a server until another request that holds a pointer to the original server is able to give a feedback. This patch simply checks if a server is in the list of servers maintained by a service before reading its status. https://fedorahosted.org/sssd/ticket/1364
2012-08-15Duplicate detection in fail over did not work.Michal Zidek1-0/+7
https://fedorahosted.org/sssd/ticket/1472
2012-08-01Primary server support: basic support in failover codeJan Zeleny1-3/+4
Now there are two list of servers for each service. If currently selected server is only backup, then an event will be scheduled which tries to get connection to one of primary servers and if it succeeds, it starts using this server instead of the one which is currently connected to.
2012-03-06Only do one cycle when resolving a serverJakub Hrozek1-0/+3
https://fedorahosted.org/sssd/ticket/1214
2011-12-20Failover: Introduce a per-service timeoutJakub Hrozek1-0/+7
https://fedorahosted.org/sssd/ticket/976
2011-07-21fo_get_server_name() getter for a server nameJakub Hrozek1-0/+2
Allows to be more concise in tests and more defensive in resolve callbacks
2011-07-21Rename fo_get_server_name to fo_get_server_str_nameJakub Hrozek1-1/+1
2011-06-15Switch resolver to using resolv_hostent and honor TTLJakub Hrozek1-1/+1
2011-03-09Run callbacks if server IP changesJakub Hrozek1-0/+2
2011-01-21Rename dns_domain to discovery domain for fo_add_srv_server()Stephen Gallagher1-1/+1
2011-01-21Allow fallback to SSSD domainStephen Gallagher1-1/+2
For backwards-compatibility with older versions of the SSSD (such as 1.2.x), we need to be able to have our DNS SRV record lookup be capable of falling back to using the SSSD domain name as the DNS discovery domain. This patch modifies our DNS lookups so that they behave as follows: If dns_discovery_domain is specified, it is considered authoritative. No other discovery domains will be attempted. If dns_discovery_domain is not specified, we first attempt to look up the SRV records using the domain portion of the machine's hostname. If this returns "NOTFOUND", we will try performing an SRV record query using the SSSD domain name as the DNS discovery domain. https://fedorahosted.org/sssd/ticket/754
2010-12-01Run checks before resetting offline stateSumit Bose1-0/+1
Before setting the backend to online during a reset offline request the check_online method if the ID provider is called. If the check_online method returns that the ID provider is still not reachable the backend stays offline. Otherwise the backend is switched to online and the related callbacks are run. Additionally the check online test is called during the res_init request because a change in /etc/resolve.conf might also make a server reachable which was assumed offline before.
2010-07-09Add an interface to try next fail-over server after connection to the active ↵eindenbom1-0/+6
server was unexpectedly dropped.
2010-07-09Added an interface to query number of configured (and currently resolved ↵eindenbom1-0/+5
through SRV records) failover servers.
2010-05-07Use service discovery in backendsJakub Hrozek1-0/+2
Integrate the failover improvements with our back ends. The DNS domain used in the SRV query is always the SSSD domain name. Please note that this patch changes the default value of ldap_uri from "ldap://localhost" to "NULL" in order to use service discovery with no server set.
2010-04-30Support SRV servers in failoverJakub Hrozek1-0/+14
Adds a new failover API call fo_add_srv_server that allows the caller to specify a server that is later resolved into a list of specific servers using SRV requests. Also adds a new failover option that specifies how often should the servers resolved from SRV query considered valid until we need a refresh. The "real" servers to connect to are returned to the user as usual, using the fo_resolve_service_{send,recv} calls. Make SRV resolution work with c-ares 1.6
2010-02-22Restrict family lookupsJakub Hrozek1-3/+19
Adds a new option that tells resolver which address family to prefer or use exclusively. Fixes: #404
2010-02-18Fix licensing issues in SSSDStephen Gallagher1-0/+24
2010-02-18Rename server/ directory to src/Stephen Gallagher1-0/+108
Also update BUILD.txt