# tlv.h

Go to the documentation of this file.

    00001 /***************************************************************************
    00002  $RCSfile: tlv.h,v $
    00003                              -------------------
    00004     cvs         : $Id: tlv.h,v 1.2 2004/08/09 13:13:58 cstim Exp $
    00005     begin       : Sun Jun 13 2004
    00006     copyright   : (C) 2004 by Martin Preuss
    00007     email       : martin@libchipcard.de
    00008
    00009  ***************************************************************************
    00010  *          Please see toplevel file COPYING for license details           *
    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 /* GWENHYWFAR_TLV_H */
    00054