int
ldap_chase_referrals( LDAP *ld, LDAPRequest *lr, char **errstrp, int *hadrefp )
{
- int rc, count, len, newdn = 0;
+ int rc, count, len, newdn;
#ifdef LDAP_API_FEATURE_X_OPENLDAP_V2_DNS
int ldapref;
#endif /* LDAP_API_FEATURE_X_OPENLDAP_V2_DNS */
continue;
}
+ /* NOTE! This code treats "ldap://host/" differently
+ * from "ldap://host". The behavior is wrong, but is
+ * left here intentionally to maintain compatibility
+ * with OpenLDAP 1.x and UMich 3.3 clients.
+ */
*hadrefp = 1;
if (( refdn = strchr( tmpref, '/' )) != NULL ) {
*refdn++ = '\0';
- if ( *refdn != '\0' )
- {
- newdn = 1;
- } else
- {
- refdn = NULL;
- }
+ newdn = 1;
+ } else {
+ newdn = 0;
}
if (( ber = re_encode_request( ld, origreq->lr_ber,