#include "emvcore.h"
-static bool print_cb(void *data, const struct tlv *tlv) {
- emv_tag_dump(tlv, stdout);
- dump_buffer(tlv->value, tlv->len, stdout);
+static bool print_cb(void *data, const struct tlv *tlv, int level, bool is_leaf) {
+ emv_tag_dump(tlv, stdout, level);
+ if (is_leaf) {
+ dump_buffer(tlv->value, tlv->len, stdout, level);
+ }
return true;
}
if (t) {
PrintAndLog("TLV decoded:");
- tlvdb_visit(t, print_cb, NULL);
+ tlvdb_visit(t, print_cb, NULL, 0);
tlvdb_free(t);
} else {
PrintAndLog("TLV ERROR: Can't parse response as TLV tree.");