Lines Matching defs:ber

70 ber_put_tag(BerElement	*ber, ber_tag_t tag, int nosos)
79 return (kmfber_write(ber,
111 kmfber_put_len(BerElement *ber, ber_int_t len, int nosos)
123 return (kmfber_write(ber,
146 if (kmfber_write(ber, &lenlen, 1, nosos) != 1)
151 if (kmfber_write(ber,
159 ber_put_int_or_enum(BerElement *ber, ber_int_t num, ber_tag_t tag)
194 if ((taglen = ber_put_tag(ber, tag, 0)) == -1)
197 if ((lenlen = kmfber_put_len(ber, len, 0)) == -1)
201 if (kmfber_write(ber,
210 kmfber_put_enum(BerElement *ber, ber_int_t num, ber_tag_t tag)
215 return (ber_put_int_or_enum(ber, num, tag));
219 ber_put_int(BerElement *ber, ber_int_t num, ber_tag_t tag)
224 return (ber_put_int_or_enum(ber, num, tag));
228 ber_put_oid(BerElement *ber, struct berval *oid, ber_tag_t tag)
235 if ((taglen = ber_put_tag(ber, tag, 0)) == -1)
239 if ((lenlen = kmfber_put_len(ber, len, 0)) == -1 ||
240 kmfber_write(ber, oid->bv_val, oid->bv_len, 0) !=
251 ber_put_big_int(BerElement *ber, ber_tag_t tag, char *data,
260 if ((taglen = ber_put_tag(ber, tag, 0)) == -1)
268 if ((lenlen = kmfber_put_len(ber, ilen, 0)) == -1)
272 if ((data[0] & 0x80) && kmfber_write(ber, &zero, 1, 0) != 1)
278 if (kmfber_write(ber, data, ilen, 0) != (ber_int_t)ilen) {
288 kmfber_put_ostring(BerElement *ber, char *str, ber_len_t len,
299 if ((taglen = ber_put_tag(ber, tag, 0)) == -1)
303 if (len > 0 && (ber->ber_options & KMFBER_OPT_TRANSLATE_STRINGS) != 0 &&
304 ber->ber_encode_translate_proc != NULL) {
305 if ((*(ber->ber_encode_translate_proc))(&str, &len, 0)
320 if ((lenlen = kmfber_put_len(ber, ilen, 0)) == -1 ||
321 kmfber_write(ber, str, len, 0) != (ber_int_t)len) {
338 kmfber_put_string(BerElement *ber, char *str, ber_tag_t tag)
340 return (kmfber_put_ostring(ber, str, (ber_len_t)strlen(str), tag));
344 kmfber_put_bitstring(BerElement *ber, char *str,
353 if ((taglen = ber_put_tag(ber, tag, 0)) == -1)
358 if ((lenlen = kmfber_put_len(ber, len + 1, 0)) == -1)
361 if (kmfber_write(ber, (char *)&unusedbits, 1, 0) != 1)
364 if (kmfber_write(ber, str, len, 0) != len)
372 kmfber_put_null(BerElement *ber, ber_tag_t tag)
379 if ((taglen = ber_put_tag(ber, tag, 0)) == -1)
382 if (kmfber_put_len(ber, 0, 0) != 1)
389 kmfber_put_boolean(BerElement *ber, int boolval, ber_tag_t tag)
398 if ((taglen = ber_put_tag(ber, tag, 0)) == -1)
401 if (kmfber_put_len(ber, 1, 0) != 1)
404 if (kmfber_write(ber, (char *)(boolval ? &trueval : &falseval), 1, 0)
419 * we pre-allocate a small set of them within the ber element structure.
424 ber_start_seqorset(BerElement *ber, ber_tag_t tag)
429 if (ber->ber_sos_stack_posn < SOS_STACK_SIZE) {
431 new_sos = &ber->ber_sos_stack[ber->ber_sos_stack_posn];
439 ber->ber_sos_stack_posn++;
441 if (ber->ber_sos == NULLSEQORSET)
442 new_sos->sos_first = ber->ber_ptr;
444 new_sos->sos_first = ber->ber_sos->sos_ptr;
451 new_sos->sos_next = ber->ber_sos;
454 ber->ber_sos = new_sos;
455 if (ber->ber_sos->sos_ptr > ber->ber_end) {
456 if (kmfber_realloc(ber, ber->ber_sos->sos_ptr -
457 ber->ber_end) != 0)
464 kmfber_start_seq(BerElement *ber, ber_tag_t tag)
469 return (ber_start_seqorset(ber, tag));
473 kmfber_start_set(BerElement *ber, ber_tag_t tag)
478 return (ber_start_seqorset(ber, tag));
482 ber_put_seqorset(BerElement *ber)
487 Seqorset **sos = &ber->ber_sos;
500 if (ber->ber_options & KMFBER_OPT_USE_DER) {
508 if ((taglen = ber_put_tag(ber, (*sos)->sos_tag, 1)) == -1)
511 if (ber->ber_options & KMFBER_OPT_USE_DER) {
513 if (kmfber_put_len(ber, len, 1) == -1)
529 if (kmfber_write(ber, (char *)&ltag, 1, 1) != 1)
533 if (kmfber_write(ber,
540 ber->ber_ptr += len;
550 if (ber->ber_options & KMFBER_OPT_USE_DER) {
558 if (ber->ber_options & KMFBER_OPT_USE_DER) {
589 if (ber->ber_sos_stack_posn > SOS_STACK_SIZE) {
592 ber->ber_sos_stack_posn--;
600 kmfber_printf(BerElement *ber, const char *fmt, ...)
622 rc = kmfber_put_boolean(ber, i, ber->ber_tag);
627 rc = ber_put_int(ber, (ber_int_t)i, ber->ber_tag);
633 rc = ber_put_oid(ber, oid, ber->ber_tag);
638 rc = ber_put_big_int(ber, ber->ber_tag, s, len);
643 rc = kmfber_put_enum(ber, (ber_int_t)i, ber->ber_tag);
648 rc = kmfber_put_len(ber, t, 0);
651 rc = kmfber_put_null(ber, ber->ber_tag);
657 rc = kmfber_put_ostring(ber, s, len, ber->ber_tag);
662 rc = kmfber_put_string(ber, s, ber->ber_tag);
668 rc = kmfber_put_bitstring(ber, s, len, ber->ber_tag);
672 ber->ber_tag = va_arg(ap, ber_tag_t);
673 ber->ber_usertag = 1;
678 rc = ber_put_tag(ber, t, 0);
685 if ((rc = kmfber_put_string(ber, ss[i],
686 ber->ber_tag)) == -1)
695 if ((rc = kmfber_put_ostring(ber, bv[i]->bv_val,
696 bv[i]->bv_len, ber->ber_tag)) == -1)
702 rc = kmfber_start_seq(ber, ber->ber_tag);
706 rc = ber_put_seqorset(ber);
710 rc = kmfber_start_set(ber, ber->ber_tag);
714 rc = ber_put_seqorset(ber);
728 if (ber->ber_usertag == 0)
729 ber->ber_tag = KMFBER_DEFAULT;
731 ber->ber_usertag = 0;