Răsfoiți Sursa

Ticket 511 - Revision - allow turning off vattr lookup in search entry return

Bug Description:  A Slapi_Counter was being used to store the config setting.  This
                  is no longer necessary, and it can cause issues with config value
                  state.

https://fedorahosted.org/389/ticket/511

Reviewed by: richm(Thanks!)
Mark Reynolds 12 ani în urmă
părinte
comite
b3d2ee00d4
2 a modificat fișierele cu 6 adăugiri și 11 ștergeri
  1. 5 8
      ldap/servers/slapd/libglobs.c
  2. 1 3
      ldap/servers/slapd/slap.h

+ 5 - 8
ldap/servers/slapd/libglobs.c

@@ -1036,7 +1036,7 @@ static struct config_get_and_set {
 	{CONFIG_IGNORE_VATTRS, config_set_ignore_vattrs,
 		NULL, 0,
 		(void**)&global_slapdFrontendConfig.ignore_vattrs,
-		CONFIG_STRING, (ConfigGetFunc)config_get_ignore_vattrs, DEFAULT_ALLOWED_TO_DELETE_ATTRS},
+		CONFIG_ON_OFF, (ConfigGetFunc)config_get_ignore_vattrs, DEFAULT_ALLOWED_TO_DELETE_ATTRS},
 	{CONFIG_UNHASHED_PW_SWITCH_ATTRIBUTE, config_set_unhashed_pw_switch,
 		NULL, 0,
 		(void**)&global_slapdFrontendConfig.unhashed_pw_switch,
@@ -1497,8 +1497,8 @@ 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;
-  cfg->ignore_vattrs = slapi_counter_new();
   init_sasl_mapping_fallback = cfg->sasl_mapping_fallback = LDAP_OFF;
+  cfg->ignore_vattrs = LDAP_OFF;
   cfg->sasl_max_bufsize = SLAPD_DEFAULT_SASL_MAXBUFSIZE;
   cfg->unhashed_pw_switch = SLAPD_UNHASHED_PW_ON;
   init_return_orig_type = cfg->return_orig_type = LDAP_OFF;
@@ -1635,12 +1635,9 @@ config_set_ignore_vattrs (const char *attrname, char *value, char *errorbuf, int
 {
     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);
-    }
+    retVal = config_set_onoff ( attrname, value, &(slapdFrontendConfig->ignore_vattrs), errorbuf, apply);
+
     return retVal;
 }
 
@@ -4333,7 +4330,7 @@ config_get_ignore_vattrs()
 {
     slapdFrontendConfig_t *slapdFrontendConfig = getFrontendConfig();
 
-    return slapi_counter_get_value(slapdFrontendConfig->ignore_vattrs);
+    return (int)slapdFrontendConfig->ignore_vattrs;
 }
 
 int

+ 1 - 3
ldap/servers/slapd/slap.h

@@ -2328,10 +2328,8 @@ typedef struct _slapdFrontendConfig {
   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 ignore_vattrs;
   slapi_onoff_t unhashed_pw_switch;	/* switch to on/off/nolog unhashed pw */
   slapi_onoff_t enable_turbo_mode;
   slapi_int_t connection_buffer; /* values are CONNECTION_BUFFER_* below */