Lines Matching refs:ld

44 static int do_abandon( LDAP *ld, int origid, int msgid, LDAPControl **serverctrls );
49 BerElement * ldap_build_abandon_req( LDAP *ld, int msgid, LDAPControl ** serverctrls)
55 if ( (ber = alloc_ber_with_options( ld )) == NULLBER ) {
57 ld->ld_errno = LDAP_NO_MEMORY;
61 if ( ld->ld_sb.sb_naddr > 0 ) {
63 ++ld->ld_msgid, ld->ld_cldapdn,
67 rc = ber_printf( ber, "{iti", ++ld->ld_msgid,
74 ld->ld_errno = LDAP_ENCODING_ERROR;
82 ld->ld_errno = LDAP_ENCODING_ERROR;
85 } else if (ld->ld_srvctrls && ld->ld_srvctrls[0]) {
87 if (ldap_controls_code(ber, ld->ld_srvctrls) != LDAP_SUCCESS){
88 ld->ld_errno = LDAP_ENCODING_ERROR;
94 ld->ld_errno = LDAP_ENCODING_ERROR;
105 * ld LDAP descriptor
111 * ldap_abandon( ld, msgid );
114 ldap_abandon( LDAP *ld, int msgid )
119 LOCK_LDAP( ld );
124 rv = do_abandon( ld, msgid, msgid , NULL);
126 UNLOCK_LDAP( ld );
133 int ldap_abandon_ext(LDAP *ld, int msgid, LDAPControl **serverctrls, LDAPControl **clientctrls)
138 LOCK_LDAP( ld );
143 rv = do_abandon( ld, msgid, msgid , NULL);
145 rv = ld->ld_errno;
149 UNLOCK_LDAP( ld );
154 UNLOCK_LDAP( ld );
161 do_abandon( LDAP *ld, int origid, int msgid , LDAPControl **serverctrls)
182 for ( lr = ld->ld_requests; lr != NULL; lr = lr->lr_next ) {
187 do_abandon( ld, msgid, lr->lr_msgid , serverctrls);
194 ld->ld_errno = LDAP_PARAM_ERROR;
204 if ( ldap_msgdelete( ld, msgid ) == 0 ) {
205 ld->ld_errno = LDAP_SUCCESS;
211 if ((ber = ldap_build_abandon_req(ld, msgid, serverctrls)) == NULLBER){
219 sb = &ld->ld_sb;
222 sb = &ld->ld_sb;
225 ld->ld_errno = LDAP_SERVER_DOWN;
234 free_connection( ld, lr->lr_conn, 0, 1 );
237 free_request( ld, lr );
243 if ( ld->ld_abandoned == NULL ) {
244 if ( (ld->ld_abandoned = (int *) malloc( 2 * sizeof(int) ))
246 ld->ld_errno = LDAP_NO_MEMORY;
251 for ( i = 0; ld->ld_abandoned[i] != -1; i++ )
253 if ( (ld->ld_abandoned = (int *) realloc( (char *)
254 ld->ld_abandoned, (i + 2) * sizeof(int) )) == NULL ) {
255 ld->ld_errno = LDAP_NO_MEMORY;
259 ld->ld_abandoned[i] = msgid;
260 ld->ld_abandoned[i + 1] = -1;
263 ld->ld_errno = LDAP_SUCCESS;