diff options
-rw-r--r-- | src/config/SSSDConfig/__init__.py.in | 1 | ||||
-rw-r--r-- | src/config/etc/sssd.api.d/sssd-ad.conf | 1 | ||||
-rw-r--r-- | src/man/sssd-ad.5.xml | 2 | ||||
-rw-r--r-- | src/providers/ad/ad_common.h | 1 | ||||
-rw-r--r-- | src/providers/ad/ad_init.c | 4 | ||||
-rw-r--r-- | src/providers/ad/ad_opts.h | 1 |
6 files changed, 8 insertions, 2 deletions
diff --git a/src/config/SSSDConfig/__init__.py.in b/src/config/SSSDConfig/__init__.py.in index 6605e082..32613543 100644 --- a/src/config/SSSDConfig/__init__.py.in +++ b/src/config/SSSDConfig/__init__.py.in @@ -141,6 +141,7 @@ option_strings = { # [provider/ad] 'ad_domain' : _('Active Directory domain'), 'ad_server' : _('Active Directory server address'), + 'ad_backup_server' : _('Active Directory backup server address'), 'ad_hostname' : _('Active Directory client hostname'), # [provider/krb5] diff --git a/src/config/etc/sssd.api.d/sssd-ad.conf b/src/config/etc/sssd.api.d/sssd-ad.conf index 763ea0d4..0154e6aa 100644 --- a/src/config/etc/sssd.api.d/sssd-ad.conf +++ b/src/config/etc/sssd.api.d/sssd-ad.conf @@ -1,6 +1,7 @@ [provider/ad] ad_domain = str, None, false ad_server = str, None, false +ad_backup_server = str, None, false ad_hostname = str, None, false ldap_uri = str, None, false ldap_backup_uri = str, None, false diff --git a/src/man/sssd-ad.5.xml b/src/man/sssd-ad.5.xml index f9ef0f3d..fa4b8e3a 100644 --- a/src/man/sssd-ad.5.xml +++ b/src/man/sssd-ad.5.xml @@ -96,7 +96,7 @@ ldap_id_mapping = False </varlistentry> <varlistentry> - <term>ad_server (string)</term> + <term>ad_server, ad_backup_server (string)</term> <listitem> <para> The comma-separated list of IP addresses or diff --git a/src/providers/ad/ad_common.h b/src/providers/ad/ad_common.h index f2ed680d..320bf1c9 100644 --- a/src/providers/ad/ad_common.h +++ b/src/providers/ad/ad_common.h @@ -33,6 +33,7 @@ struct ad_options; enum ad_basic_opt { AD_DOMAIN = 0, AD_SERVER, + AD_BACKUP_SERVER, AD_HOSTNAME, AD_KEYTAB, AD_KRB5_REALM, diff --git a/src/providers/ad/ad_init.c b/src/providers/ad/ad_init.c index 0c0a8ef6..d0831252 100644 --- a/src/providers/ad/ad_init.c +++ b/src/providers/ad/ad_init.c @@ -67,6 +67,7 @@ common_ad_init(struct be_ctx *bectx) { errno_t ret; char *ad_servers = NULL; + char *ad_backup_servers = NULL; /* Get AD-specific options */ ret = ad_get_common_options(bectx, bectx->cdb, @@ -81,9 +82,10 @@ common_ad_init(struct be_ctx *bectx) } ad_servers = dp_opt_get_string(ad_options->basic, AD_SERVER); + ad_backup_servers = dp_opt_get_string(ad_options->basic, AD_BACKUP_SERVER); /* Set up the failover service */ - ret = ad_failover_init(ad_options, bectx, ad_servers, NULL, ad_options, + ret = ad_failover_init(ad_options, bectx, ad_servers, ad_backup_servers, ad_options, &ad_options->service); if (ret != EOK) { DEBUG(SSSDBG_FATAL_FAILURE, diff --git a/src/providers/ad/ad_opts.h b/src/providers/ad/ad_opts.h index 458e7ea4..eba5a099 100644 --- a/src/providers/ad/ad_opts.h +++ b/src/providers/ad/ad_opts.h @@ -30,6 +30,7 @@ struct dp_option ad_basic_opts[] = { { "ad_domain", DP_OPT_STRING, NULL_STRING, NULL_STRING }, { "ad_server", DP_OPT_STRING, NULL_STRING, NULL_STRING }, + { "ad_backup_server", DP_OPT_STRING, NULL_STRING, NULL_STRING }, { "ad_hostname", DP_OPT_STRING, NULL_STRING, NULL_STRING }, { "krb5_keytab", DP_OPT_STRING, NULL_STRING, NULL_STRING }, { "krb5_realm", DP_OPT_STRING, NULL_STRING, NULL_STRING}, |