Add checks to GNUNET_PEER_resolve2
authorDavid Barksdale <amatus.amongus@gmail.com>
Sun, 4 Sep 2016 15:46:02 +0000 (15:46 +0000)
committerDavid Barksdale <amatus.amongus@gmail.com>
Sun, 4 Sep 2016 15:46:02 +0000 (15:46 +0000)
src/util/peer.c

index 6d7a3a654d034ab26edb5a8bc0641d4a1d5c99b0..5d54a43012ce83b19c780f2e871d62a1e855324c 100644 (file)
@@ -133,6 +133,7 @@ GNUNET_PEER_intern (const struct GNUNET_PeerIdentity *pid)
   }
   if (0 == ret)
   {
+    memset (&table[0]->id, 0, sizeof (struct GNUNET_PeerIdentity));
     table[0]->pid = 0;
     table[0]->rc = 1;
     ret = 1;
@@ -243,6 +244,8 @@ GNUNET_PEER_resolve (GNUNET_PEER_Id id, struct GNUNET_PeerIdentity *pid)
 const struct GNUNET_PeerIdentity *
 GNUNET_PEER_resolve2 (GNUNET_PEER_Id id)
 {
+  GNUNET_assert (id < size);
+  GNUNET_assert (table[id]->rc > 0);
   return &table[id]->id;
 }