- fix peer to notify
[oweals/gnunet.git] / src / mesh / mesh_path.c
index f1c68c00561a285dcf9149a0eb6b911428b4f16f..c68a2ea7813629f8d28961594a9b2d62fb13c066 100644 (file)
@@ -60,7 +60,7 @@ path_new (unsigned int length)
 {
   struct MeshPeerPath *p;
 
-  p = GNUNET_malloc (sizeof (struct MeshPeerPath));
+  p = GNUNET_new (struct MeshPeerPath);
   if (length > 0)
   {
     p->length = length;
@@ -182,6 +182,24 @@ path_destroy (struct MeshPeerPath *p)
   return GNUNET_OK;
 }
 
+char *
+path_2s (struct MeshPeerPath *p)
+{
+  char *s;
+  char *old;
+  unsigned int i;
+
+  s = old = NULL;
+  for (i = 0; i < p->length; i++)
+  {
+    GNUNET_asprintf (&s, "%s %s",
+                     old, GNUNET_i2s (GNUNET_PEER_resolve2 (p->peers[i])));
+    GNUNET_free_non_null (old);
+    old = s;
+  }
+  return s;
+}
+
 void
 path_debug (struct MeshPeerPath *p)
 {