version 1.4, 2018/07/03 18:49:10 |
version 1.5, 2018/07/31 11:02:01 |
|
|
|
|
struct ber_element { |
struct ber_element { |
struct ber_element *be_next; |
struct ber_element *be_next; |
unsigned long be_type; |
unsigned int be_type; |
unsigned long be_encoding; |
unsigned int be_encoding; |
size_t be_len; |
size_t be_len; |
off_t be_offs; |
off_t be_offs; |
int be_free; |
int be_free; |
|
|
u_char *br_rptr; |
u_char *br_rptr; |
u_char *br_rend; |
u_char *br_rend; |
|
|
unsigned long (*br_application)(struct ber_element *); |
unsigned int (*br_application)(struct ber_element *); |
}; |
}; |
|
|
/* well-known ber_element types */ |
/* well-known ber_element types */ |
#define BER_TYPE_DEFAULT ((unsigned long)-1) |
#define BER_TYPE_DEFAULT ((unsigned int)-1) |
#define BER_TYPE_EOC 0 |
#define BER_TYPE_EOC 0 |
#define BER_TYPE_BOOLEAN 1 |
#define BER_TYPE_BOOLEAN 1 |
#define BER_TYPE_INTEGER 2 |
#define BER_TYPE_INTEGER 2 |
|
|
}; |
}; |
|
|
__BEGIN_DECLS |
__BEGIN_DECLS |
struct ber_element *ber_get_element(unsigned long); |
struct ber_element *ber_get_element(unsigned int); |
void ber_set_header(struct ber_element *, int, |
void ber_set_header(struct ber_element *, int, |
unsigned long); |
unsigned int); |
void ber_link_elements(struct ber_element *, |
void ber_link_elements(struct ber_element *, |
struct ber_element *); |
struct ber_element *); |
struct ber_element *ber_unlink_elements(struct ber_element *); |
struct ber_element *ber_unlink_elements(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 int (*)(struct ber_element *)); |
void ber_set_writecallback(struct ber_element *, |
void ber_set_writecallback(struct ber_element *, |
void (*)(void *, size_t), void *); |
void (*)(void *, size_t), void *); |
void ber_free(struct ber *); |
void ber_free(struct ber *); |