From: Jong Hyuk Choi Date: Fri, 20 Aug 2004 16:26:58 +0000 (+0000) Subject: attrs=*,+ becmoes the default behavior when attrs are not specified in syncrepl defin... X-Git-Tag: OPENLDAP_REL_ENG_2_3_0ALPHA~677 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=37db80eadb3d51f98b60eaa85d6a4f0a256a4f54;p=openldap 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. --- diff --git a/servers/slapd/syncrepl.c b/servers/slapd/syncrepl.c index 898b161f7f..5986615852 100644 --- a/servers/slapd/syncrepl.c +++ b/servers/slapd/syncrepl.c @@ -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