Lines Matching defs:ld
30 BerElement * ldap_build_extended_operation_req(LDAP *ld, char *exoid, struct berval *exdata, LDAPControl ** serverctrls)
41 if ( (ber = alloc_ber_with_options( ld )) == NULLBER ) {
42 ld->ld_errno = LDAP_NO_MEMORY;
46 if ( ber_printf( ber, "{it{ts", ++ld->ld_msgid, LDAP_REQ_EXTENDED, LDAP_TAG_EXT_NAME, exoid ) == -1 ) {
47 ld->ld_errno = LDAP_ENCODING_ERROR;
53 ld->ld_errno = LDAP_ENCODING_ERROR;
59 ld->ld_errno = LDAP_ENCODING_ERROR;
67 ld->ld_errno = LDAP_ENCODING_ERROR;
71 } else if (ld->ld_srvctrls && ld->ld_srvctrls[0]) {
73 if (ldap_controls_code(ber, ld->ld_srvctrls) != LDAP_SUCCESS){
74 ld->ld_errno = LDAP_ENCODING_ERROR;
81 ld->ld_errno = LDAP_ENCODING_ERROR;
91 * ld : LDAP descriptor.
100 int ldap_extended_operation(LDAP *ld, char *exoid, struct berval *exdata,
107 LOCK_LDAP(ld);
111 if (( ber = ldap_build_extended_operation_req( ld, exoid, exdata, serverctrls)) == NULLBER ) {
112 rv = ld->ld_errno;
116 UNLOCK_LDAP(ld);
122 rv = send_initial_request( ld, LDAP_REQ_EXTENDED, NULL, ber );
124 rv = ld->ld_errno;
129 UNLOCK_LDAP(ld);
136 UNLOCK_LDAP(ld);
142 int ldap_extended_operation_s(LDAP *ld, char *exoid, struct berval *exdata,
150 if ((retcode = ldap_extended_operation(ld, exoid, exdata, serverctrls, clientctrls, &msgid)) != LDAP_SUCCESS)
152 if (ldap_result(ld, msgid, 1, (struct timeval *)NULL, &res ) == -1)
153 return (ld->ld_errno );
155 return (ldap_parse_extended_result(ld, res, retoidp, retdatap, 1));