tlvdb->next = other;
}
-void tlvdb_visit(const struct tlvdb *tlvdb, tlv_cb cb, void *data)
+void tlvdb_visit(const struct tlvdb *tlvdb, tlv_cb cb, void *data, int level)
{
struct tlvdb *next = NULL;
for (; tlvdb; tlvdb = next) {
next = tlvdb->next;
- cb(data, &tlvdb->tag);
- tlvdb_visit(tlvdb->children, cb, data);
+ cb(data, &tlvdb->tag, level);
+ tlvdb_visit(tlvdb->children, cb, data, level+1);
}
}