diff options
author | Pavel Březina <pbrezina@redhat.com> | 2013-03-13 15:13:46 +0100 |
---|---|---|
committer | Jakub Hrozek <jhrozek@redhat.com> | 2013-04-10 15:36:55 +0200 |
commit | 77d165f0629966db65753a3aee84a8b4971673af (patch) | |
tree | 19e9d6b94426dec048b02d56663da2a981516195 /src/providers/fail_over_srv.h | |
parent | f9961e5f82e0ef474d6492371bfdf9e74e208a99 (diff) | |
download | sssd-77d165f0629966db65753a3aee84a8b4971673af.tar.gz sssd-77d165f0629966db65753a3aee84a8b4971673af.tar.xz sssd-77d165f0629966db65753a3aee84a8b4971673af.zip |
DNS sites support - SRV DNS lookup plugin
https://fedorahosted.org/sssd/ticket/1032
This plugin mimics the current behaviour.
If discovery_domain is set it is the only domain that is tried.
If discovery_domain is not set, we try to autodetect domain first
and if that fails or SRV lookup on this domain fails, we fallback
to SSSD domain name.
Diffstat (limited to 'src/providers/fail_over_srv.h')
-rw-r--r-- | src/providers/fail_over_srv.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/src/providers/fail_over_srv.h b/src/providers/fail_over_srv.h index 0796ad5ab..4550b09de 100644 --- a/src/providers/fail_over_srv.h +++ b/src/providers/fail_over_srv.h @@ -69,4 +69,44 @@ typedef errno_t struct fo_server_info **_backup_servers, size_t *_num_backup_servers); +struct tevent_req *fo_discover_srv_send(TALLOC_CTX *mem_ctx, + struct tevent_context *ev, + struct resolv_ctx *resolv_ctx, + const char *service, + const char *protocol, + const char **discovery_domains); + +errno_t fo_discover_srv_recv(TALLOC_CTX *mem_ctx, + struct tevent_req *req, + char **_dns_domain, + struct fo_server_info **_servers, + size_t *_num_servers); + +/* Simple SRV lookup plugin */ + +struct fo_resolve_srv_dns_ctx; + +struct fo_resolve_srv_dns_ctx * +fo_resolve_srv_dns_ctx_init(TALLOC_CTX *mem_ctx, + struct resolv_ctx *resolv_ctx, + enum restrict_family family_order, + enum host_database *host_dbs, + const char *hostname, + const char *sssd_domain); + +struct tevent_req *fo_resolve_srv_dns_send(TALLOC_CTX *mem_ctx, + struct tevent_context *ev, + const char *service, + const char *protocol, + const char *discovery_domain, + void *pvt); + +errno_t fo_resolve_srv_dns_recv(TALLOC_CTX *mem_ctx, + struct tevent_req *req, + char **_dns_domain, + struct fo_server_info **_primary_servers, + size_t *_num_primary_servers, + struct fo_server_info **_backup_servers, + size_t *_num_backup_servers); + #endif /* __FAIL_OVER_SRV_H__ */ |