/* $OpenLDAP$ */
/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
*
- * Copyright 1998-2003 The OpenLDAP Foundation.
+ * Copyright 1998-2004 The OpenLDAP Foundation.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* in any subset, otherwise drop it.
*/
if ( ocs && ml->sml_desc == slap_schema.si_ad_objectClass
- && ml->sml_bvalues ) {
+ && ml->sml_values )
+ {
int i, first = 1;
if ( ocs == -1 ) ocs = 0;
- for ( i=0; ml->sml_bvalues[i].bv_val; i++ ) {
+ for ( i=0; ml->sml_values[i].bv_val; i++ ) {
int match = 0;
for ( an = ri->ri_attrs; an->an_name.bv_val; an++ ) {
if ( an->an_oc ) {
ocs = 1;
- if ( ml->sml_bvalues[i].bv_len == an->an_name.bv_len
- && !strcasecmp(ml->sml_bvalues[i].bv_val,
+ match |= an->an_oc_exclude;
+ if ( ml->sml_values[i].bv_len == an->an_name.bv_len
+ && !strcasecmp(ml->sml_values[i].bv_val,
an->an_name.bv_val ) ) {
- match = 1 ^ an->an_oc_exclude;
+ match = !an->an_oc_exclude;
break;
}
}
dohdr = 0;
}
fprintf( fp, "%s: %s\n", did, type );
- if ( ml->sml_bvalues ) {
- print_vals( fp, &ml->sml_desc->ad_cname, ml->sml_bvalues );
+ if ( ml->sml_values ) {
+ print_vals( fp, &ml->sml_desc->ad_cname, ml->sml_values );
}
fprintf( fp, "-\n" );
}
for ( an = ri->ri_attrs; an->an_name.bv_val; an++ ) {
if ( an->an_oc ) {
ocs = 1;
+ match |= an->an_oc_exclude;
if ( a->a_vals[i].bv_len == an->an_name.bv_len
&& !strcasecmp(a->a_vals[i].bv_val,
an->an_name.bv_val ) ) {
- match = 1 ^ an->an_oc_exclude;
+ match = !an->an_oc_exclude;
break;
}
}