[Fedora-directory-commits] ldapserver/ldap/servers/plugins/chainingdb cb_config.c, 1.7, 1.8 cb_instance.c, 1.11, 1.12

Nathan Kinder nkinder at fedoraproject.org
Thu Nov 13 23:08:20 UTC 2008


Author: nkinder

Update of /cvs/dirsec/ldapserver/ldap/servers/plugins/chainingdb
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv9536/ldap/servers/plugins/chainingdb

Modified Files:
	cb_config.c cb_instance.c 
Log Message:
Resolves: 470918
Summary: Made replica_set_updatedn detect value add modify operations properly.



Index: cb_config.c
===================================================================
RCS file: /cvs/dirsec/ldapserver/ldap/servers/plugins/chainingdb/cb_config.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- cb_config.c	27 Jun 2008 19:28:22 -0000	1.7
+++ cb_config.c	13 Nov 2008 23:08:17 -0000	1.8
@@ -429,17 +429,17 @@
 					return SLAPI_DSE_CALLBACK_ERROR;
 				}
 
-			        if ( mods[i]->mod_op & LDAP_MOD_REPLACE) {
+			        if (SLAPI_IS_MOD_REPLACE(mods[i]->mod_op)) {
 					if (!done) {
 						cb_unregister_all_supported_control(cb);
 						done=1;
 					}
 					cb_register_supported_control(cb,config_attr_value,0);
 				} else
-			        if ( (mods[i]->mod_op & ~LDAP_MOD_BVALUES) == LDAP_MOD_ADD) {
+			        if (SLAPI_IS_MOD_ADD(mods[i]->mod_op)) {
 					cb_register_supported_control(cb,config_attr_value,0);
 				} else 
-			        if ( (mods[i]->mod_op & ~LDAP_MOD_BVALUES) == LDAP_MOD_DELETE) {
+			        if (SLAPI_IS_MOD_DELETE(mods[i]->mod_op)) {
 					cb_unregister_supported_control(cb,config_attr_value,0);
 				}
 			}
@@ -450,7 +450,7 @@
 			/* assume single-valued */
                         if (mods[i]->mod_op & LDAP_MOD_DELETE)
 				cb_set_debug(0);
-			else if ((mods[i]->mod_op & ~LDAP_MOD_BVALUES) == LDAP_MOD_ADD)
+			else if (SLAPI_IS_MOD_ADD(mods[i]->mod_op))
 				cb_set_debug(1);
 		} else
  		if ( !strcasecmp ( attr_name, CB_CONFIG_GLOBAL_CHAINING_COMPONENTS )) {
@@ -461,7 +461,7 @@
 
                         for (j = 0; mods[i]->mod_bvalues && mods[i]->mod_bvalues[j]; j++) {
                                 config_attr_value = (char *) mods[i]->mod_bvalues[j]->bv_val;
-                                if ( mods[i]->mod_op & LDAP_MOD_REPLACE) {
+                                if (SLAPI_IS_MOD_REPLACE(mods[i]->mod_op)) {
                                         if (!done) {
 					        charray_free(cb->config.chaining_components);
 					        cb->config.chaining_components=NULL;
@@ -471,11 +471,11 @@
 					charray_add(&cb->config.chaining_components,
 						slapi_dn_normalize(slapi_ch_strdup(config_attr_value)));
                                 } else
-                                if ( (mods[i]->mod_op & ~LDAP_MOD_BVALUES) == LDAP_MOD_ADD) {
+                                if (SLAPI_IS_MOD_ADD(mods[i]->mod_op)) {
 					charray_add(&cb->config.chaining_components,
 						slapi_dn_normalize(slapi_ch_strdup(config_attr_value)));
                                 } else
-                                if ( (mods[i]->mod_op & ~LDAP_MOD_BVALUES) == LDAP_MOD_DELETE) {
+                                if (SLAPI_IS_MOD_DELETE(mods[i]->mod_op)) {
 					charray_remove(cb->config.chaining_components,
 						slapi_dn_normalize(slapi_ch_strdup(config_attr_value)),
 						0 /* freeit */);
@@ -496,7 +496,7 @@
 
                         for (j = 0; mods[i]->mod_bvalues && mods[i]->mod_bvalues[j]; j++) {
                                 config_attr_value = (char *) mods[i]->mod_bvalues[j]->bv_val;
-                                if ( mods[i]->mod_op & LDAP_MOD_REPLACE) {
+                                if (SLAPI_IS_MOD_REPLACE(mods[i]->mod_op)) {
                                         if (!done) {
                                                 charray_free(cb->config.chainable_components);
                                                 cb->config.chainable_components=NULL;
@@ -506,12 +506,12 @@
                                                 slapi_dn_normalize(slapi_ch_strdup(config_attr_value)
 ));
                                 } else
-                                if ( (mods[i]->mod_op & ~LDAP_MOD_BVALUES) == LDAP_MOD_ADD) {
+                                if (SLAPI_IS_MOD_ADD(mods[i]->mod_op)) {
                                         charray_add(&cb->config.chainable_components,
                                                 slapi_dn_normalize(slapi_ch_strdup(config_attr_value)
 ));
                                 } else
-                                if ( (mods[i]->mod_op & ~LDAP_MOD_BVALUES) == LDAP_MOD_DELETE) {
+                                if (SLAPI_IS_MOD_DELETE(mods[i]->mod_op)) {
                                         charray_remove(cb->config.chainable_components,
                                                 slapi_dn_normalize(slapi_ch_strdup(config_attr_value)
 ),


Index: cb_instance.c
===================================================================
RCS file: /cvs/dirsec/ldapserver/ldap/servers/plugins/chainingdb/cb_instance.c,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- cb_instance.c	5 Nov 2008 18:21:05 -0000	1.11
+++ cb_instance.c	13 Nov 2008 23:08:17 -0000	1.12
@@ -323,8 +323,8 @@
 		if ( !strcasecmp ( attr_name, CB_CONFIG_BINDUSER ))  {
 
 			/* Make sure value is not forbidden */
-                	if ((mods[i]->mod_op & LDAP_MOD_REPLACE) ||
-                        	((mods[i]->mod_op & ~LDAP_MOD_BVALUES) == LDAP_MOD_ADD)) {
+                	if (SLAPI_IS_MOD_REPLACE(mods[i]->mod_op) ||
+                        	SLAPI_IS_MOD_ADD(mods[i]->mod_op)) {
 
                         	rc = cb_instance_config_set((void *) inst, attr_name,
                   	      	cb_the_instance_config, mods[i]->mod_bvalues[0], returntext,
@@ -333,8 +333,8 @@
 			}
 		} 
 		
-                if ((mods[i]->mod_op & LDAP_MOD_DELETE) ||
-                        ((mods[i]->mod_op & ~LDAP_MOD_BVALUES) == LDAP_MOD_ADD)) {
+                if (SLAPI_IS_MOD_DELETE(mods[i]->mod_op) ||
+                        SLAPI_IS_MOD_ADD(mods[i]->mod_op)) {
                         rc= LDAP_UNWILLING_TO_PERFORM;
                         PR_snprintf(returntext, SLAPI_DSE_RETURNTEXT_SIZE, "%s attributes is not allowed",
                                 (mods[i]->mod_op & LDAP_MOD_DELETE) ? "Deleting" : "Adding");
@@ -383,7 +383,7 @@
        			PR_RWLock_Wlock(inst->rwl_config_lock);
                         for (j = 0; mods[i]->mod_bvalues && mods[i]->mod_bvalues[j]; j++) {
                                	config_attr_value = (char *) mods[i]->mod_bvalues[j]->bv_val;
-                               	if ( mods[i]->mod_op & LDAP_MOD_REPLACE) {
+                               	if (SLAPI_IS_MOD_REPLACE(mods[i]->mod_op)) {
                                        	if (!done) {
                                                	charray_free(inst->illegal_attributes);
                                                	inst->illegal_attributes=NULL;
@@ -392,11 +392,11 @@
                                        	charray_add(&inst->illegal_attributes,
 						slapi_ch_strdup(config_attr_value));
                                	} else
-                               	if ( (mods[i]->mod_op & ~LDAP_MOD_BVALUES) == LDAP_MOD_ADD) {
+                               	if (SLAPI_IS_MOD_ADD(mods[i]->mod_op)) {
                                        	charray_add(&inst->illegal_attributes,
                                                	slapi_ch_strdup(config_attr_value));
                                	} else
-                               	if ( (mods[i]->mod_op & ~LDAP_MOD_BVALUES) == LDAP_MOD_DELETE) {
+                               	if (SLAPI_IS_MOD_DELETE(mods[i]->mod_op)) {
                                        	charray_remove(inst->illegal_attributes,
                                                	slapi_ch_strdup(config_attr_value),
 												0 /* freeit */);
@@ -417,7 +417,7 @@
         		PR_RWLock_Wlock(inst->rwl_config_lock);
                        	for (j = 0; mods[i]->mod_bvalues && mods[i]->mod_bvalues[j]; j++) {
                                	config_attr_value = (char *) mods[i]->mod_bvalues[j]->bv_val;
-                               	if ( mods[i]->mod_op & LDAP_MOD_REPLACE) {
+                               	if (SLAPI_IS_MOD_REPLACE(mods[i]->mod_op)) {
                                        	if (!done) {
                                                	charray_free(inst->chaining_components);
                                                	inst->chaining_components=NULL;
@@ -427,11 +427,11 @@
                                        	charray_add(&inst->chaining_components,
                                                	slapi_dn_normalize(slapi_ch_strdup(config_attr_value)));
                                	} else
-                               	if ( (mods[i]->mod_op & ~LDAP_MOD_BVALUES) == LDAP_MOD_ADD) {
+                               	if (SLAPI_IS_MOD_ADD(mods[i]->mod_op)) {
                                        	charray_add(&inst->chaining_components,
                                                	slapi_dn_normalize(slapi_ch_strdup(config_attr_value)));
                                	} else
-                               	if ( (mods[i]->mod_op & ~LDAP_MOD_BVALUES) == LDAP_MOD_DELETE) {
+                               	if (SLAPI_IS_MOD_DELETE(mods[i]->mod_op)) {
                                        	charray_remove(inst->chaining_components,
                                                	slapi_dn_normalize(slapi_ch_strdup(config_attr_value)),
 												0 /* freeit */);
@@ -447,8 +447,8 @@
 
 
 
-		if ((mods[i]->mod_op & LDAP_MOD_DELETE) || 
-                        ((mods[i]->mod_op & ~LDAP_MOD_BVALUES) == LDAP_MOD_ADD)) {
+		if (SLAPI_IS_MOD_DELETE(mods[i]->mod_op) || 
+                        SLAPI_IS_MOD_ADD(mods[i]->mod_op)) {
 
 			/* Special processing for binddn & password */
 			/* because they are optional		    */




More information about the Fedora-directory-commits mailing list