diff options
author | Jan Zeleny <jzeleny@redhat.com> | 2012-06-06 05:11:44 -0400 |
---|---|---|
committer | Jakub Hrozek <jhrozek@redhat.com> | 2012-08-01 16:19:42 +0200 |
commit | 46118ee53dc0d25e449cd7e37e624a4c62b78ee2 (patch) | |
tree | 84cf091eb5857178d883195dc42c4133f0a56c5c | |
parent | 07b7b76d7cd494cbd26263503ba2732c21819941 (diff) | |
download | sssd-46118ee53dc0d25e449cd7e37e624a4c62b78ee2.tar.gz sssd-46118ee53dc0d25e449cd7e37e624a4c62b78ee2.tar.bz2 sssd-46118ee53dc0d25e449cd7e37e624a4c62b78ee2.zip |
Primary server support: new option in IPA provider
This patch adds support for new config option ipa_backup_server. The
description of this option's functionality is included in man page in
one of previous patches.
-rw-r--r-- | src/config/SSSDConfig/__init__.py.in | 1 | ||||
-rw-r--r-- | src/config/etc/sssd.api.d/sssd-ipa.conf | 1 | ||||
-rw-r--r-- | src/man/sssd-ipa.5.xml | 2 | ||||
-rw-r--r-- | src/providers/ipa/ipa_common.h | 1 | ||||
-rw-r--r-- | src/providers/ipa/ipa_init.c | 8 | ||||
-rw-r--r-- | src/providers/ipa/ipa_opts.h | 1 |
6 files changed, 9 insertions, 5 deletions
diff --git a/src/config/SSSDConfig/__init__.py.in b/src/config/SSSDConfig/__init__.py.in index c6ccbff0..6605e082 100644 --- a/src/config/SSSDConfig/__init__.py.in +++ b/src/config/SSSDConfig/__init__.py.in @@ -126,6 +126,7 @@ option_strings = { # [provider/ipa] 'ipa_domain' : _('IPA domain'), 'ipa_server' : _('IPA server address'), + 'ipa_backup_server' : _('Address of backup IPA server'), 'ipa_hostname' : _('IPA client hostname'), 'ipa_dyndns_update' : _("Whether to automatically update the client's DNS entry in FreeIPA"), 'ipa_dyndns_iface' : _("The interface whose IP should be used for dynamic DNS updates"), diff --git a/src/config/etc/sssd.api.d/sssd-ipa.conf b/src/config/etc/sssd.api.d/sssd-ipa.conf index cf16ea6e..7a2a70db 100644 --- a/src/config/etc/sssd.api.d/sssd-ipa.conf +++ b/src/config/etc/sssd.api.d/sssd-ipa.conf @@ -1,6 +1,7 @@ [provider/ipa] ipa_domain = str, None, false ipa_server = str, None, false +ipa_backup_server = str, None, false ipa_hostname = str, None, false ipa_dyndns_update = bool, None, false ipa_dyndns_iface = str, None, false diff --git a/src/man/sssd-ipa.5.xml b/src/man/sssd-ipa.5.xml index f31001cb..2e7da134 100644 --- a/src/man/sssd-ipa.5.xml +++ b/src/man/sssd-ipa.5.xml @@ -80,7 +80,7 @@ </varlistentry> <varlistentry> - <term>ipa_server (string)</term> + <term>ipa_server, ipa_backup_server (string)</term> <listitem> <para> The comma-separated list of IP addresses or hostnames of the diff --git a/src/providers/ipa/ipa_common.h b/src/providers/ipa/ipa_common.h index b0944595..01e14032 100644 --- a/src/providers/ipa/ipa_common.h +++ b/src/providers/ipa/ipa_common.h @@ -35,6 +35,7 @@ struct ipa_service { enum ipa_basic_opt { IPA_DOMAIN = 0, IPA_SERVER, + IPA_BACKUP_SERVER, IPA_HOSTNAME, IPA_DYNDNS_UPDATE, IPA_DYNDNS_IFACE, diff --git a/src/providers/ipa/ipa_init.c b/src/providers/ipa/ipa_init.c index 65c77664..d3d865e0 100644 --- a/src/providers/ipa/ipa_init.c +++ b/src/providers/ipa/ipa_init.c @@ -84,6 +84,7 @@ struct bet_ops ipa_subdomains_ops = { int common_ipa_init(struct be_ctx *bectx) { const char *ipa_servers; + const char *ipa_backup_servers; int ret; ret = ipa_get_options(bectx, bectx->cdb, @@ -94,11 +95,10 @@ int common_ipa_init(struct be_ctx *bectx) } ipa_servers = dp_opt_get_string(ipa_options->basic, IPA_SERVER); - if (!ipa_servers) { - DEBUG(1, ("Missing ipa_server option - using service discovery!\n")); - } + ipa_backup_servers = dp_opt_get_string(ipa_options->basic, IPA_BACKUP_SERVER); - ret = ipa_service_init(ipa_options, bectx, ipa_servers, NULL, ipa_options, + ret = ipa_service_init(ipa_options, bectx, ipa_servers, + ipa_backup_servers, ipa_options, &ipa_options->service); if (ret != EOK) { DEBUG(0, ("Failed to init IPA failover service!\n")); diff --git a/src/providers/ipa/ipa_opts.h b/src/providers/ipa/ipa_opts.h index bf1b7a33..0f66d2f6 100644 --- a/src/providers/ipa/ipa_opts.h +++ b/src/providers/ipa/ipa_opts.h @@ -32,6 +32,7 @@ struct dp_option ipa_basic_opts[] = { { "ipa_domain", DP_OPT_STRING, NULL_STRING, NULL_STRING }, { "ipa_server", DP_OPT_STRING, NULL_STRING, NULL_STRING }, + { "ipa_backup_server", DP_OPT_STRING, NULL_STRING, NULL_STRING }, { "ipa_hostname", DP_OPT_STRING, NULL_STRING, NULL_STRING }, { "ipa_dyndns_update", DP_OPT_BOOL, BOOL_FALSE, BOOL_FALSE }, { "ipa_dyndns_iface", DP_OPT_STRING, NULL_STRING, NULL_STRING}, |