#endif /* LDAP_DEBUG */
if ( ( *result = chkResponseList( ld, msgid, all ) ) != NULL ) {
- rc = (*result)->lm_msgtype;
+ if ( all == LDAP_MSG_ALL && (*result)->lm_chain ) {
+ rc = (*result)->lm_chain_tail->lm_msgtype;
+ } else {
+ rc = (*result)->lm_msgtype;
+ }
} else {
int lc_ready = 0;
chain_head->lm_chain_tail = newmsg;
*result = chkResponseList( ld, msgid, all );
ld->ld_errno = LDAP_SUCCESS;
- return( (*result)->lm_msgtype );
+ return( (*result)->lm_chain_tail->lm_msgtype );
}
}
#endif /* LDAP_CONNECTIONLESS */