- type = ml->sml_desc->ad_cname.bv_val;
- switch ( ml->sml_op ) {
- case LDAP_MOD_ADD:
- fprintf( fp, "add: %s\n", type );
- break;
-
- case LDAP_MOD_DELETE:
- fprintf( fp, "delete: %s\n", type );
- break;
-
- case LDAP_MOD_REPLACE:
- fprintf( fp, "replace: %s\n", type );
- break;
-
- case LDAP_MOD_INCREMENT:
- fprintf( fp, "increment: %s\n", type );
- break;
- }
- if ( ocs == 2 ) {
- int i;
- struct berval vals[2];
- vals[1].bv_val = NULL;
- vals[1].bv_len = 0;
- for ( i=0; ml->sml_bvalues[i].bv_val; i++ ) {
- int match = 0;
- for ( an = ri->ri_attrs; an->an_name.bv_val; an++ ) {
- if ( an->an_oc
- && ml->sml_bvalues[i].bv_len == an->an_name.bv_len
- && !strcasecmp(ml->sml_bvalues[i].bv_val,
- an->an_name.bv_val ) ) {
- match = 1 ^ an->an_oc_exclude;
- break;
- }
- }
- match ^= ri->ri_exclude;
- if ( match ) {
- vals[0] = an->an_name;
- print_vals( fp, &ml->sml_desc->ad_cname, vals );
- }
- }
- } else if ( ml->sml_bvalues ) {
- print_vals( fp, &ml->sml_desc->ad_cname, ml->sml_bvalues );
+ fprintf( fp, "%s: %s\n", did, type );
+ if ( ml->sml_values ) {
+ print_vals( fp, &ml->sml_desc->ad_cname, ml->sml_values );