00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014 #ifndef GWENHYWFAR_TLV_H
00015 #define GWENHYWFAR_TLV_H
00016
00017 #include <gwenhywfar/buffer.h>
00018 #include <gwenhywfar/misc.h>
00019
00020
00021 typedef struct GWEN_TLV GWEN_TLV;
00022
00023 GWEN_LIST_FUNCTION_LIB_DEFS(GWEN_TLV, GWEN_TLV, GWENHYWFAR_API)
00024
00025
00026 GWENHYWFAR_API
00027 GWEN_TLV *GWEN_TLV_new();
00028 GWENHYWFAR_API
00029 void GWEN_TLV_free(GWEN_TLV *tlv);
00030
00031 GWENHYWFAR_API
00032 GWEN_TLV *GWEN_TLV_fromBuffer(GWEN_BUFFER *mbuf, int isBerTlv);
00033
00034 GWENHYWFAR_API
00035 int GWEN_TLV_IsBerTlv(const GWEN_TLV *tlv);
00036 GWENHYWFAR_API
00037 unsigned int GWEN_TLV_GetTagType(const GWEN_TLV *tlv);
00038 GWENHYWFAR_API
00039 unsigned int GWEN_TLV_GetTagLength(const GWEN_TLV *tlv);
00040 GWENHYWFAR_API
00041 const void *GWEN_TLV_GetTagData(const GWEN_TLV *tlv);
00042
00043 GWENHYWFAR_API
00044 int GWEN_TLV_IsContructed(const GWEN_TLV *tlv);
00045 GWENHYWFAR_API
00046 unsigned int GWEN_TLV_GetClass(const GWEN_TLV *tlv);
00047 GWENHYWFAR_API
00048 unsigned int GWEN_TLV_GetTagSize(const GWEN_TLV *tlv);
00049
00050
00051
00052
00053 #endif
00054