attrs=*,+ becmoes the default behavior when attrs are not specified in syncrepl definition. When attrs are specified, operational attributes other than objectClass, structuralObjectClass, and entryCSN need to be explicitly specified to be included in the replication content.

This commit is contained in:
Jong Hyuk Choi 2004-08-20 16:26:58 +00:00
parent 0ed0cd66bf
commit 37db80eadb

View file

@ -88,8 +88,14 @@ init_syncrepl(syncinfo_t *si)
#endif
}
/* Add Attributes */
for ( i = 0; sync_descs[ i ] != NULL; i++ ) {
tmp[ n++ ] = ch_strdup ( sync_descs[i]->ad_cname.bv_val );
tmp[ n ] = NULL;
}
} else {
tmp = ( char ** ) ch_realloc( si->si_attrs, 5 * sizeof( char * ));
tmp = ( char ** ) ch_realloc( si->si_attrs, 3 * sizeof( char * ));
if ( tmp == NULL ) {
#ifdef NEW_LOGGING
LDAP_LOG( OPERATION, ERR, "out of memory\n", 0,0,0 );
@ -98,15 +104,12 @@ init_syncrepl(syncinfo_t *si)
#endif
}
tmp[ n++ ] = ch_strdup( "*" );
tmp[ n++ ] = ch_strdup( "+" );
tmp[ n ] = NULL;
}
si->si_attrs = tmp;
/* Add Attributes */
for ( i = 0; sync_descs[ i ] != NULL; i++ ) {
si->si_attrs[ n++ ] = ch_strdup ( sync_descs[i]->ad_cname.bv_val );
si->si_attrs[ n ] = NULL;
}
}
static int