+/**
+ * PEERINFO calls this function to let us know about a possible peer
+ * that we might want to connect to.
+ *
+ * @param cls closure (not used)
+ * @param peer potential peer to connect to
+ * @param hello HELLO for this peer (or NULL)
+ * @param err_msg NULL if successful, otherwise contains error message
+ */
+static void
+process_notify (void *cls,
+ const struct GNUNET_PeerIdentity *peer,
+ const struct GNUNET_HELLO_Message *hello, const char *err_msg)
+{
+ struct HostSet *results;
+
+#if DEBUG_HOSTLIST_SERVER
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ "Peerinfo is notifying us to rebuild our hostlist\n");
+#endif
+ if (err_msg != NULL)
+ {
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ _("Error in communication with PEERINFO service\n"));
+ /* return; */
+ }
+ results = GNUNET_malloc (sizeof (struct HostSet));
+ GNUNET_assert (peerinfo != NULL);
+ pitr = GNUNET_PEERINFO_iterate (peerinfo,
+ NULL,
+ GNUNET_TIME_UNIT_MINUTES,
+ &host_processor, results);
+}