goto fail;
}
+#define bvcasematch(bv1, bv2) ( ((bv1)->bv_len == (bv2)->bv_len) && (strncasecmp((bv1)->bv_val, (bv2)->bv_val, (bv1)->bv_len) == 0) )
+
/* Make sure all attributes with multiple values are contiguous */
if ( checkvals ) {
int j, k;
for (i=0; i<lines; i++) {
for ( j=i+1; j<lines; j++ ) {
- if ( bvmatch( type+i, type+j )) {
+ if ( bvcasematch( type+i, type+j )) {
/* out of order, move intervening attributes down */
if ( j != i+1 ) {
bv = vals[j];
for ( i=0; i<=lines; i++ ) {
ad_prev = ad;
- if ( !ad || ( i<lines && !bvmatch( type+i, &ad->ad_cname ))) {
+ if ( !ad || ( i<lines && !bvcasematch( type+i, &ad->ad_cname ))) {
ad = NULL;
rc = slap_bv2ad( type+i, &ad, &text );