version 1.3, 2018/06/29 18:28:41 |
version 1.4, 2018/07/03 18:49:10 |
|
|
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
*/ |
*/ |
|
|
|
#ifndef _BER_H |
|
#define _BER_H |
|
|
struct ber_element { |
struct ber_element { |
struct ber_element *be_next; |
struct ber_element *be_next; |
unsigned long be_type; |
unsigned long be_type; |
unsigned long be_encoding; |
unsigned long be_encoding; |
size_t be_len; |
size_t be_len; |
|
off_t be_offs; |
int be_free; |
int be_free; |
u_int8_t be_class; |
u_int8_t be_class; |
|
void (*be_cb)(void *, size_t); |
|
void *be_cbarg; |
union { |
union { |
struct ber_element *bv_sub; |
struct ber_element *bv_sub; |
void *bv_val; |
void *bv_val; |
|
|
}; |
}; |
|
|
struct ber { |
struct ber { |
|
off_t br_offs; |
u_char *br_wbuf; |
u_char *br_wbuf; |
u_char *br_wptr; |
u_char *br_wptr; |
u_char *br_wend; |
u_char *br_wend; |
|
|
int ber_write_elements(struct ber *, struct ber_element *); |
int ber_write_elements(struct ber *, struct ber_element *); |
void ber_set_readbuf(struct ber *, void *, size_t); |
void ber_set_readbuf(struct ber *, void *, size_t); |
struct ber_element *ber_read_elements(struct ber *, struct ber_element *); |
struct ber_element *ber_read_elements(struct ber *, struct ber_element *); |
|
off_t ber_getpos(struct ber_element *); |
void ber_free_element(struct ber_element *); |
void ber_free_element(struct ber_element *); |
void ber_free_elements(struct ber_element *); |
void ber_free_elements(struct ber_element *); |
size_t ber_calc_len(struct ber_element *); |
size_t ber_calc_len(struct ber_element *); |
void ber_set_application(struct ber *, |
void ber_set_application(struct ber *, |
unsigned long (*)(struct ber_element *)); |
unsigned long (*)(struct ber_element *)); |
|
void ber_set_writecallback(struct ber_element *, |
|
void (*)(void *, size_t), void *); |
void ber_free(struct ber *); |
void ber_free(struct ber *); |
|
int ber_oid_cmp(struct ber_oid *, struct ber_oid *); |
|
|
__END_DECLS |
__END_DECLS |
|
|
|
#endif /* _BER_H */ |