Scroll to navigation

TLV(3) Library Functions Manual TLV(3)

NAME

tlv_encode, tlv_decode
TLV Manipulation Functions

LIBRARY

Mifare card manipulation library (libfreefare, -lfreefare)

SYNOPSIS

#include <freefare.h>
uint8_t *
tlv_encode(const uint8_t type, const uint8_t *istream, uint16_t isize, size_t *osize);
uint8_t *
tlv_decode(const uint8_t *istream, uint8_t *type, uint16_t *size);

DESCRIPTION

The tlv_encode() and tlv_decode() functions are helpers to manipulate TLV (Text-Length-Value) data.
The tlv_encode() function converts the isize bytes long istream message into a TLV stream of type type and set the value of osize to the length of the returned stream.
The tlv_decode() function converts the istream TLV stream and set the type argument according to the type of the stream, and set the size argument to the length of the returned stream.

RETURN VALUES

Both functions return memory allocated using malloc(3) which should be reclaimed using free(3) after usage.

SEE ALSO

freefare(3), malloc(3), free(3)

AUTHORS

Romain Tartiere ⟨romain@blogreen.org⟩
Romuald Conty ⟨romuald@libnfc.org⟩
March 30, 2010 Debian