/* $OpenLDAP$ */
/*
- * Copyright 1998-1999 The OpenLDAP Foundation, All Rights Reserved.
+ * Copyright 1998-2000 The OpenLDAP Foundation, All Rights Reserved.
* COPYING RESTRICTIONS APPLY, see COPYRIGHT file
*/
{LDAP_NO_SUCH_OBJECT, "No such object" },
{LDAP_ALIAS_PROBLEM, "Alias problem" },
{LDAP_INVALID_DN_SYNTAX, "Invalid DN syntax" },
- {LDAP_IS_LEAF, "Object is a leaf" },
+ {LDAP_IS_LEAF, "Entry is a leaf" },
{LDAP_ALIAS_DEREF_PROBLEM, "Alias dereferencing problem" },
{LDAP_INAPPROPRIATE_AUTH, "Inappropriate authentication" },
{LDAP_AFFECTS_MULTIPLE_DSAS, "Operation affects multiple DSAs" },
{LDAP_OTHER, "Unknown error" },
+
+ /* API ResultCodes */
{LDAP_SERVER_DOWN, "Can't contact LDAP server" },
{LDAP_LOCAL_ERROR, "Local error" },
{LDAP_ENCODING_ERROR, "Encoding error" },
{LDAP_CLIENT_LOOP, "Client Loop" },
{LDAP_REFERRAL_LIMIT_EXCEEDED, "Referral Limit Exceeded" },
- {-1, 0 }
+ {-1, NULL }
};
static const struct ldaperror *
}
if ( ld->ld_matched != NULL && ld->ld_matched[0] != '\0' ) {
- fprintf( stderr, "\tmatched: \"%s\"\n",
+ fprintf( stderr, "\tmatched DN: \"%s\"\n",
ld->ld_matched );
}
LDAPMessage *lm;
ber_int_t errcode = LDAP_SUCCESS;
- int rc;
ber_tag_t tag;
BerElement *ber;
if(serverctrls != NULL) *serverctrls = NULL;
/* Find the next result... */
- for ( lm = r; lm->lm_chain != NULL; lm = lm->lm_chain ) {
+ for ( lm = r; lm != NULL; lm = lm->lm_chain ) {
/* skip over entries and references */
if( lm->lm_msgtype != LDAP_RES_SEARCH_ENTRY &&
- lm->lm_msgtype != LDAP_RES_SEARCH_REFERENCE )
+ lm->lm_msgtype != LDAP_RES_SEARCH_REFERENCE &&
+ lm->lm_msgtype != LDAP_RES_EXTENDED_PARTIAL )
{
break;
}
}
if( tag != LBER_ERROR ) {
- rc = ldap_int_get_controls( ber, serverctrls );
+ int rc = ldap_int_get_controls( ber, serverctrls );
if( rc != LDAP_SUCCESS ) {
tag = LBER_ERROR;
}
/* return */
+ if( errcodep != NULL ) {
+ *errcodep = ld->ld_errno;
+ }
if ( errcode == LDAP_SUCCESS ) {
- if( errcodep != NULL ) {
- *errcodep = ld->ld_errno;
- }
if( matcheddnp != NULL ) {
*matcheddnp = LDAP_STRDUP( ld->ld_matched );
}
for ( lm = lm->lm_chain; lm != NULL; lm = lm->lm_chain ) {
/* skip over entries and references */
if( lm->lm_msgtype != LDAP_RES_SEARCH_ENTRY &&
- lm->lm_msgtype != LDAP_RES_SEARCH_REFERENCE )
+ lm->lm_msgtype != LDAP_RES_SEARCH_REFERENCE &&
+ lm->lm_msgtype != LDAP_RES_EXTENDED_PARTIAL )
{
/* more results to return */
errcode = LDAP_MORE_RESULTS_TO_RETURN;