From e163fb4e0712105b71ae508d441d06220eff5c6a Mon Sep 17 00:00:00 2001 From: Bart Polot Date: Wed, 21 Sep 2011 20:50:20 +0000 Subject: Added debug print of tree structure --- src/mesh/mesh_tunnel_tree.c | 22 ++++++++++++++++++++++ src/mesh/mesh_tunnel_tree.h | 6 +++++- src/mesh/test_mesh_path_api.c | 7 ++++--- 3 files changed, 31 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/mesh/mesh_tunnel_tree.c b/src/mesh/mesh_tunnel_tree.c index 929b1b69b..747789096 100644 --- a/src/mesh/mesh_tunnel_tree.c +++ b/src/mesh/mesh_tunnel_tree.c @@ -28,6 +28,28 @@ #include "mesh_tunnel_tree.h" +static void +debug_node(struct MeshTunnelTreeNode *n, uint16_t level) +{ + uint16_t i; + + for (i = 0; i < level; i++) + fprintf(stderr, " "); + fprintf(stderr, "%u\n", n->peer); + for (i = 0; i < n->nchildren; i++) + debug_node(&n->children[i], level + 1); +} + + + +void +tree_debug(struct MeshTunnelTree *t) +{ + debug_node(t->root, 0); +} + + + /** * Invert the path * diff --git a/src/mesh/mesh_tunnel_tree.h b/src/mesh/mesh_tunnel_tree.h index 401ebb089..6573a85bd 100644 --- a/src/mesh/mesh_tunnel_tree.h +++ b/src/mesh/mesh_tunnel_tree.h @@ -271,4 +271,8 @@ tree_node_destroy (struct MeshTunnelTreeNode *n); * @param t Tree to be destroyed */ void -tree_destroy (struct MeshTunnelTree *t); \ No newline at end of file +tree_destroy (struct MeshTunnelTree *t); + + +void +tree_debug(struct MeshTunnelTree *t); \ No newline at end of file diff --git a/src/mesh/test_mesh_path_api.c b/src/mesh/test_mesh_path_api.c index 36eace93d..3d6a06857 100644 --- a/src/mesh/test_mesh_path_api.c +++ b/src/mesh/test_mesh_path_api.c @@ -233,15 +233,16 @@ main (int argc, char *argv[]) GNUNET_log(GNUNET_ERROR_TYPE_WARNING, "Retrieved peer wrong nchildren!\n"); failed++; } - path->length++; - path_destroy(path); - finish(); GNUNET_log(GNUNET_ERROR_TYPE_DEBUG, "test: Adding third path...\n"); path->length++; path->peers[3] = 4; tree_add_path(tree, path, &cb); + path_destroy(path); + tree_debug(tree); + finish(); + node = tree_find_peer(tree->root, 2); if (node->peer != 2) { -- cgit v1.2.3