diff --git a/CHANGES b/CHANGES index 43d3281196e129b9b48a22be2f2cecee39760ef2..2a7338bf62921bda315655019767af05c5bbe85b 100644 --- a/CHANGES +++ b/CHANGES @@ -20,6 +20,7 @@ OpenLDAP 2.4.20 Engineering Fixed slapd inclusion of ac/unistd.h (ITS#6342) Fixed slapd invalid dn log message (ITS#6309) Fixed slapd lockup on shutdown (ITS#6372) + Fixed slapd RID range to be decimal only (ITS#6394) Fixed slapd sl_free to better reclaim memory (ITS#6380) Fixed slapd syncrepl deletes in MirrorMode (ITS#6368) Fixed slapd syncrepl to use correct SID (ITS#6367) diff --git a/doc/man/man5/slapd-config.5 b/doc/man/man5/slapd-config.5 index 8ec7a52744bb89eed470126e70e9101bdb5c72d7..24d00bb4906dac94a9ded4123e565db16782c1d6 100644 --- a/doc/man/man5/slapd-config.5 +++ b/doc/man/man5/slapd-config.5 @@ -1676,7 +1676,7 @@ replication engine. identifies the current .B syncrepl directive within the replication consumer site. -It is a non-negative integer having no more than three digits. +It is a non-negative integer having no more than three decimal digits. .B provider specifies the replication provider site containing the master content diff --git a/doc/man/man5/slapd.conf.5 b/doc/man/man5/slapd.conf.5 index 8d0e3c88cc4dd46b14bd9c0e7203f33d1b08cbef..ff4242e19dac3b6b28021438a37d1fd968e0dfaf 100644 --- a/doc/man/man5/slapd.conf.5 +++ b/doc/man/man5/slapd.conf.5 @@ -1663,8 +1663,8 @@ replication engine. identifies the current .B syncrepl directive within the replication consumer site. -It is a non-negative integer not greater than 4095 (limited -to three hexadecimal digits). +It is a non-negative integer not greater than 999 (limited +to three decimal digits). .B provider specifies the replication provider site containing the master content diff --git a/servers/slapd/syncrepl.c b/servers/slapd/syncrepl.c index a9b3d7150bf5231a4ea035c4845da4cadfe1395c..703fe25a6bb5c096177387df6d4ce337406fbccb 100644 --- a/servers/slapd/syncrepl.c +++ b/servers/slapd/syncrepl.c @@ -4027,10 +4027,10 @@ parse_syncrepl_line( Debug( LDAP_DEBUG_ANY, "%s: %s.\n", c->log, c->cr_msg, 0 ); return -1; } - if ( tmp > SLAP_SYNC_SID_MAX || tmp < 0 ) { + if ( tmp > SLAP_SYNC_RID_MAX || tmp < 0 ) { snprintf( c->cr_msg, sizeof( c->cr_msg ), "Error: parse_syncrepl_line: " - "syncrepl id %d is out of range [0..4095]", tmp ); + "syncrepl id %d is out of range [0..%d]", tmp, SLAP_SYNC_RID_MAX ); Debug( LDAP_DEBUG_ANY, "%s: %s.\n", c->log, c->cr_msg, 0 ); return -1; } @@ -4555,7 +4555,7 @@ syncrepl_unparse( syncinfo_t *si, struct berval *bv ) si->si_bindconf.sb_version = LDAP_VERSION3; ptr = buf; - assert( si->si_rid >= 0 && si->si_rid <= SLAP_SYNC_SID_MAX ); + assert( si->si_rid >= 0 && si->si_rid <= SLAP_SYNC_RID_MAX ); len = snprintf( ptr, WHATSLEFT, IDSTR "=%03d " PROVIDERSTR "=%s", si->si_rid, si->si_bindconf.sb_uri.bv_val ); if ( len >= sizeof( buf ) ) return;