# TLVutils Module — vsmartcard 2021-04-28 documentation

# TLVutils Module

`virtualsmartcard.TLVutils.``bertlv_pack`(data)

  Packs a bertlv list of 3-tuples (tag, length, newvalue) into a string

`virtualsmartcard.TLVutils.``bertlv_unpack`(data)

  Unpacks a bertlv coded string into a list of 3-tuples (tag, length, newvalue).

`virtualsmartcard.TLVutils.``decodeDiscretionaryDataObjects`(tlv_data)

`virtualsmartcard.TLVutils.``decodeExtendedHeaderList`(tlv_data)

`virtualsmartcard.TLVutils.``decodeHeaderList`(tlv_data)

`virtualsmartcard.TLVutils.``decodeOffsetDataObjects`(tlv_data)

`virtualsmartcard.TLVutils.``decodeTagList`(tlv_data)

`virtualsmartcard.TLVutils.``encodeDataOffsetObjects`(datalist)

`virtualsmartcard.TLVutils.``encodeDiscretionaryDataObjects`(datalist)

`virtualsmartcard.TLVutils.``encodebertlvDatalist`(tag, datalist)

`virtualsmartcard.TLVutils.``pack`(tlv_data, recalculate_length=False)

`virtualsmartcard.TLVutils.``simpletlv_pack`(tlv_data, recalculate_length=False)

`virtualsmartcard.TLVutils.``simpletlv_unpack`(data)

  Unpacks a simpletlv coded string into a list of 3-tuples (tag, length, newvalue).

`virtualsmartcard.TLVutils.``tlv_find_tag`(tlv_data, tag, num_results=None)

  Find (and return) all instances of tag in the given tlv structure (as returned by unpack). If num_results is specified then at most that many results will be returned.

`virtualsmartcard.TLVutils.``tlv_find_tags`(tlv_data, tags, num_results=None)

  Find (and return) all instances of tags in the given tlv structure (as returned by unpack). If num_results is specified then at most that many results will be returned.

`virtualsmartcard.TLVutils.``tlv_unpack`(data)

`virtualsmartcard.TLVutils.``unpack`(data, with_marks=None, offset=0, include_filler=False)