ctrls[num_ctrls] = 0;
- slap_add_opattrs( op, &rs->sr_text, textbuf, textlen, 1 );
+ if ( !SLAP_SHADOW( op->o_bd ))
+ slap_add_opattrs( op, &rs->sr_text, textbuf, textlen, 1 );
/* check entry's schema */
rs->sr_err = entry_schema_check( op, op->oq_add.rs_e, NULL,
struct berval nrdn;
Entry *e = entry_dup( op->ora_e );
- if (pdn.bv_len) {
- nrdn.bv_val = e->e_nname.bv_val;
- nrdn.bv_len = pdn.bv_val - op->ora_e->e_nname.bv_val - 1;
- } else {
- nrdn = e->e_nname;
- }
+ dnRdn( &e->e_nname, &nrdn );
bdb_cache_add( bdb, ei, e, &nrdn, locker );