Lines Matching refs:ber
119 int ldap_controls_code (BerElement *ber, LDAPControl **ctrls)
124 rc = ber_printf(ber, "t{", LDAP_TAG_CONTROL_LIST);
126 ber_free(ber, 1);
131 rc = ber_printf(ber, "{s", ctrls[i]->ldctl_oid);
133 ber_free(ber, 1);
137 rc = ber_printf(ber, "b", ctrls[i]->ldctl_iscritical);
139 ber_free(ber, 1);
145 rc = ber_printf(ber, "o}", ctrls[i]->ldctl_value.bv_val, ctrls[i]->ldctl_value.bv_len);
147 rc = ber_printf(ber, "}");
149 ber_free(ber, 1);
154 rc = ber_printf(ber, "}");
156 ber_free(ber, 1);
163 /* Decode the sequence of control from the ber, return a NULL terminated list of LDAPControl* */
164 LDAPControl ** ldap_controls_decode(BerElement *ber, int *errcode)
172 BerElement tmpber = *ber;
187 for (tag = ber_first_element(ber, &len, &opaque );
189 tag = ber_next_element (ber, &len, opaque )) {
198 if (ber_scanf(ber, "{a", &aCtrl->ldctl_oid) == LBER_ERROR){
205 ttag = ber_peek_tag(ber, &tlen);
207 if (ber_scanf(ber, "b", &aCtrl->ldctl_iscritical) == LBER_ERROR){
213 ttag = ber_peek_tag(ber, &tlen);
216 if (ber_scanf(ber, "o", &aCtrl->ldctl_value) == LBER_ERROR){
230 if (ber_scanf(ber, "}") == LBER_ERROR){
243 int ldap_build_control(char *oid, BerElement *ber, int freeber,
249 if (ber == NULL) {
253 rc = ber_flatten(ber, &bvp);
255 ber_free(ber, 1);