NET-SNMP的 asn 操作接口

 /*移植自net-snmp的api接口*/
int           asn_check_packet(uchar *pkt, size_t len);
uchar         *asn_parse_int(uchar *data, size_t *datalength, uchar *type, long *intp,
                              size_t intsize);
uchar         *asn_build_int(uchar *data, size_t *datalength, uchar type, long *intsize,
                              size_t);
uchar         *asn_parse_unsigned_int(uchar *data, size_t *datalength, uchar *type,
                                       ulong *intp, size_t intsize);
uchar         *asn_build_unsigned_int(uchar *data, size_t *datalength, uchar type,
                                       ulong *intp, size_t intsize);
uchar         *asn_parse_string(uchar *data, size_t *datalength, uchar *type,
                                 uchar *string, size_t *strlength);
uchar         *asn_build_string(uchar *data, size_t *datalength, uchar type,
                                 const uchar *string, size_t strlength);
uchar         *asn_parse_header(uchar *data, size_t *datalength, uchar *type);
uchar         *asn_parse_sequence(uchar *data, size_t *datalength, uchar *type, uchar expected_type,      /* must be this type */
                                   const char *estr);       /* error message prefix */
uchar         *asn_build_header(uchar *data, size_t *datalength, uchar type, size_t length);
uchar         *asn_build_sequence(uchar *data, size_t *datalength, uchar type, size_t length);
uchar         *asn_parse_length(uchar *data, ulong *length);
uchar         *asn_build_length(uchar *data, size_t *datalength, size_t length);
uchar         *asn_parse_objid(uchar *data, size_t *datalength, uchar *type, ulong *objid,
                                size_t *objidlength);
uchar         *asn_build_objid(uchar *data, size_t *datalength, uchar type, ulong *objid,
                                size_t objidlength);
uchar         *asn_parse_null(uchar *data, size_t *datalength, uchar *type);
uchar         *asn_build_null(uchar *data, size_t *datalength, uchar type);
uchar         *asn_parse_bitstring(uchar *data, size_t *datalength, uchar *type,
                                    uchar *string, size_t *strlength);
uchar         *asn_build_bitstring(uchar *data, size_t *datalength, uchar type,
                                    uchar *string, size_t strlength);
uchar         *asn_parse_unsigned_int64(uchar *data, size_t *datalength, uchar *type,
                                         struct counter64 *cp, size_t countersize);
uchar         *asn_build_unsigned_int64(uchar *data, size_t *datalength, uchar type,
                                         struct counter64 *cp, size_t countersize);
uchar         *asn_parse_signed_int64(uchar *data, size_t *datalength, uchar *type,
                                       struct counter64 *cp, size_t countersize);
uchar         *asn_build_signed_int64(uchar *data, size_t *datalength, uchar type,
                                       struct counter64 *cp, size_t countersize);
uchar         *asn_build_float(uchar *data, size_t *datalength, uchar type, float *,
                                size_t);
uchar         *asn_parse_float(uchar *data, size_t *datalength, uchar *type, float *floatp,
                                size_t floatsize);
uchar         *asn_build_double(uchar *data, size_t *datalength, uchar type, double *doublep,
                                 size_t doublesize);
uchar         *asn_parse_double(uchar *data, size_t *datalength, uchar *type,
                                 double *doublep, size_t doublesize);
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章