Branch '389-ds-base-1.3.0' - ldap/servers
by Mark Reynolds
ldap/servers/slapd/ldaputil.c | 1 +
1 file changed, 1 insertion(+)
New commits:
commit 3f75400cbb1dae7dcb03966e1e4fa3c1a94ffcf8
Author: Mark Reynolds <mreynolds(a)redhat.com>
Date: Thu Jul 18 15:50:36 2013 -0400
Ticket 47421 - memory leaks in set_krb5_creds
Bug Description: Valgrind shows memory leaks in set_krb5_creds()
Fix description: krb5_unparse_name() allocates/returns the principle name.
But we can call this function twice without freeing the first
returned value.
https://fedorahosted.org/389/ticket/47421
Reviewed by: richm(Thanks!)
(cherry picked from commit db124a2711576de2dd0009528d60b2860e815210)
diff --git a/ldap/servers/slapd/ldaputil.c b/ldap/servers/slapd/ldaputil.c
index 1c67e51..edef006 100644
--- a/ldap/servers/slapd/ldaputil.c
+++ b/ldap/servers/slapd/ldaputil.c
@@ -1935,6 +1935,7 @@ set_krb5_creds(
}
}
+ slapi_ch_free_string(&princ_name);
if ((rc = krb5_unparse_name(ctx, princ, &princ_name))) {
slapi_log_error(SLAPI_LOG_FATAL, logname,
"Unable to get name of principal: "
10 years, 9 months
ldap/servers
by Noriko Hosoi
ldap/servers/plugins/acl/aclparse.c | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
New commits:
commit 6041c77a179936f64598ed1039274aa05eebea1e
Author: Anupam Jain <anjain(a)localhost.localdomain>
Date: Tue Jul 23 13:20:13 2013 -0700
Ticket #617 - Possible to add invalid ACI value
Fix description: The fix enables the syntax check for ACI
even when '(' is not present
https://fedorahosted.org/389/ticket/617
Reviewed by nhosoi.
diff --git a/ldap/servers/plugins/acl/aclparse.c b/ldap/servers/plugins/acl/aclparse.c
index bf02764..a8a38a1 100644
--- a/ldap/servers/plugins/acl/aclparse.c
+++ b/ldap/servers/plugins/acl/aclparse.c
@@ -97,8 +97,8 @@ acl_parse(char * str, aci_t *aci_item, char **errbuf)
{
int rv=0;
- char *next;
- char *save;
+ char *next=NULL;
+ char *save=NULL;
while(*str) {
__acl_strip_leading_space( &str );
@@ -108,9 +108,12 @@ acl_parse(char * str, aci_t *aci_item, char **errbuf)
if ((next = slapi_find_matching_paren(str)) == NULL) {
return(ACL_SYNTAX_ERR);
}
- } else {
+ } else if (!next) {
+ /* the statement does not start with a parenthesis */
+ return(ACL_SYNTAX_ERR);
+ } else {
/* then we have done all the processing */
- return 0;
+ return 0;
}
LDAP_UTF8INC(str); /* skip the "(" */
save = next;
10 years, 9 months
Branch '389-ds-base-1.2.11' - ldap/servers
by Mark Reynolds
ldap/servers/slapd/daemon.c | 11 +++--------
1 file changed, 3 insertions(+), 8 deletions(-)
New commits:
commit 0ac4187eb5e1d4551a955196e649aca47aa3ea1a
Author: Mark Reynolds <mreynolds(a)redhat.com>
Date: Mon Jul 22 15:36:49 2013 -0400
Ticket 47441 - Disk Monitoring not checking filesystem with logs
Bug Description: If logging is not set to critical, then the log directories
are not checked for available diskspace.
Fix Description: Remove the "logging_critical" check, and always include the
log directories.
https://fedorahosted.org/389/ticket/47441
Reviewed by: richm(Thanks!)
diff --git a/ldap/servers/slapd/daemon.c b/ldap/servers/slapd/daemon.c
index 6d8a7af..e9b300a 100644
--- a/ldap/servers/slapd/daemon.c
+++ b/ldap/servers/slapd/daemon.c
@@ -600,14 +600,6 @@ disk_mon_get_dirs(char ***list, int logs_critical){
char *cookie = NULL;
char *dir = NULL;
- if(logs_critical){
- slapi_rwlock_rdlock(config->cfg_rwlock);
- disk_mon_add_dir(list, config->accesslog);
- disk_mon_add_dir(list, config->errorlog);
- disk_mon_add_dir(list, config->auditlog);
- slapi_rwlock_unlock(config->cfg_rwlock);
- }
-
/* Add /var just to be safe */
#ifdef LOCALSTATEDIR
disk_mon_add_dir(list, LOCALSTATEDIR);
@@ -618,6 +610,9 @@ disk_mon_get_dirs(char ***list, int logs_critical){
/* config and backend directories */
slapi_rwlock_rdlock(config->cfg_rwlock);
disk_mon_add_dir(list, config->configdir);
+ disk_mon_add_dir(list, config->accesslog);
+ disk_mon_add_dir(list, config->errorlog);
+ disk_mon_add_dir(list, config->auditlog);
slapi_rwlock_unlock(config->cfg_rwlock);
be = slapi_get_first_backend (&cookie);
10 years, 9 months
Branch '389-ds-base-1.3.0' - ldap/servers
by Mark Reynolds
ldap/servers/slapd/daemon.c | 11 +++--------
1 file changed, 3 insertions(+), 8 deletions(-)
New commits:
commit 1cca5bf682c9c08f05581f0424610a713c101629
Author: Mark Reynolds <mreynolds(a)redhat.com>
Date: Mon Jul 22 15:36:49 2013 -0400
Ticket 47441 - Disk Monitoring not checking filesystem with logs
Bug Description: If logging is not set to critical, then the log directories
are not checked for available diskspace.
Fix Description: Remove the "logging_critical" check, and always include the
log directories.
https://fedorahosted.org/389/ticket/47441
Reviewed by: richm(Thanks!)
(cherry picked from commit c0887894fc2c13524d6dfd1cd56d9d54924d03a0)
diff --git a/ldap/servers/slapd/daemon.c b/ldap/servers/slapd/daemon.c
index dec830d..b4b23f2 100644
--- a/ldap/servers/slapd/daemon.c
+++ b/ldap/servers/slapd/daemon.c
@@ -602,14 +602,6 @@ disk_mon_get_dirs(char ***list, int logs_critical){
char *cookie = NULL;
char *dir = NULL;
- if(logs_critical){
- CFG_LOCK_READ(config);
- disk_mon_add_dir(list, config->accesslog);
- disk_mon_add_dir(list, config->errorlog);
- disk_mon_add_dir(list, config->auditlog);
- CFG_UNLOCK_READ(config);
- }
-
/* Add /var just to be safe */
#ifdef LOCALSTATEDIR
disk_mon_add_dir(list, LOCALSTATEDIR);
@@ -620,6 +612,9 @@ disk_mon_get_dirs(char ***list, int logs_critical){
/* config and backend directories */
CFG_LOCK_READ(config);
disk_mon_add_dir(list, config->configdir);
+ disk_mon_add_dir(list, config->accesslog);
+ disk_mon_add_dir(list, config->errorlog);
+ disk_mon_add_dir(list, config->auditlog);
CFG_UNLOCK_READ(config);
be = slapi_get_first_backend (&cookie);
10 years, 9 months
Branch '389-ds-base-1.3.1' - ldap/servers
by Mark Reynolds
ldap/servers/slapd/daemon.c | 11 +++--------
1 file changed, 3 insertions(+), 8 deletions(-)
New commits:
commit 024abeec69c9914116ad2ae880e75a884cbd18ff
Author: Mark Reynolds <mreynolds(a)redhat.com>
Date: Mon Jul 22 15:36:49 2013 -0400
Ticket 47441 - Disk Monitoring not checking filesystem with logs
Bug Description: If logging is not set to critical, then the log directories
are not checked for available diskspace.
Fix Description: Remove the "logging_critical" check, and always include the
log directories.
https://fedorahosted.org/389/ticket/47441
Reviewed by: richm(Thanks!)
(cherry picked from commit c0887894fc2c13524d6dfd1cd56d9d54924d03a0)
diff --git a/ldap/servers/slapd/daemon.c b/ldap/servers/slapd/daemon.c
index 5a1705d..62c263e 100644
--- a/ldap/servers/slapd/daemon.c
+++ b/ldap/servers/slapd/daemon.c
@@ -602,14 +602,6 @@ disk_mon_get_dirs(char ***list, int logs_critical){
char *cookie = NULL;
char *dir = NULL;
- if(logs_critical){
- CFG_LOCK_READ(config);
- disk_mon_add_dir(list, config->accesslog);
- disk_mon_add_dir(list, config->errorlog);
- disk_mon_add_dir(list, config->auditlog);
- CFG_UNLOCK_READ(config);
- }
-
/* Add /var just to be safe */
#ifdef LOCALSTATEDIR
disk_mon_add_dir(list, LOCALSTATEDIR);
@@ -620,6 +612,9 @@ disk_mon_get_dirs(char ***list, int logs_critical){
/* config and backend directories */
CFG_LOCK_READ(config);
disk_mon_add_dir(list, config->configdir);
+ disk_mon_add_dir(list, config->accesslog);
+ disk_mon_add_dir(list, config->errorlog);
+ disk_mon_add_dir(list, config->auditlog);
CFG_UNLOCK_READ(config);
be = slapi_get_first_backend (&cookie);
10 years, 9 months
ldap/servers
by Mark Reynolds
ldap/servers/slapd/daemon.c | 11 +++--------
1 file changed, 3 insertions(+), 8 deletions(-)
New commits:
commit c0887894fc2c13524d6dfd1cd56d9d54924d03a0
Author: Mark Reynolds <mreynolds(a)redhat.com>
Date: Mon Jul 22 15:36:49 2013 -0400
Ticket 47441 - Disk Monitoring not checking filesystem with logs
Bug Description: If logging is not set to critical, then the log directories
are not checked for available diskspace.
Fix Description: Remove the "logging_critical" check, and always include the
log directories.
https://fedorahosted.org/389/ticket/47441
Reviewed by: richm(Thanks!)
diff --git a/ldap/servers/slapd/daemon.c b/ldap/servers/slapd/daemon.c
index a14cf35..601e999 100644
--- a/ldap/servers/slapd/daemon.c
+++ b/ldap/servers/slapd/daemon.c
@@ -602,14 +602,6 @@ disk_mon_get_dirs(char ***list, int logs_critical){
char *cookie = NULL;
char *dir = NULL;
- if(logs_critical){
- CFG_LOCK_READ(config);
- disk_mon_add_dir(list, config->accesslog);
- disk_mon_add_dir(list, config->errorlog);
- disk_mon_add_dir(list, config->auditlog);
- CFG_UNLOCK_READ(config);
- }
-
/* Add /var just to be safe */
#ifdef LOCALSTATEDIR
disk_mon_add_dir(list, LOCALSTATEDIR);
@@ -620,6 +612,9 @@ disk_mon_get_dirs(char ***list, int logs_critical){
/* config and backend directories */
CFG_LOCK_READ(config);
disk_mon_add_dir(list, config->configdir);
+ disk_mon_add_dir(list, config->accesslog);
+ disk_mon_add_dir(list, config->errorlog);
+ disk_mon_add_dir(list, config->auditlog);
CFG_UNLOCK_READ(config);
be = slapi_get_first_backend (&cookie);
10 years, 9 months
ldap/servers
by Richard Allen Megginson
ldap/servers/slapd/csn.c | 12 +++
ldap/servers/slapd/entrywsi.c | 112 ++++++++++++++++++++++---------------
ldap/servers/slapd/slapi-private.h | 2
3 files changed, 80 insertions(+), 46 deletions(-)
New commits:
commit 56e4fac73a6fb04c6e440cdf1d5deac99ea04194
Author: Rich Megginson <rmeggins(a)redhat.com>
Date: Wed Jul 17 17:51:36 2013 -0600
Ticket #47424 - Replication problem with add-delete requests on single-valued attributes
https://fedorahosted.org/389/ticket/47424
Reviewed by: lkrispenz (Thanks!)
Branch: master
Fix Description: Change the single master resolve attr code to handle the
specific case of doing
add: newvalue
delete: oldvalue
Had to add a new API function - csn_compare_ext - to be able to compare CSNs
without the subsequence number.
Platforms tested: RHEL6 x86_64
Flag Day: no
Doc impact: no
(cherry picked from commit 16e6fc20b51d94a22d73036f2809315b118bd5a4)
(cherry picked from commit 90f170c7e697ba6350a9721b4a09b8a746e32431)
diff --git a/ldap/servers/slapd/csn.c b/ldap/servers/slapd/csn.c
index 9fb5b4a..5c31689 100644
--- a/ldap/servers/slapd/csn.c
+++ b/ldap/servers/slapd/csn.c
@@ -298,7 +298,7 @@ csn_as_attr_option_string(CSNType t,const CSN *csn,char *ss)
}
int
-csn_compare(const CSN *csn1, const CSN *csn2)
+csn_compare_ext(const CSN *csn1, const CSN *csn2, unsigned int flags)
{
PRInt32 retVal;
if(csn1!=NULL && csn2!=NULL)
@@ -321,7 +321,7 @@ csn_compare(const CSN *csn1, const CSN *csn2)
retVal = -1;
else if (csn1->rid > csn2->rid)
retVal = 1;
- else
+ else if (!(flags & CSN_COMPARE_SKIP_SUBSEQ))
{
if (csn1->subseqnum < csn2->subseqnum)
retVal = -1;
@@ -330,6 +330,8 @@ csn_compare(const CSN *csn1, const CSN *csn2)
else
retVal = 0;
}
+ else
+ retVal = 0;
}
}
@@ -350,6 +352,12 @@ csn_compare(const CSN *csn1, const CSN *csn2)
return(retVal);
}
+int
+csn_compare(const CSN *csn1, const CSN *csn2)
+{
+ return csn_compare_ext(csn1, csn2, 0);
+}
+
time_t csn_time_difference(const CSN *csn1, const CSN *csn2)
{
return csn_get_time(csn1) - csn_get_time(csn2);
diff --git a/ldap/servers/slapd/entrywsi.c b/ldap/servers/slapd/entrywsi.c
index 0335358..9040a1a 100644
--- a/ldap/servers/slapd/entrywsi.c
+++ b/ldap/servers/slapd/entrywsi.c
@@ -757,7 +757,10 @@ entry_delete_present_values_wsi_single_valued(Slapi_Entry *e, const char *type,
{
valuearray_free(&deletedvalues);
/* The attribute is single valued and the value was successful deleted */
- entry_present_attribute_to_deleted_attribute(e, a);
+ /* but there could have been an add in the same operation, so double check */
+ if (valueset_isempty(&a->a_present_values)) {
+ entry_present_attribute_to_deleted_attribute(e, a);
+ }
}
else if (retVal != LDAP_SUCCESS)
{
@@ -875,8 +878,8 @@ entry_delete_present_values_wsi_multi_valued(Slapi_Entry *e, const char *type, s
if ( retVal==LDAP_OPERATIONS_ERROR )
{
LDAPDebug( LDAP_DEBUG_ANY, "Possible existing duplicate "
- "value for attribute type %s found in "
- "entry %s\n", a->a_type, slapi_entry_get_dn_const(e), 0 );
+ "value for attribute type %s found in "
+ "entry %s\n", a->a_type, slapi_entry_get_dn_const(e), 0 );
}
}
valuearray_free(&valuestodelete);
@@ -1327,6 +1330,7 @@ resolve_attribute_state_single_valued(Slapi_Entry *e, Slapi_Attr *a, int attribu
Slapi_Value *new_value= NULL;
const CSN *current_value_vucsn;
const CSN *pending_value_vucsn;
+ const CSN *pending_value_vdcsn;
const CSN *adcsn;
int i;
@@ -1340,27 +1344,47 @@ resolve_attribute_state_single_valued(Slapi_Entry *e, Slapi_Attr *a, int attribu
slapi_attr_next_value(a,i,&new_value);
}
attr_first_deleted_value(a,&pending_value);
-
/* purge_attribute_state_single_valued */
adcsn= attr_get_deletion_csn(a);
current_value_vucsn= value_get_csn(current_value, CSN_TYPE_VALUE_UPDATED);
pending_value_vucsn= value_get_csn(pending_value, CSN_TYPE_VALUE_UPDATED);
- if((pending_value!=NULL && (csn_compare(adcsn, pending_value_vucsn)<0)) ||
- (pending_value==NULL && (csn_compare(adcsn, current_value_vucsn)<0)))
+ pending_value_vdcsn= value_get_csn(pending_value, CSN_TYPE_VALUE_DELETED);
+ if((pending_value!=NULL && (csn_compare(adcsn, pending_value_vucsn)<0)) ||
+ (pending_value==NULL && (csn_compare(adcsn, current_value_vucsn)<0)))
{
attr_set_deletion_csn(a,NULL);
adcsn= NULL;
- }
+ }
- if(new_value==NULL)
+ /* in the case of the following:
+ * add: value2
+ * delete: value1
+ * we will have current_value with VUCSN CSN1
+ * and pending_value with VDCSN CSN2
+ * and new_value == NULL
+ * current_value != pending_value
+ * and
+ * VUCSN == VDCSN (ignoring subseq)
+ * even though value1.VDCSN > value2.VUCSN
+ * value2 should still win because the value is _different_
+ */
+ if (current_value && pending_value && !new_value && !adcsn &&
+ (0 != slapi_value_compare(a, current_value, pending_value)) &&
+ (0 == csn_compare_ext(current_value_vucsn, pending_value_vdcsn, CSN_COMPARE_SKIP_SUBSEQ)))
{
- /* check if the pending value should become the current value */
- if(pending_value!=NULL)
+ /* just remove the deleted value */
+ entry_deleted_value_to_zapped_value(a,pending_value);
+ pending_value = NULL;
+ }
+ else if(new_value==NULL)
+ {
+ /* check if the pending value should become the current value */
+ if(pending_value!=NULL)
{
if(!value_distinguished_at_csn(e,a,current_value,pending_value_vucsn))
{
- /* attribute.current_value = attribute.pending_value; */
- /* attribute.pending_value = NULL; */
+ /* attribute.current_value = attribute.pending_value; */
+ /* attribute.pending_value = NULL; */
entry_present_value_to_zapped_value(a,current_value);
entry_deleted_value_to_present_value(a,pending_value);
current_value= pending_value;
@@ -1369,12 +1393,12 @@ resolve_attribute_state_single_valued(Slapi_Entry *e, Slapi_Attr *a, int attribu
pending_value_vucsn= NULL;
}
}
- /* check if the current value should be deleted */
- if(current_value!=NULL)
+ /* check if the current value should be deleted */
+ if(current_value!=NULL)
{
if(csn_compare(adcsn,current_value_vucsn)>0) /* check if the attribute was deleted after the value was last updated */
{
- if(!value_distinguished_at_csn(e,a,current_value,current_value_vucsn))
+ if(!value_distinguished_at_csn(e,a,current_value,current_value_vucsn))
{
entry_present_value_to_zapped_value(a,current_value);
current_value= NULL;
@@ -1386,17 +1410,17 @@ resolve_attribute_state_single_valued(Slapi_Entry *e, Slapi_Attr *a, int attribu
else /* addition of a new value */
{
const CSN *new_value_vucsn= value_get_csn(new_value,CSN_TYPE_VALUE_UPDATED);
- if(csn_compare(new_value_vucsn,current_value_vucsn)<0)
+ if(csn_compare(new_value_vucsn,current_value_vucsn)<0)
{
- /*
- * if the new value was distinguished at the time the current value was added
- * then the new value should become current
- */
- if(value_distinguished_at_csn(e,a,new_value,current_value_vucsn))
+ /*
+ * if the new value was distinguished at the time the current value was added
+ * then the new value should become current
+ */
+ if(value_distinguished_at_csn(e,a,new_value,current_value_vucsn))
{
- /* attribute.pending_value = attribute.current_value */
- /* attribute.current_value = new_value */
- if(pending_value==NULL)
+ /* attribute.pending_value = attribute.current_value */
+ /* attribute.current_value = new_value */
+ if(pending_value==NULL)
{
entry_present_value_to_deleted_value(a,current_value);
}
@@ -1412,62 +1436,62 @@ resolve_attribute_state_single_valued(Slapi_Entry *e, Slapi_Attr *a, int attribu
}
else
{
- /* new_value= NULL */
+ /* new_value= NULL */
entry_present_value_to_zapped_value(a, new_value);
new_value= NULL;
}
}
- else /* new value is after the current value */
+ else /* new value is after the current value */
{
- if(!value_distinguished_at_csn(e, a, current_value, new_value_vucsn))
+ if(!value_distinguished_at_csn(e, a, current_value, new_value_vucsn))
{
- /* attribute.current_value = new_value */
+ /* attribute.current_value = new_value */
entry_present_value_to_zapped_value(a, current_value);
current_value= new_value;
new_value= NULL;
current_value_vucsn= new_value_vucsn;
}
- else /* value is distinguished - check if we should replace the current pending value */
+ else /* value is distinguished - check if we should replace the current pending value */
{
- if(csn_compare(new_value_vucsn, pending_value_vucsn)>0)
+ if(csn_compare(new_value_vucsn, pending_value_vucsn)>0)
{
- /* attribute.pending_value = new_value */
+ /* attribute.pending_value = new_value */
entry_deleted_value_to_zapped_value(a,pending_value);
entry_present_value_to_deleted_value(a,new_value);
pending_value= new_value;
new_value= NULL;
pending_value_vucsn= new_value_vucsn;
- }
- }
- }
- }
+ }
+ }
+ }
+ }
- /*
- * This call ensures that the attribute does not have a pending_value
+ /*
+ * This call ensures that the attribute does not have a pending_value
* or a deletion_csn that is earlier than the current_value.
*/
/* purge_attribute_state_single_valued */
- if((pending_value!=NULL && (csn_compare(adcsn, pending_value_vucsn)<0)) ||
- (pending_value==NULL && (csn_compare(adcsn, current_value_vucsn)<0)))
+ if((pending_value!=NULL && (csn_compare(adcsn, pending_value_vucsn)<0)) ||
+ (pending_value==NULL && (csn_compare(adcsn, current_value_vucsn)<0)))
{
attr_set_deletion_csn(a,NULL);
adcsn= NULL;
- }
+ }
- /* set attribute state */
- if(current_value==NULL)
+ /* set attribute state */
+ if(current_value==NULL)
{
if(attribute_state==ATTRIBUTE_PRESENT)
{
entry_present_attribute_to_deleted_attribute(e, a);
}
}
- else
+ else
{
if(attribute_state==ATTRIBUTE_DELETED)
{
entry_deleted_attribute_to_present_attribute(e, a);
}
- }
+ }
}
diff --git a/ldap/servers/slapd/slapi-private.h b/ldap/servers/slapd/slapi-private.h
index 027056b..e964ae4 100644
--- a/ldap/servers/slapd/slapi-private.h
+++ b/ldap/servers/slapd/slapi-private.h
@@ -196,6 +196,8 @@ PRUint16 csn_get_seqnum(const CSN *csn);
PRUint16 csn_get_subseqnum(const CSN *csn);
char *csn_as_string(const CSN *csn, PRBool replicaIdOrder, char *ss); /* WARNING: ss must be CSN_STRSIZE bytes, or NULL. */
int csn_compare(const CSN *csn1, const CSN *csn2);
+int csn_compare_ext(const CSN *csn1, const CSN *csn2, unsigned int flags);
+#define CSN_COMPARE_SKIP_SUBSEQ 0x1
time_t csn_time_difference(const CSN *csn1, const CSN *csn2);
size_t csn_string_size();
char *csn_as_attr_option_string(CSNType t,const CSN *csn,char *ss);
10 years, 9 months
Branch '389-ds-base-1.2.11' - ldap/servers
by Mark Reynolds
ldap/servers/slapd/libglobs.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
New commits:
commit 5a0d74ab8030233bcde9aa787ba7a2929a75e267
Author: Mark Reynolds <mreynolds(a)redhat.com>
Date: Mon Jul 22 11:35:51 2013 -0400
Ticket 47427 - Overflow in nsslapd-disk-monitoring-threshold(Fixed typo in libglobs.c)
Bug Description: Using ldapsearch shows threshold value as a negative number, even
though the feature is working correctly.
Fix Description: When reading the dse, the server was trying to cast the value as a "int".
Changed CONFIG_INT to CONFIG_LONG for nsslapd-disk-monioring-threshold.
https://fedorahosted.org/389/ticket/47427
Reviewed by: richm(Thanks!)
diff --git a/ldap/servers/slapd/libglobs.c b/ldap/servers/slapd/libglobs.c
index d0380f9..4977c60 100644
--- a/ldap/servers/slapd/libglobs.c
+++ b/ldap/servers/slapd/libglobs.c
@@ -680,8 +680,7 @@ static struct config_get_and_set {
{CONFIG_DISK_THRESHOLD, config_set_disk_threshold,
NULL, 0,
(void**)&global_slapdFrontendConfig.disk_threshold,
- CONFIG_LONG, (ConfigGetFunc)config_get_disk_threshold,
- DEFAULT_DISK_THRESHOLD},
+ CONFIG_LONG, (ConfigGetFunc)config_get_disk_threshold},
{CONFIG_DISK_GRACE_PERIOD, config_set_disk_grace_period,
NULL, 0,
(void**)&global_slapdFrontendConfig.disk_grace_period,
10 years, 9 months
Branch '389-ds-base-1.2.11' - ldap/servers
by Mark Reynolds
ldap/servers/slapd/libglobs.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
New commits:
commit 23a6383357990ea8f17fec9af155313d0a186af6
Author: Mark Reynolds <mreynolds(a)redhat.com>
Date: Mon Jul 22 11:03:24 2013 -0400
Ticket 47427 - Overflow in nsslapd-disk-monitoring-threshold
Bug Description: Using ldapsearch shows threshold value as a negative number, even
though the feature is working correctly.
Fix Description: When reading the dse, the server was trying to cast the value as a "int".
Changed CONFIG_INT to CONFIG_LONG for nsslapd-disk-monioring-threshold.
https://fedorahosted.org/389/ticket/47427
Reviewed by: richm(Thanks!)
diff --git a/ldap/servers/slapd/libglobs.c b/ldap/servers/slapd/libglobs.c
index 59879f7..d0380f9 100644
--- a/ldap/servers/slapd/libglobs.c
+++ b/ldap/servers/slapd/libglobs.c
@@ -679,8 +679,9 @@ static struct config_get_and_set {
(ConfigGetFunc)config_get_disk_monitoring},
{CONFIG_DISK_THRESHOLD, config_set_disk_threshold,
NULL, 0,
- (void**)&global_slapdFrontendConfig.disk_threshold, CONFIG_INT,
- (ConfigGetFunc)config_get_disk_threshold},
+ (void**)&global_slapdFrontendConfig.disk_threshold,
+ CONFIG_LONG, (ConfigGetFunc)config_get_disk_threshold,
+ DEFAULT_DISK_THRESHOLD},
{CONFIG_DISK_GRACE_PERIOD, config_set_disk_grace_period,
NULL, 0,
(void**)&global_slapdFrontendConfig.disk_grace_period,
10 years, 9 months
Branch '389-ds-base-1.3.0' - ldap/servers
by Mark Reynolds
ldap/servers/slapd/libglobs.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
New commits:
commit dd74bed46ed8b2dfd83a18666c4779debf09744a
Author: Mark Reynolds <mreynolds(a)redhat.com>
Date: Mon Jul 22 11:03:24 2013 -0400
Ticket 47427 - Overflow in nsslapd-disk-monitoring-threshold
Bug Description: Using ldapsearch shows threshold value as a negative number, even
though the feature is working correctly.
Fix Description: When reading the dse, the server was trying to cast the value as a "int".
Changed CONFIG_INT to CONFIG_LONG for nsslapd-disk-monioring-threshold.
https://fedorahosted.org/389/ticket/47427
Reviewed by: richm(Thanks!)
(cherry picked from commit 90c04c096876447ed3c1be0356fc346d3e492dc2)
diff --git a/ldap/servers/slapd/libglobs.c b/ldap/servers/slapd/libglobs.c
index f25c0ff..340adcb 100644
--- a/ldap/servers/slapd/libglobs.c
+++ b/ldap/servers/slapd/libglobs.c
@@ -983,7 +983,7 @@ static struct config_get_and_set {
{CONFIG_DISK_THRESHOLD, config_set_disk_threshold,
NULL, 0,
(void**)&global_slapdFrontendConfig.disk_threshold,
- CONFIG_INT, (ConfigGetFunc)config_get_disk_threshold,
+ CONFIG_LONG, (ConfigGetFunc)config_get_disk_threshold,
DEFAULT_DISK_THRESHOLD},
{CONFIG_DISK_GRACE_PERIOD, config_set_disk_grace_period,
NULL, 0,
10 years, 9 months