ldap/servers/slapd/libglobs.c | 50 ++++++++++++++++++++++++++++++++++++++++++
ldap/servers/slapd/slap.h | 8 ++++++
2 files changed, 58 insertions(+)
New commits:
commit 3148cf2957fa7774e0539c63e9fd9d3bf682a03c
Author: Mark Reynolds <mreynolds(a)redhat.com>
Date: Tue May 7 16:52:41 2013 -0400
Ticket 47355 - dse.ldif doesn't replicate update to nsslapd-sasl-mapping-fallback
Bug Description: Setting the feature on and off through ldapmodify can leave the
dse.ldif
in an inconsistent state.
Fix Description: Using a Slapi_Counter is not necessary, and it caused issues. Set
the config
type back to integer.
https://fedorahosted.org/389/ticket/47355
reviewed by: richm(Thanks!)
(cherry picked from commit ba0d57922339a1f114db236da28112280f2ec9c1)
diff --git a/ldap/servers/slapd/libglobs.c b/ldap/servers/slapd/libglobs.c
index a5c1067..537b98a 100644
--- a/ldap/servers/slapd/libglobs.c
+++ b/ldap/servers/slapd/libglobs.c
@@ -1443,6 +1443,7 @@ FrontendConfig_init () {
init_disk_logging_critical = cfg->disk_logging_critical = LDAP_OFF;
init_ndn_cache_enabled = cfg->ndn_cache_enabled = LDAP_OFF;
cfg->ndn_cache_max_size = NDN_DEFAULT_SIZE;
+ init_sasl_mapping_fallback = cfg->sasl_mapping_fallback = LDAP_OFF;
cfg->sasl_max_bufsize = SLAPD_DEFAULT_SASL_MAXBUFSIZE;
#ifdef MEMPOOL_EXPERIMENTAL
@@ -1570,6 +1571,31 @@ config_value_is_null( const char *attrname, const char *value, char
*errorbuf,
}
int
+config_set_ignore_vattrs (const char *attrname, char *value, char *errorbuf, int apply )
+{
+ slapdFrontendConfig_t *slapdFrontendConfig = getFrontendConfig();
+ int retVal = LDAP_SUCCESS;
+ int val;
+
+ retVal = config_set_onoff ( attrname, value, &val, errorbuf, apply);
+ if(retVal == LDAP_SUCCESS){
+ slapi_counter_set_value(slapdFrontendConfig->ignore_vattrs, val);
+ }
+ return retVal;
+}
+
+int
+config_set_sasl_mapping_fallback (const char *attrname, char *value, char *errorbuf, int
apply )
+{
+ slapdFrontendConfig_t *slapdFrontendConfig = getFrontendConfig();
+ int retVal = LDAP_SUCCESS;
+
+ retVal = config_set_onoff ( attrname, value,
&(slapdFrontendConfig->sasl_mapping_fallback), errorbuf, apply);
+
+ return retVal;
+}
+
+int
config_set_disk_monitoring( const char *attrname, char *value, char *errorbuf, int apply
)
{
slapdFrontendConfig_t *slapdFrontendConfig = getFrontendConfig();
@@ -4172,6 +4198,30 @@ config_get_sasl_maxbufsize()
}
int
+<<<<<<< HEAD
+=======
+config_get_ignore_vattrs()
+{
+ slapdFrontendConfig_t *slapdFrontendConfig = getFrontendConfig();
+
+ return slapi_counter_get_value(slapdFrontendConfig->ignore_vattrs);
+}
+
+int
+config_get_sasl_mapping_fallback()
+{
+ slapdFrontendConfig_t *slapdFrontendConfig = getFrontendConfig();
+ int retVal;
+
+ CFG_ONOFF_LOCK_READ(slapdFrontendConfig);
+ retVal = (int)slapdFrontendConfig->sasl_mapping_fallback;
+ CFG_ONOFF_UNLOCK_READ(slapdFrontendConfig);
+
+ return retVal;
+}
+
+int
+>>>>>>> 655bd4d... Ticket 47355 - dse.ldif doesn't replicate
update to nsslapd-sasl-mapping-fallback
config_get_disk_monitoring(){
slapdFrontendConfig_t *slapdFrontendConfig = getFrontendConfig();
int retVal;
diff --git a/ldap/servers/slapd/slap.h b/ldap/servers/slapd/slap.h
index 43a213e..c46f415 100644
--- a/ldap/servers/slapd/slap.h
+++ b/ldap/servers/slapd/slap.h
@@ -2278,6 +2278,14 @@ typedef struct _slapdFrontendConfig {
/* normalized dn cache */
int ndn_cache_enabled;
size_t ndn_cache_max_size;
+
+ slapi_onoff_t return_orig_type; /* if on, search returns original type set in attr list
*/
+
+ /* atomic settings */
+ Slapi_Counter *ignore_vattrs;
+ slapi_onoff_t sasl_mapping_fallback;
+ slapi_onoff_t unhashed_pw_switch; /* switch to on/off/nolog unhashed pw */
+ slapi_onoff_t enable_turbo_mode;
} slapdFrontendConfig_t;
/* possible values for slapdFrontendConfig_t.schemareplace */