]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/back-ldap/search.c
Silence a warning about ldap_debug
[openldap] / servers / slapd / back-ldap / search.c
index 69cb44963681ea045797dc6e8d56b3ca2dda5d9d..b23e6adf32333070152e6cc4862cc70c67815bc5 100644 (file)
@@ -45,6 +45,7 @@
 
 #include "slap.h"
 #include "back-ldap.h"
+#undef ldap_debug      /* silence a warning in ldap-int.h */
 #include "../../../libraries/libldap/ldap-int.h"
 
 static void ldap_send_entry( Backend *be, Operation *op, struct ldapconn *lc,
@@ -228,7 +229,7 @@ ldap_back_search(
 
 #ifdef ENABLE_REWRITE
        if ( mfilter.bv_val != filterstr->bv_val ) {
-               ldap_memfree( mfilter.bv_val );
+               free( mfilter.bv_val );
        }
 #endif /* ENABLE_REWRITE */
 
@@ -342,16 +343,16 @@ finish:;
                        free( mmatch );
                }
 #endif /* ENABLE_REWRITE */
-               free(match);
+               LDAP_FREE(match);
        }
        if ( err ) {
-               free( err );
+               LDAP_FREE( err );
        }
        if ( mapped_attrs ) {
-               free( mapped_attrs );
+               ch_free( mapped_attrs );
        }
        if ( mapped_filter != filterstr->bv_val ) {
-               free( mapped_filter );
+               ch_free( mapped_filter );
        }
        if ( mbase.bv_val != base->bv_val ) {
                free( mbase.bv_val );
@@ -426,6 +427,7 @@ ldap_send_entry(
                attr = (Attribute *)ch_malloc( sizeof(Attribute) );
                if (attr == NULL)
                        continue;
+               attr->a_flags = 0;
                attr->a_next = 0;
                attr->a_desc = NULL;
                if (slap_bv2ad(&mapped, &attr->a_desc, &text) != LDAP_SUCCESS) {
@@ -460,7 +462,7 @@ ldap_send_entry(
                        for ( i = 0, bv = attr->a_vals; bv->bv_val; bv++, i++ ) {
                                ldap_back_map(&li->oc_map, bv, &mapped, 1);
                                if (mapped.bv_val == NULL) {
-                                       free(bv->bv_val);
+                                       LBER_FREE(bv->bv_val);
                                        bv->bv_val = NULL;
                                        if (--last < 0)
                                                break;
@@ -468,7 +470,12 @@ ldap_send_entry(
                                        attr->a_vals[last].bv_val = NULL;
                                        i--;
                                } else if ( mapped.bv_val != bv->bv_val ) {
-                                       free(bv->bv_val);
+                                       /*
+                                        * FIXME: after LBER_FREEing
+                                        * the value is replaced by
+                                        * ch_alloc'ed memory
+                                        */
+                                       LBER_FREE(bv->bv_val);
                                        ber_dupbv( bv, &mapped );
                                }
                        }
@@ -542,8 +549,8 @@ ldap_send_entry(
                attr = ent.e_attrs;
                ent.e_attrs = attr->a_next;
                if (attr->a_vals != &dummy)
-                       bvarray_free(attr->a_vals);
-               free(attr);
+                       ber_bvarray_free(attr->a_vals);
+               ch_free(attr);
        }
        
        if ( ent.e_dn && ent.e_dn != bdn.bv_val )