gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r37472 - gnunet/src/include gnunet/src/transport gnunet-gtk


From: gnunet
Subject: [GNUnet-SVN] r37472 - gnunet/src/include gnunet/src/transport gnunet-gtk/contrib gnunet-gtk/src/peerinfo
Date: Thu, 7 Jul 2016 00:10:48 +0200

Author: grothoff
Date: 2016-07-07 00:10:48 +0200 (Thu, 07 Jul 2016)
New Revision: 37472

Removed:
   gnunet/src/transport/transport_api_monitor_validation.c
Modified:
   gnunet-gtk/contrib/gnunet_peerinfo_gtk_main_window.glade
   gnunet-gtk/src/peerinfo/gnunet-peerinfo-gtk.c
   gnunet/src/include/gnunet_protocols.h
   gnunet/src/include/gnunet_transport_service.h
   gnunet/src/transport/Makefile.am
   gnunet/src/transport/gnunet-service-transport_clients.c
   gnunet/src/transport/gnunet-service-transport_clients.h
   gnunet/src/transport/gnunet-service-transport_validation.c
   gnunet/src/transport/gnunet-service-transport_validation.h
   gnunet/src/transport/gnunet-transport.c
Log:
removing GNUNET_TRANSPORT_monitor_validation-API

Modified: gnunet/src/include/gnunet_protocols.h
===================================================================
--- gnunet/src/include/gnunet_protocols.h       2016-07-06 21:57:30 UTC (rev 
37471)
+++ gnunet/src/include/gnunet_protocols.h       2016-07-06 22:10:48 UTC (rev 
37472)
@@ -1341,17 +1341,6 @@
 #define GNUNET_MESSAGE_TYPE_TRANSPORT_TRAFFIC_METRIC 385
 
 /**
- * Request to monitor address validations by a peer or all peers.
- */
-#define GNUNET_MESSAGE_TYPE_TRANSPORT_MONITOR_VALIDATION_REQUEST 386
-
-/**
- * Response to #GNUNET_MESSAGE_TYPE_TRANSPORT_MONITOR_VALIDATION_REQUEST
- * request to iterate over all known addresses.
- */
-#define GNUNET_MESSAGE_TYPE_TRANSPORT_MONITOR_VALIDATION_RESPONSE 387
-
-/**
  * Request to start monitoring the connection state of plugins.
  */
 #define GNUNET_MESSAGE_TYPE_TRANSPORT_MONITOR_PLUGIN_START 388

Modified: gnunet/src/include/gnunet_transport_service.h
===================================================================
--- gnunet/src/include/gnunet_transport_service.h       2016-07-06 21:57:30 UTC 
(rev 37471)
+++ gnunet/src/include/gnunet_transport_service.h       2016-07-06 22:10:48 UTC 
(rev 37472)
@@ -628,126 +628,6 @@
 GNUNET_TRANSPORT_monitor_peers_cancel (struct 
GNUNET_TRANSPORT_PeerMonitoringContext *pic);
 
 
-/**
- * Handle for a #GNUNET_TRANSPORT_monitor_validation_entries() operation.
- */
-struct GNUNET_TRANSPORT_ValidationMonitoringContext;
-
-
-/**
- * Current state of a validation process.
- *
- * FIXME: what state is used to indicate that a validation
- * was successful? If that is clarified/determined, "UGH" in
- * ~gnunet-peerinfo-gtk.c:1103 should be resolved.
- */
-enum GNUNET_TRANSPORT_ValidationState
-{
-  /**
-   * Undefined state
-   *
-   * Used for final callback indicating operation done
-   */
-  GNUNET_TRANSPORT_VS_NONE,
-
-  /**
-   * Fresh validation entry
-   *
-   * Entry was just created, no validation process was executed
-   */
-  GNUNET_TRANSPORT_VS_NEW,
-
-  /**
-   * Updated validation entry
-   *
-   * This is an update for an existing validation entry
-   */
-  GNUNET_TRANSPORT_VS_UPDATE,
-
-  /**
-   * Timeout for validation entry
-   *
-   * A timeout occured during the validation process
-   */
-  GNUNET_TRANSPORT_VS_TIMEOUT,
-
-  /**
-   * Validation entry is removed
-   *
-   * The validation entry is getting removed due to a failed validation
-   */
-  GNUNET_TRANSPORT_VS_REMOVE
-};
-
-
-/**
- * Function to call with validation information about a peer
- *
- * This function is called by the transport validation monitoring api to
- * indicate a change to a validation entry. The information included represent
- * the current state of the validation entry,
- *
- * If the monitoring was called with `one_shot==GNUNET_YES`, a final callback
- * with `address==NULL` is executed.
- *
- * @param cls closure
- * @param address address this update is about,
- *      NULL if this is the final last callback for a iteration operation
- * @param last_validation when was this address last validated
- * @param valid_until when does this address expire
- * @param next_validation time of the next validation operation
- * @param state state in the validation state machine
- */
-typedef void
-(*GNUNET_TRANSPORT_ValidationIterateCallback) (void *cls,
-                                               const struct 
GNUNET_HELLO_Address *address,
-                                               struct GNUNET_TIME_Absolute 
last_validation,
-                                               struct GNUNET_TIME_Absolute 
valid_until,
-                                               struct GNUNET_TIME_Absolute 
next_validation,
-                                               enum 
GNUNET_TRANSPORT_ValidationState state);
-
-
-/**
- * Convert validation state to human-readable string.
- *
- * @param state the state value
- * @return corresponding string
- */
-const char *
-GNUNET_TRANSPORT_vs2s (enum GNUNET_TRANSPORT_ValidationState state);
-
-
-/**
- * Return information about pending address validation operations for a 
specific
- * or all peers
- *
- * @param cfg configuration to use
- * @param peer a specific peer identity to obtain validation entries for,
- *      NULL for all peers
- * @param one_shot #GNUNET_YES to return all entries and then end (with 
NULL+NULL),
- *                 #GNUNET_NO to monitor validation entries continuously
- * @param timeout how long is the lookup allowed to take at most
- * @param validation_callback function to call with the results
- * @param validation_callback_cls closure for @a validation_callback
- */
-struct GNUNET_TRANSPORT_ValidationMonitoringContext *
-GNUNET_TRANSPORT_monitor_validation_entries (const struct 
GNUNET_CONFIGURATION_Handle *cfg,
-                                             const struct GNUNET_PeerIdentity 
*peer,
-                                             int one_shot,
-                                             struct GNUNET_TIME_Relative 
timeout,
-                                             
GNUNET_TRANSPORT_ValidationIterateCallback validation_callback,
-                                             void *validation_callback_cls);
-
-
-/**
- * Return information about all current pending validation operations
- *
- * @param vic handle for the request to cancel
- */
-void
-GNUNET_TRANSPORT_monitor_validation_entries_cancel (struct 
GNUNET_TRANSPORT_ValidationMonitoringContext *vic);
-
-
 /* *********************** Blacklisting ************************ */
 
 /**

Modified: gnunet/src/transport/Makefile.am
===================================================================
--- gnunet/src/transport/Makefile.am    2016-07-06 21:57:30 UTC (rev 37471)
+++ gnunet/src/transport/Makefile.am    2016-07-06 22:10:48 UTC (rev 37472)
@@ -166,8 +166,8 @@
   transport_api_blacklist.c \
   transport_api_address_to_string.c \
   transport_api_monitor_peers.c \
-  transport_api_monitor_plugins.c \
-  transport_api_monitor_validation.c
+  transport_api_monitor_plugins.c
+
 libgnunettransport_la_LIBADD = \
   $(top_builddir)/src/hello/libgnunethello.la \
   $(top_builddir)/src/ats/libgnunetats.la \

Modified: gnunet/src/transport/gnunet-service-transport_clients.c
===================================================================
--- gnunet/src/transport/gnunet-service-transport_clients.c     2016-07-06 
21:57:30 UTC (rev 37471)
+++ gnunet/src/transport/gnunet-service-transport_clients.c     2016-07-06 
22:10:48 UTC (rev 37472)
@@ -244,16 +244,6 @@
 static struct MonitoringClient *peer_monitoring_clients_tail;
 
 /**
- * Head of linked list of validation monitoring clients.
- */
-static struct MonitoringClient *val_monitoring_clients_head;
-
-/**
- * Tail of linked list of validation monitoring clients.
- */
-static struct MonitoringClient *val_monitoring_clients_tail;
-
-/**
  * Notification context, to send updates on changes to active addresses
  * of our neighbours.
  */
@@ -387,47 +377,6 @@
 
 
 /**
- * Setup a new monitoring client using the given server client handle and
- * the peer identity.
- *
- * @param client server's client handle to create our internal handle for
- * @param peer identity of the peer to monitor the addresses of,
- *             zero to monitor all neighrours.
- * @return handle to the new monitoring client
- */
-static struct MonitoringClient *
-setup_val_monitoring_client (struct GNUNET_SERVER_Client *client,
-                             struct GNUNET_PeerIdentity *peer)
-{
-  struct MonitoringClient *mc;
-
-  GNUNET_assert (NULL ==
-                 lookup_monitoring_client (val_monitoring_clients_head,
-                                           client));
-  mc = GNUNET_new (struct MonitoringClient);
-  mc->client = client;
-  mc->peer = *peer;
-  GNUNET_CONTAINER_DLL_insert (val_monitoring_clients_head,
-                               val_monitoring_clients_tail,
-                               mc);
-  GNUNET_SERVER_notification_context_add (val_nc, client);
-
-  if (0 != memcmp (peer,
-                   &all_zeros,
-                   sizeof (struct GNUNET_PeerIdentity)))
-    GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
-                "Client %p started monitoring of the peer `%s'\n",
-                mc,
-                GNUNET_i2s (peer));
-  else
-    GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
-                "Client %p started monitoring all peers\n",
-                mc);
-  return mc;
-}
-
-
-/**
  * Function called to notify a client about the socket being ready to
  * queue more data.  @a buf will be NULL and @a size zero if the socket
  * was closed for writing in the meantime.
@@ -568,15 +517,6 @@
                                  mc);
     GNUNET_free (mc);
   }
-  mc = lookup_monitoring_client (val_monitoring_clients_head,
-                                 client);
-  if (NULL != mc)
-  {
-    GNUNET_CONTAINER_DLL_remove (val_monitoring_clients_head,
-                                 val_monitoring_clients_tail,
-                                 mc);
-    GNUNET_free (mc);
-  }
   tc = lookup_client (client);
   if (NULL == tc)
     return;
@@ -1091,55 +1031,6 @@
 
 
 /**
- * Compose #PeerIterateResponseMessage using the given peer and address.
- *
- * @param peer identity of the peer
- * @param address the address, NULL on disconnect
- * @return composed message
- */
-static struct ValidationIterateResponseMessage *
-compose_validation_iterate_response_message (const struct GNUNET_PeerIdentity 
*peer,
-                                             const struct GNUNET_HELLO_Address 
*address)
-{
-  struct ValidationIterateResponseMessage *msg;
-  size_t size;
-  size_t tlen;
-  size_t alen;
-  char *addr;
-
-  GNUNET_assert (NULL != peer);
-  if (NULL != address)
-  {
-    tlen = strlen (address->transport_name) + 1;
-    alen = address->address_length;
-  }
-  else
-  {
-    tlen = 0;
-    alen = 0;
-  }
-  size = (sizeof (struct ValidationIterateResponseMessage) + alen + tlen);
-  msg = GNUNET_malloc (size);
-  msg->header.size = htons (size);
-  msg->header.type =
-      htons (GNUNET_MESSAGE_TYPE_TRANSPORT_MONITOR_VALIDATION_RESPONSE);
-  msg->reserved = htonl (0);
-  msg->peer = *peer;
-  msg->addrlen = htonl (alen);
-  msg->pluginlen = htonl (tlen);
-
-  if (NULL != address)
-  {
-    msg->local_address_info = htonl((uint32_t) address->local_info);
-    addr = (char *) &msg[1];
-    memcpy (addr, address->address, alen);
-    memcpy (&addr[alen], address->transport_name, tlen);
-  }
-  return msg;
-}
-
-
-/**
  * Context for #send_validation_information() and
  * #send_peer_information().
  */
@@ -1163,44 +1054,6 @@
 
 
 /**
- * Output information of validation entries to the given client.
- *
- * @param cls the `struct IterationContext *`
- * @param address the address
- * @param last_validation point in time when last validation was performed
- * @param valid_until point in time how long address is valid
- * @param next_validation point in time when next validation will be performed
- * @param state state of validation notification
- */
-static void
-send_validation_information (void *cls,
-                             const struct GNUNET_HELLO_Address *address,
-                             struct GNUNET_TIME_Absolute last_validation,
-                             struct GNUNET_TIME_Absolute valid_until,
-                             struct GNUNET_TIME_Absolute next_validation,
-                             enum GNUNET_TRANSPORT_ValidationState state)
-{
-  struct IterationContext *pc = cls;
-  struct ValidationIterateResponseMessage *msg;
-
-  if ( (GNUNET_YES != pc->all) &&
-       (0 != memcmp (&address->peer, &pc->id, sizeof (pc->id))) )
-    return;
-  GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
-              "Sending information about for validation entry for peer `%s' 
using address `%s'\n",
-              GNUNET_i2s (&address->peer),
-              (NULL != address) ? GST_plugins_a2s (address) : "<none>");
-  msg = compose_validation_iterate_response_message (&address->peer, address);
-  msg->last_validation = GNUNET_TIME_absolute_hton(last_validation);
-  msg->valid_until = GNUNET_TIME_absolute_hton(valid_until);
-  msg->next_validation = GNUNET_TIME_absolute_hton(next_validation);
-  msg->state = htonl ((uint32_t) state);
-  GNUNET_SERVER_transmit_context_append_message (pc->tc, &msg->header);
-  GNUNET_free (msg);
-}
-
-
-/**
  * Output information of neighbours to the given client.
  *
  * @param cls the `struct PeerIterationContext *`
@@ -1306,78 +1159,6 @@
 
 
 /**
- * Client asked to obtain information about a specific or all validation
- * processes
- *
- * @param cls unused
- * @param client the client
- * @param message the peer address information request
- */
-static void
-clients_handle_monitor_validation (void *cls,
-                                  struct GNUNET_SERVER_Client *client,
-                                  const struct GNUNET_MessageHeader *message)
-{
-  struct GNUNET_SERVER_TransmitContext *tc;
-  struct PeerMonitorMessage *msg;
-  struct IterationContext pc;
-
-  if (ntohs (message->type) != 
GNUNET_MESSAGE_TYPE_TRANSPORT_MONITOR_VALIDATION_REQUEST)
-  {
-    GNUNET_break (0);
-    GNUNET_SERVER_receive_done (client, GNUNET_SYSERR);
-    return;
-  }
-  if (ntohs (message->size) != sizeof (struct ValidationMonitorMessage))
-  {
-    GNUNET_break (0);
-    GNUNET_SERVER_receive_done (client, GNUNET_SYSERR);
-    return;
-  }
-  msg = (struct PeerMonitorMessage *) message;
-  if ( (GNUNET_YES != ntohl (msg->one_shot)) &&
-       (NULL != lookup_monitoring_client (val_monitoring_clients_head, 
client)) )
-  {
-    GNUNET_break (0);
-    GNUNET_SERVER_receive_done (client, GNUNET_SYSERR);
-    return;
-  }
-  GNUNET_SERVER_disable_receive_done_warning (client);
-  GNUNET_SERVER_client_mark_monitor (client);
-  pc.tc = tc = GNUNET_SERVER_transmit_context_create (client);
-
-  /* Send initial list */
-  if (0 == memcmp (&msg->peer,
-                   &all_zeros,
-                   sizeof (struct GNUNET_PeerIdentity)))
-  {
-    /* iterate over all neighbours */
-    pc.all = GNUNET_YES;
-    pc.id = msg->peer;
-  }
-  else
-  {
-    /* just return one neighbour */
-    pc.all = GNUNET_NO;
-    pc.id = msg->peer;
-  }
-  GST_validation_iterate (&send_validation_information,
-                          &pc);
-
-  if (GNUNET_YES != ntohl (msg->one_shot))
-  {
-    setup_val_monitoring_client (client, &msg->peer);
-  }
-  else
-  {
-    GNUNET_SERVER_transmit_context_append_data (tc, NULL, 0,
-                                                
GNUNET_MESSAGE_TYPE_TRANSPORT_MONITOR_VALIDATION_RESPONSE);
-  }
-  GNUNET_SERVER_transmit_context_run (tc, GNUNET_TIME_UNIT_FOREVER_REL);
-}
-
-
-/**
  * Function called by the plugin with information about the
  * current sessions managed by the plugin (for monitoring).
  *
@@ -1514,9 +1295,6 @@
     {&clients_handle_monitor_peers, NULL,
      GNUNET_MESSAGE_TYPE_TRANSPORT_MONITOR_PEER_REQUEST,
      sizeof (struct PeerMonitorMessage)},
-    {&clients_handle_monitor_validation, NULL,
-     GNUNET_MESSAGE_TYPE_TRANSPORT_MONITOR_VALIDATION_REQUEST,
-     sizeof (struct ValidationMonitorMessage)},
     {&GST_blacklist_handle_init, NULL,
      GNUNET_MESSAGE_TYPE_TRANSPORT_BLACKLIST_INIT,
      sizeof (struct GNUNET_MessageHeader)},
@@ -1658,49 +1436,6 @@
 
 
 /**
- * Broadcast the new validation changes to all clients monitoring the peer.
- *
- * @param peer peer this update is about (never NULL)
- * @param address address, NULL on disconnect
- * @param last_validation point in time when last validation was performed
- * @param valid_until point in time how long address is valid
- * @param next_validation point in time when next validation will be performed
- * @param state state of validation notification
- */
-void
-GST_clients_broadcast_validation_notification (const struct 
GNUNET_PeerIdentity *peer,
-                                               const struct 
GNUNET_HELLO_Address *address,
-                                               struct GNUNET_TIME_Absolute 
last_validation,
-                                               struct GNUNET_TIME_Absolute 
valid_until,
-                                               struct GNUNET_TIME_Absolute 
next_validation,
-                                               enum 
GNUNET_TRANSPORT_ValidationState state)
-{
-  struct ValidationIterateResponseMessage *msg;
-  struct MonitoringClient *mc;
-
-  GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
-              "Sending information about for validation entry for peer `%s' 
using address `%s'\n",
-              GNUNET_i2s(peer),
-              (address != NULL) ? GST_plugins_a2s (address) : "<none>");
-  msg = compose_validation_iterate_response_message (peer, address);
-  msg->last_validation = GNUNET_TIME_absolute_hton(last_validation);
-  msg->valid_until = GNUNET_TIME_absolute_hton(valid_until);
-  msg->next_validation = GNUNET_TIME_absolute_hton(next_validation);
-  msg->state = htonl ((uint32_t) state);
-  for (mc = val_monitoring_clients_head; NULL != mc; mc = mc->next)
-    if ((0 == memcmp (&mc->peer, &all_zeros,
-                      sizeof (struct GNUNET_PeerIdentity))) ||
-        (0 == memcmp (&mc->peer, peer,
-                      sizeof (struct GNUNET_PeerIdentity))))
-      GNUNET_SERVER_notification_context_unicast (val_nc,
-                                                  mc->client,
-                                                  &msg->header,
-                                                  GNUNET_NO);
-  GNUNET_free (msg);
-}
-
-
-/**
  * Mark the peer as down so we don't call the continuation
  * context in the future.
  *

Modified: gnunet/src/transport/gnunet-service-transport_clients.h
===================================================================
--- gnunet/src/transport/gnunet-service-transport_clients.h     2016-07-06 
21:57:30 UTC (rev 37471)
+++ gnunet/src/transport/gnunet-service-transport_clients.h     2016-07-06 
22:10:48 UTC (rev 37472)
@@ -97,24 +97,5 @@
 GST_clients_broadcast_disconnect (const struct GNUNET_PeerIdentity *peer);
 
 
-/**
- * Broadcast the new validation changes to all clients monitoring the peer.
- *
- * @param peer peer this update is about (never NULL)
- * @param address address, NULL on disconnect
- * @param last_validation point in time when last validation was performed
- * @param valid_until point in time how long address is valid
- * @param next_validation point in time when next validation will be performed
- * @param state state of validation notification
- */
-void
-GST_clients_broadcast_validation_notification (const struct 
GNUNET_PeerIdentity *peer,
-                                               const struct 
GNUNET_HELLO_Address *address,
-                                               struct GNUNET_TIME_Absolute 
last_validation,
-                                               struct GNUNET_TIME_Absolute 
valid_until,
-                                               struct GNUNET_TIME_Absolute 
next_validation,
-                                               enum 
GNUNET_TRANSPORT_ValidationState state);
-
-
 #endif
 /* end of file gnunet-service-transport_clients.h */

Modified: gnunet/src/transport/gnunet-service-transport_validation.c
===================================================================
--- gnunet/src/transport/gnunet-service-transport_validation.c  2016-07-06 
21:57:30 UTC (rev 37471)
+++ gnunet/src/transport/gnunet-service-transport_validation.c  2016-07-06 
22:10:48 UTC (rev 37472)
@@ -37,7 +37,54 @@
 #include "gnunet_peerinfo_service.h"
 #include "gnunet_signatures.h"
 
+/**
+ * Current state of a validation process.
+ *
+ * FIXME: what state is used to indicate that a validation
+ * was successful? If that is clarified/determined, "UGH" in
+ * ~gnunetpeerinfogtk.c:1103 should be resolved.
+ */
+enum GNUNET_TRANSPORT_ValidationState
+{
+  /**
+   * Undefined state
+   *
+   * Used for final callback indicating operation done
+   */
+  GNUNET_TRANSPORT_VS_NONE,
 
+  /**
+   * Fresh validation entry
+   *
+   * Entry was just created, no validation process was executed
+   */
+  GNUNET_TRANSPORT_VS_NEW,
+
+  /**
+   * Updated validation entry
+   *
+   * This is an update for an existing validation entry
+   */
+  GNUNET_TRANSPORT_VS_UPDATE,
+
+  /**
+   * Timeout for validation entry
+   *
+   * A timeout occured during the validation process
+   */
+  GNUNET_TRANSPORT_VS_TIMEOUT,
+
+  /**
+   * Validation entry is removed
+   *
+   * The validation entry is getting removed due to a failed validation
+   */
+  GNUNET_TRANSPORT_VS_REMOVE
+};
+
+
+
+
 /**
  * How long is a PONG signature valid?  We'll recycle a signature until
  * 1/4 of this time is remaining.  PONGs should expire so that if our
@@ -385,12 +432,6 @@
                           enum GNUNET_TRANSPORT_ValidationState state)
 {
   ve->state = state;
-  GST_clients_broadcast_validation_notification (&ve->address->peer,
-                                                 ve->address,
-                                                 ve->send_time,
-                                                 ve->valid_until,
-                                                 ve->next_validation,
-                                                 state);
 }
 
 
@@ -1733,74 +1774,4 @@
 }
 
 
-/**
- * Closure for the validation_entries_iterate function.
- */
-struct ValidationIteratorContext
-{
-  /**
-   * Function to call on each validation entry
-   */
-  GST_ValidationChangedCallback cb;
-
-  /**
-   * Closure for @e cb.
-   */
-  void *cb_cls;
-};
-
-
-/**
- * Function called on each entry in the validation map.
- * Passes the information from the validation entry to
- * the callback given in the closure.
- *
- * @param cls the `struct ValidationIteratorContext`
- * @param key peer this is about
- * @param value the `struct ValidationEntry`
- * @return #GNUNET_OK (continue to iterate)
- */
-static int
-validation_entries_iterate (void *cls,
-                           const struct GNUNET_PeerIdentity *key,
-                           void *value)
-{
-  struct ValidationIteratorContext *ic = cls;
-  struct ValidationEntry *ve = value;
-
-  GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
-             "Notifying about validation entry for peer `%s' address `%s' \n",
-             GNUNET_i2s (&ve->address->peer),
-             GST_plugins_a2s (ve->address));
-  ic->cb (ic->cb_cls,
-         ve->address,
-         ve->send_time,
-         ve->valid_until,
-         ve->next_validation,
-         ve->state);
-  return GNUNET_OK;
-}
-
-
-/**
- * Iterate over all iteration entries
- *
- * @param cb function to call
- * @param cb_cls closure for @a cb
- */
-void
-GST_validation_iterate (GST_ValidationChangedCallback cb,
-                        void *cb_cls)
-{
-  struct ValidationIteratorContext ic;
-
-  if (NULL == validation_map)
-    return; /* can happen during shutdown */
-  ic.cb = cb;
-  ic.cb_cls = cb_cls;
-  GNUNET_CONTAINER_multipeermap_iterate (validation_map,
-                                         &validation_entries_iterate,
-                                         &ic);
-}
-
 /* end of file gnunet-service-transport_validation.c */

Modified: gnunet/src/transport/gnunet-service-transport_validation.h
===================================================================
--- gnunet/src/transport/gnunet-service-transport_validation.h  2016-07-06 
21:57:30 UTC (rev 37471)
+++ gnunet/src/transport/gnunet-service-transport_validation.h  2016-07-06 
22:10:48 UTC (rev 37472)
@@ -62,36 +62,6 @@
 
 
 /**
- * Function called to notify transport users that a neighbour peer changed its
- * active address.
- *
- * @param cls closure
- * @param address address (never NULL)
- * @param last_validation point in time when last validation was performed
- * @param valid_until point in time how long address is valid
- * @param next_validation point in time when next validation will be performed
- * @param state state of validation notification
- */
-typedef void
-(*GST_ValidationChangedCallback) (void *cls,
-                                  const struct GNUNET_HELLO_Address *address,
-                                  struct GNUNET_TIME_Absolute last_validation,
-                                  struct GNUNET_TIME_Absolute valid_until,
-                                  struct GNUNET_TIME_Absolute next_validation,
-                                  enum GNUNET_TRANSPORT_ValidationState state);
-
-
-/**
- * Iterate over all iteration entries
- *
- * @param cb function to call
- * @param cb_cls closure for @a cb
- */
-void
-GST_validation_iterate (GST_ValidationChangedCallback cb, void *cb_cls);
-
-
-/**
  * We've received a PING.  If appropriate, generate a PONG.
  *
  * @param sender peer sending the PING

Modified: gnunet/src/transport/gnunet-transport.c
===================================================================
--- gnunet/src/transport/gnunet-transport.c     2016-07-06 21:57:30 UTC (rev 
37471)
+++ gnunet/src/transport/gnunet-transport.c     2016-07-06 22:10:48 UTC (rev 
37472)
@@ -87,11 +87,6 @@
   struct GNUNET_TIME_Absolute next_validation;
 
   /**
-   * state of validation process
-   */
-  enum GNUNET_TRANSPORT_ValidationState state;
-
-  /**
    * Tranport conversion handle
    */
   struct GNUNET_TRANSPORT_AddressToStringContext *asc;
@@ -296,11 +291,6 @@
 static int iterate_connections;
 
 /**
- * Option -d.
- */
-static int iterate_validation;
-
-/**
  * Option -a.
  */
 static int iterate_all;
@@ -321,11 +311,6 @@
 static int monitor_connections;
 
 /**
- * Option -f.
- */
-static int monitor_validation;
-
-/**
  * Option -P.
  */
 static int monitor_plugins;
@@ -386,11 +371,6 @@
 static struct GNUNET_TRANSPORT_PeerMonitoringContext *pic;
 
 /**
- * Handle if we are monitoring transport validation activity.
- */
-static struct GNUNET_TRANSPORT_ValidationMonitoringContext *vic;
-
-/**
  * Handle if we are monitoring plugin session activity.
  */
 static struct GNUNET_TRANSPORT_PluginMonitor *pm;
@@ -507,11 +487,6 @@
     GNUNET_TRANSPORT_monitor_peers_cancel (pic);
     pic = NULL;
   }
-  if (NULL != vic)
-  {
-    GNUNET_TRANSPORT_monitor_validation_entries_cancel (vic);
-    vic = NULL;
-  }
   if (NULL != pm)
   {
     GNUNET_TRANSPORT_monitor_plugins_cancel (pm);
@@ -729,218 +704,7 @@
 }
 
 
-/**
- * Resolve address we got a validation state for to a string.
- *
- * @param address the address itself
- * @param numeric #GNUNET_YES to disable DNS, #GNUNET_NO to try reverse lookup
- * @param last_validation when was the address validated last
- * @param valid_until until when is the address valid
- * @param next_validation when will we try to revalidate the address next
- * @param state where are we in the validation state machine
- */
 static void
-resolve_validation_address (const struct GNUNET_HELLO_Address *address,
-                            int numeric,
-                            struct GNUNET_TIME_Absolute last_validation,
-                            struct GNUNET_TIME_Absolute valid_until,
-                            struct GNUNET_TIME_Absolute next_validation,
-                            enum GNUNET_TRANSPORT_ValidationState state);
-
-
-/**
- * Function to call with a textual representation of an address.  This
- * function will be called several times with different possible
- * textual representations, and a last time with @a address being NULL
- * to signal the end of the iteration.  Note that @a address NULL
- * always is the last call, regardless of the value in @a res.
- *
- * @param cls closure
- * @param address NULL on end of iteration,
- *        otherwise 0-terminated printable UTF-8 string,
- *        in particular an empty string if @a res is #GNUNET_NO
- * @param res result of the address to string conversion:
- *        if #GNUNET_OK: conversion successful
- *        if #GNUNET_NO: address was invalid (or not supported)
- *        if #GNUNET_SYSERR: communication error (IPC error)
- */
-static void
-process_validation_string (void *cls,
-                           const char *address,
-                           int res)
-{
-  struct ValidationResolutionContext *vc = cls;
-  char *s_valid;
-  char *s_last;
-  char *s_next;
-
-  if (NULL != address)
-  {
-    if (GNUNET_SYSERR == res)
-    {
-      FPRINTF (stderr,
-               "Failed to convert address for peer `%s' plugin `%s' length %u 
to string \n",
-               GNUNET_i2s (&vc->addrcp->peer),
-               vc->addrcp->transport_name,
-               (unsigned int) vc->addrcp->address_length);
-    }
-    if (GNUNET_TIME_UNIT_ZERO_ABS.abs_value_us == vc->valid_until.abs_value_us)
-      s_valid = GNUNET_strdup ("never");
-    else
-      s_valid = GNUNET_strdup (GNUNET_STRINGS_absolute_time_to_string 
(vc->valid_until));
-
-    if (GNUNET_TIME_UNIT_ZERO_ABS.abs_value_us == 
vc->last_validation.abs_value_us)
-      s_last = GNUNET_strdup ("never");
-    else
-      s_last = GNUNET_strdup (GNUNET_STRINGS_absolute_time_to_string 
(vc->last_validation));
-
-    if (GNUNET_TIME_UNIT_ZERO_ABS.abs_value_us == 
vc->next_validation.abs_value_us)
-      s_next = GNUNET_strdup ("never");
-    else
-      s_next = GNUNET_strdup (GNUNET_STRINGS_absolute_time_to_string 
(vc->next_validation));
-
-    FPRINTF (stdout,
-             _("Peer `%s' %s %s\n\t%s%s\n\t%s%s\n\t%s%s\n"),
-             GNUNET_i2s (&vc->addrcp->peer),
-             (GNUNET_OK == res) ? address : "<invalid address>",
-             (monitor_validation) ? GNUNET_TRANSPORT_vs2s (vc->state) : "",
-             "Valid until    : ", s_valid,
-             "Last validation: ",s_last,
-             "Next validation: ", s_next);
-    GNUNET_free (s_valid);
-    GNUNET_free (s_last);
-    GNUNET_free (s_next);
-    vc->printed = GNUNET_YES;
-    return;
-  }
-  /* last call, we are done */
-  GNUNET_assert (address_resolutions > 0);
-  address_resolutions--;
-  if ( (GNUNET_SYSERR == res) &&
-       (GNUNET_NO == vc->printed))
-  {
-    if (numeric == GNUNET_NO)
-    {
-      /* Failed to resolve address, try numeric lookup
-         (note: this should be unnecessary, as
-         transport should fallback to numeric lookup
-         internally if DNS takes too long anyway) */
-      resolve_validation_address (vc->addrcp,
-                                  GNUNET_NO,
-                                  vc->last_validation,
-                                  vc->valid_until,
-                                  vc->next_validation,
-                                  vc->state);
-    }
-    else
-    {
-      FPRINTF (stdout,
-               _("Peer `%s' %s `%s' \n"),
-               GNUNET_i2s (&vc->addrcp->peer),
-               "<unable to resolve address>",
-               GNUNET_TRANSPORT_vs2s (vc->state));
-    }
-  }
-  GNUNET_free (vc->transport);
-  GNUNET_free (vc->addrcp);
-  GNUNET_CONTAINER_DLL_remove (vc_head, vc_tail, vc);
-  GNUNET_free (vc);
-  if ((0 == address_resolutions) && (iterate_validation))
-  {
-    if (NULL != op_timeout)
-    {
-      GNUNET_SCHEDULER_cancel (op_timeout);
-      op_timeout = NULL;
-    }
-    ret = 0;
-    GNUNET_SCHEDULER_shutdown ();
-  }
-}
-
-
-/**
- * Resolve address we got a validation state for to a string.
- *
- * @param address the address itself
- * @param numeric #GNUNET_YES to disable DNS, #GNUNET_NO to try reverse lookup
- * @param last_validation when was the address validated last
- * @param valid_until until when is the address valid
- * @param next_validation when will we try to revalidate the address next
- * @param state where are we in the validation state machine
- */
-static void
-resolve_validation_address (const struct GNUNET_HELLO_Address *address,
-                            int numeric,
-                            struct GNUNET_TIME_Absolute last_validation,
-                            struct GNUNET_TIME_Absolute valid_until,
-                            struct GNUNET_TIME_Absolute next_validation,
-                            enum GNUNET_TRANSPORT_ValidationState state)
-{
-  struct ValidationResolutionContext *vc;
-
-  vc = GNUNET_new (struct ValidationResolutionContext);
-  GNUNET_assert(NULL != vc);
-  GNUNET_CONTAINER_DLL_insert(vc_head, vc_tail, vc);
-  address_resolutions++;
-
-  vc->transport = GNUNET_strdup(address->transport_name);
-  vc->addrcp = GNUNET_HELLO_address_copy (address);
-  vc->printed = GNUNET_NO;
-  vc->state = state;
-  vc->last_validation = last_validation;
-  vc->valid_until = valid_until;
-  vc->next_validation = next_validation;
-
-  /* Resolve address to string */
-  vc->asc = GNUNET_TRANSPORT_address_to_string (cfg,
-                                                address,
-                                                numeric,
-                                                RESOLUTION_TIMEOUT,
-                                                &process_validation_string, 
vc);
-}
-
-
-/**
- * Resolve address we got a validation state for to a string.
- *
- * @param cls NULL
- * @param address the address itself
- * @param last_validation when was the address validated last
- * @param valid_until until when is the address valid
- * @param next_validation when will we try to revalidate the address next
- * @param state where are we in the validation state machine
- */
-static void
-process_validation_cb (void *cls,
-                       const struct GNUNET_HELLO_Address *address,
-                       struct GNUNET_TIME_Absolute last_validation,
-                       struct GNUNET_TIME_Absolute valid_until,
-                       struct GNUNET_TIME_Absolute next_validation,
-                       enum GNUNET_TRANSPORT_ValidationState state)
-{
-  if (NULL == address)
-  {
-    if (monitor_validation)
-    {
-      FPRINTF (stdout,
-               "%s",
-               _("Monitor disconnected from transport service. 
Reconnecting.\n"));
-      return;
-    }
-    vic = NULL;
-    GNUNET_SCHEDULER_shutdown ();
-    return;
-  }
-  resolve_validation_address (address,
-                              numeric,
-                              last_validation,
-                              valid_until,
-                              next_validation,
-                              state);
-}
-
-
-static void
 run_nat_test ()
 {
   GNUNET_log (GNUNET_ERROR_TYPE_INFO,
@@ -1784,7 +1548,7 @@
 
   counter = benchmark_send + benchmark_receive + iterate_connections
       + monitor_connections + monitor_connects + do_disconnect +
-      + iterate_validation + monitor_validation + monitor_plugins;
+      monitor_plugins;
 
   if (1 < counter)
   {
@@ -1901,20 +1665,6 @@
                                            &plugin_monitoring_cb,
                                            NULL);
   }
-  else if (iterate_validation) /* -d: Print information about validations */
-  {
-    vic = GNUNET_TRANSPORT_monitor_validation_entries (cfg,
-                                                       (NULL == cpid) ? NULL : 
&pid,
-                                                       GNUNET_YES, TIMEOUT,
-                                                       &process_validation_cb, 
(void *) cfg);
-  }
-  else if (monitor_validation) /* -f: Print information about validations 
continuously */
-  {
-    vic = GNUNET_TRANSPORT_monitor_validation_entries (cfg,
-                                                       (NULL == cpid) ? NULL : 
&pid,
-                                                       GNUNET_NO, TIMEOUT,
-                                                       &process_validation_cb, 
(void *) cfg);
-  }
   else if (monitor_connects) /* -e : Monitor (dis)connect events continuously 
*/
   {
     monitor_connect_counter = 0;
@@ -1985,12 +1735,6 @@
     { 'D', "disconnect",
       NULL, gettext_noop ("disconnect from a peer"), 0,
       &GNUNET_GETOPT_set_one, &do_disconnect },
-    { 'd', "validation", NULL,
-      gettext_noop ("print information for all pending validations "),
-      0, &GNUNET_GETOPT_set_one, &iterate_validation },
-    { 'f', "monitorvalidation", NULL,
-      gettext_noop ("print information for all pending validations 
continuously"),
-      0, &GNUNET_GETOPT_set_one, &monitor_validation },
     { 'i', "information", NULL,
       gettext_noop ("provide information about all current connections 
(once)"),
       0, &GNUNET_GETOPT_set_one, &iterate_connections },

Deleted: gnunet/src/transport/transport_api_monitor_validation.c
===================================================================
--- gnunet/src/transport/transport_api_monitor_validation.c     2016-07-06 
21:57:30 UTC (rev 37471)
+++ gnunet/src/transport/transport_api_monitor_validation.c     2016-07-06 
22:10:48 UTC (rev 37472)
@@ -1,402 +0,0 @@
-/*
-     This file is part of GNUnet.
-     Copyright (C) 2009, 2010 GNUnet e.V.
-
-     GNUnet is free software; you can redistribute it and/or modify
-     it under the terms of the GNU General Public License as published
-     by the Free Software Foundation; either version 3, or (at your
-     option) any later version.
-
-     GNUnet is distributed in the hope that it will be useful, but
-     WITHOUT ANY WARRANTY; without even the implied warranty of
-     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-     General Public License for more details.
-
-     You should have received a copy of the GNU General Public License
-     along with GNUnet; see the file COPYING.  If not, write to the
-     Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
-     Boston, MA 02110-1301, USA.
-*/
-
-/**
- * @file transport/transport_api_monitor_validation.c
- * @brief montoring api for validation status
- *
- * This api provides the ability to query the transport service about
- * the status of address validation.
- */
-#include "platform.h"
-#include "gnunet_util_lib.h"
-#include "gnunet_arm_service.h"
-#include "gnunet_hello_lib.h"
-#include "gnunet_protocols.h"
-#include "gnunet_transport_service.h"
-#include "transport.h"
-
-
-/**
- * Context for the address lookup.
- */
-struct GNUNET_TRANSPORT_ValidationMonitoringContext
-{
-  /**
-   * Function to call with the binary address.
-   */
-  GNUNET_TRANSPORT_ValidationIterateCallback cb;
-
-  /**
-   * Closure for @e cb.
-   */
-  void *cb_cls;
-
-  /**
-   * Connection to the service.
-   */
-  struct GNUNET_CLIENT_Connection *client;
-
-  /**
-   * Configuration we use.
-   */
-  const struct GNUNET_CONFIGURATION_Handle *cfg;
-
-  /**
-   * When should this operation time out?
-   */
-  struct GNUNET_TIME_Absolute timeout;
-
-  /**
-   * Backoff for reconnect.
-   */
-  struct GNUNET_TIME_Relative backoff;
-
-  /**
-   * Task ID for reconnect.
-   */
-  struct GNUNET_SCHEDULER_Task * reconnect_task;
-
-  /**
-   * Identity of the peer to monitor.
-   */
-  struct GNUNET_PeerIdentity peer;
-
-  /**
-   * Was this a one-shot request?
-   */
-  int one_shot;
-};
-
-
-/**
- * Convert validation state to human-readable string.
- *
- * @param state the state value
- * @return corresponding string
- */
-const char *
-GNUNET_TRANSPORT_vs2s (enum GNUNET_TRANSPORT_ValidationState state)
-{
-  switch (state)
-  {
-  case GNUNET_TRANSPORT_VS_NONE:
-    return "NONE";
-  case GNUNET_TRANSPORT_VS_NEW:
-    return "NEW";
-  case GNUNET_TRANSPORT_VS_REMOVE:
-    return "REMOVE";
-  case GNUNET_TRANSPORT_VS_TIMEOUT:
-    return "TIMEOUT";
-  case GNUNET_TRANSPORT_VS_UPDATE:
-    return "UPDATE";
-  default:
-    GNUNET_break (0);
-    return "UNDEFINED";
-  }
-}
-
-
-/**
- * Function called with responses from the service.
- *
- * @param cls our `struct GNUNET_TRANSPORT_ValidationMonitoringContext *`
- * @param msg NULL on timeout or error, otherwise presumably a
- *        message with the human-readable address
- */
-static void
-val_response_processor (void *cls,
-                        const struct GNUNET_MessageHeader *msg);
-
-
-/**
- * Send our subscription request to the service.
- *
- * @param val_ctx our context
- */
-static void
-send_val_mon_request (struct GNUNET_TRANSPORT_ValidationMonitoringContext 
*val_ctx)
-{
-  struct ValidationMonitorMessage msg;
-
-  msg.header.size = htons (sizeof (struct ValidationMonitorMessage));
-  msg.header.type = htons 
(GNUNET_MESSAGE_TYPE_TRANSPORT_MONITOR_VALIDATION_REQUEST);
-  msg.one_shot = htonl (val_ctx->one_shot);
-  msg.peer = val_ctx->peer;
-  GNUNET_assert (GNUNET_OK ==
-                 GNUNET_CLIENT_transmit_and_get_response (val_ctx->client,
-                    &msg.header,
-                    GNUNET_TIME_absolute_get_remaining (val_ctx->timeout),
-                    GNUNET_YES,
-                    &val_response_processor,
-                    val_ctx));
-}
-
-
-/**
- * Task run to re-establish the connection.
- *
- * @param cls our `struct GNUNET_TRANSPORT_ValidationMonitoringContext *`
- */
-static void
-do_val_connect (void *cls)
-{
-  struct GNUNET_TRANSPORT_ValidationMonitoringContext *val_ctx = cls;
-
-  val_ctx->reconnect_task = NULL;
-  val_ctx->client = GNUNET_CLIENT_connect ("transport", val_ctx->cfg);
-  GNUNET_assert (NULL != val_ctx->client);
-  send_val_mon_request (val_ctx);
-}
-
-
-/**
- * Cut the existing connection and reconnect.
- *
- * @param val_ctx our context
- */
-static void
-reconnect_val_ctx (struct GNUNET_TRANSPORT_ValidationMonitoringContext 
*val_ctx)
-{
-  GNUNET_assert (GNUNET_NO == val_ctx->one_shot);
-  GNUNET_CLIENT_disconnect (val_ctx->client);
-  val_ctx->client = NULL;
-  /* notify clients about (re)connect */
-  val_ctx->cb (val_ctx->cb_cls, NULL,
-               GNUNET_TIME_UNIT_ZERO_ABS, GNUNET_TIME_UNIT_ZERO_ABS,
-               GNUNET_TIME_UNIT_ZERO_ABS, GNUNET_TRANSPORT_VS_TIMEOUT);
-  val_ctx->backoff = GNUNET_TIME_STD_BACKOFF (val_ctx->backoff);
-  val_ctx->reconnect_task = GNUNET_SCHEDULER_add_delayed (val_ctx->backoff,
-                                                          &do_val_connect,
-                                                          val_ctx);
-}
-
-
-/**
- * Function called with responses from the service.
- *
- * @param cls our `struct GNUNET_TRANSPORT_ValidationMonitoringContext *`
- * @param msg NULL on timeout or error, otherwise presumably a
- *        message with the human-readable address
- */
-static void
-val_response_processor (void *cls,
-                        const struct GNUNET_MessageHeader *msg)
-{
-  struct GNUNET_TRANSPORT_ValidationMonitoringContext *val_ctx = cls;
-  struct ValidationIterateResponseMessage *vr_msg;
-  struct GNUNET_HELLO_Address *address;
-  const char *addr;
-  const char *transport_name;
-  size_t size;
-  size_t tlen;
-  size_t alen;
-
-  if (NULL == msg)
-  {
-    if (val_ctx->one_shot)
-    {
-      /* Disconnect */
-      val_ctx->cb (val_ctx->cb_cls, NULL,
-          GNUNET_TIME_UNIT_ZERO_ABS, GNUNET_TIME_UNIT_ZERO_ABS,
-          GNUNET_TIME_UNIT_ZERO_ABS, GNUNET_TRANSPORT_VS_TIMEOUT);
-      GNUNET_TRANSPORT_monitor_validation_entries_cancel (val_ctx);
-    }
-    else
-    {
-      reconnect_val_ctx (val_ctx);
-    }
-    return;
-  }
-  size = ntohs (msg->size);
-  GNUNET_break (ntohs (msg->type) ==
-      GNUNET_MESSAGE_TYPE_TRANSPORT_MONITOR_VALIDATION_RESPONSE);
-
-  if (size == sizeof (struct GNUNET_MessageHeader))
-  {
-    /* Done! */
-    if (val_ctx->one_shot)
-    {
-      val_ctx->cb (val_ctx->cb_cls, NULL,
-          GNUNET_TIME_UNIT_ZERO_ABS, GNUNET_TIME_UNIT_ZERO_ABS,
-          GNUNET_TIME_UNIT_ZERO_ABS, GNUNET_TRANSPORT_VS_NONE);
-      GNUNET_TRANSPORT_monitor_validation_entries_cancel (val_ctx);
-    }
-    else
-    {
-      reconnect_val_ctx (val_ctx);
-    }
-    return;
-  }
-
-  if ((size < sizeof (struct ValidationIterateResponseMessage)) ||
-      (ntohs (msg->type) != 
GNUNET_MESSAGE_TYPE_TRANSPORT_MONITOR_VALIDATION_RESPONSE))
-  {
-    GNUNET_break (0);
-    if (val_ctx->one_shot)
-    {
-      val_ctx->cb (val_ctx->cb_cls, NULL,
-          GNUNET_TIME_UNIT_ZERO_ABS, GNUNET_TIME_UNIT_ZERO_ABS,
-          GNUNET_TIME_UNIT_ZERO_ABS, GNUNET_TRANSPORT_VS_NONE);
-      GNUNET_TRANSPORT_monitor_validation_entries_cancel (val_ctx);
-    }
-    else
-    {
-      reconnect_val_ctx (val_ctx);
-    }
-    return;
-  }
-
-  vr_msg = (struct ValidationIterateResponseMessage *) msg;
-  tlen = ntohl (vr_msg->pluginlen);
-  alen = ntohl (vr_msg->addrlen);
-
-  if (size != sizeof (struct ValidationIterateResponseMessage) + tlen + alen)
-  {
-    GNUNET_break (0);
-    if (val_ctx->one_shot)
-    {
-      val_ctx->cb (val_ctx->cb_cls, NULL,
-          GNUNET_TIME_UNIT_ZERO_ABS, GNUNET_TIME_UNIT_ZERO_ABS,
-          GNUNET_TIME_UNIT_ZERO_ABS, GNUNET_TRANSPORT_VS_NONE);
-      GNUNET_TRANSPORT_monitor_validation_entries_cancel (val_ctx);
-    }
-    else
-    {
-      reconnect_val_ctx (val_ctx);
-    }
-    return;
-  }
-  if (0 == tlen)
-  {
-    GNUNET_break (0); /* This must not happen: address without plugin */
-    return;
-  }
-  addr = (const char *) &vr_msg[1];
-  transport_name = &addr[alen];
-
-  if (transport_name[tlen - 1] != '\0')
-  {
-    /* Corrupt plugin name */
-    GNUNET_break (0);
-    if (val_ctx->one_shot)
-    {
-      val_ctx->cb (val_ctx->cb_cls,
-                  NULL,
-                  GNUNET_TIME_UNIT_ZERO_ABS,
-                  GNUNET_TIME_UNIT_ZERO_ABS,
-                  GNUNET_TIME_UNIT_ZERO_ABS,
-                  GNUNET_TRANSPORT_VS_NONE);
-      GNUNET_TRANSPORT_monitor_validation_entries_cancel (val_ctx);
-    }
-    else
-    {
-      reconnect_val_ctx (val_ctx);
-    }
-    return;
-  }
-
-  /* notify client */
-  address = GNUNET_HELLO_address_allocate (&vr_msg->peer,
-                                          transport_name,
-                                          addr, alen,
-                                          ntohl (vr_msg->local_address_info));
-  val_ctx->cb (val_ctx->cb_cls,
-              address,
-              GNUNET_TIME_absolute_ntoh (vr_msg->last_validation),
-              GNUNET_TIME_absolute_ntoh (vr_msg->valid_until),
-              GNUNET_TIME_absolute_ntoh (vr_msg->next_validation),
-              ntohl(vr_msg->state));
-  GNUNET_HELLO_address_free (address);
-  /* expect more replies */
-  GNUNET_CLIENT_receive (val_ctx->client,
-                         &val_response_processor,
-                         val_ctx,
-                         GNUNET_TIME_absolute_get_remaining 
(val_ctx->timeout));
-}
-
-
-/**
- * Return information about pending address validation operations for a 
specific
- * or all peers
- *
- * @param cfg configuration to use
- * @param peer a specific peer identity to obtain validation entries for,
- *      NULL for all peers
- * @param one_shot #GNUNET_YES to return all entries and then end (with 
NULL+NULL),
- *                 #GNUNET_NO to monitor validation entries continuously
- * @param timeout how long is the lookup allowed to take at most
- * @param validation_callback function to call with the results
- * @param validation_callback_cls closure for peer_address_callback
- */
-struct GNUNET_TRANSPORT_ValidationMonitoringContext *
-GNUNET_TRANSPORT_monitor_validation_entries (const struct 
GNUNET_CONFIGURATION_Handle *cfg,
-                                             const struct GNUNET_PeerIdentity 
*peer,
-                                             int one_shot,
-                                             struct GNUNET_TIME_Relative 
timeout,
-                                             
GNUNET_TRANSPORT_ValidationIterateCallback validation_callback,
-                                             void *validation_callback_cls)
-{
-  struct GNUNET_TRANSPORT_ValidationMonitoringContext *val_ctx;
-  struct GNUNET_CLIENT_Connection *client;
-
-  client = GNUNET_CLIENT_connect ("transport", cfg);
-  if (NULL == client)
-    return NULL;
-  if (GNUNET_YES != one_shot)
-    timeout = GNUNET_TIME_UNIT_FOREVER_REL;
-  val_ctx = GNUNET_new (struct GNUNET_TRANSPORT_ValidationMonitoringContext);
-  val_ctx->cb = validation_callback;
-  val_ctx->cb_cls = validation_callback_cls;
-  val_ctx->cfg = cfg;
-  val_ctx->timeout = GNUNET_TIME_relative_to_absolute (timeout);
-  if (NULL != peer)
-    val_ctx->peer = *peer;
-  val_ctx->one_shot = one_shot;
-  val_ctx->client = client;
-  send_val_mon_request (val_ctx);
-
-  return val_ctx;
-}
-
-
-/**
- * Return information about all current pending validation operations
- *
- * @param vic handle for the request to cancel
- */
-void
-GNUNET_TRANSPORT_monitor_validation_entries_cancel (struct 
GNUNET_TRANSPORT_ValidationMonitoringContext *vic)
-{
-  if (NULL != vic->client)
-  {
-    GNUNET_CLIENT_disconnect (vic->client);
-    vic->client = NULL;
-  }
-  if (NULL != vic->reconnect_task)
-  {
-    GNUNET_SCHEDULER_cancel (vic->reconnect_task);
-    vic->reconnect_task = NULL;
-  }
-  GNUNET_free (vic);
-}
-
-
-/* end of transport_api_monitor_validation.c */

Modified: gnunet-gtk/contrib/gnunet_peerinfo_gtk_main_window.glade
===================================================================
--- gnunet-gtk/contrib/gnunet_peerinfo_gtk_main_window.glade    2016-07-06 
21:57:30 UTC (rev 37471)
+++ gnunet-gtk/contrib/gnunet_peerinfo_gtk_main_window.glade    2016-07-06 
22:10:48 UTC (rev 37472)
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- Generated with glade 3.18.3 
+<!-- Generated with glade 3.18.3
 
-Copyright (C) 
+Copyright (C)
 
 This file is part of gnunet-peerinfo-gtk.
 
@@ -61,11 +61,11 @@
       <column type="gchararray"/>
       <!-- column-name transport_neighbour_state_timeout_as_string -->
       <column type="gchararray"/>
-      <!-- column-name transport_validation_state_led -->
+      <!-- column-name transport_validation_state_led__DEAD -->
       <column type="GdkPixbuf"/>
-      <!-- column-name transport_validation_is_valid -->
+      <!-- column-name transport_validation_is_valid__DEAD -->
       <column type="gboolean"/>
-      <!-- column-name transport_validation_timeout_as_string -->
+      <!-- column-name transport_validation_timeout_as_string__DEAD -->
       <column type="gchararray"/>
       <!-- column-name plugin_connectivity_led -->
       <column type="GdkPixbuf"/>
@@ -252,10 +252,12 @@
                     <property name="reorderable">True</property>
                     <property name="sort_indicator">True</property>
                     <property name="sort_column_id">19</property>
+                    <property name="visible">false</property>
                     <child>
                       <object class="GtkCellRendererPixbuf" 
id="GNUNET_PEERINFO_GTK_main_window_valdiation_led_cellrendererpixbuf"/>
                       <attributes>
                         <attribute name="pixbuf">18</attribute>
+                        <property name="visible">false</property>
                       </attributes>
                     </child>
                   </object>

Modified: gnunet-gtk/src/peerinfo/gnunet-peerinfo-gtk.c
===================================================================
--- gnunet-gtk/src/peerinfo/gnunet-peerinfo-gtk.c       2016-07-06 21:57:30 UTC 
(rev 37471)
+++ gnunet-gtk/src/peerinfo/gnunet-peerinfo-gtk.c       2016-07-06 22:10:48 UTC 
(rev 37472)
@@ -141,17 +141,17 @@
   /**
    * A GdkPixbuf
    */
-  PEERINFO_MC_VALIDATION_STATE_LED = 18,
+  PEERINFO_MC_VALIDATION_STATE_LED__DEAD = 18,
 
   /**
    * A gboolean
    */
-  PEERINFO_MC_VALIDATION_IS_VALID = 19,
+  PEERINFO_MC_VALIDATION_IS_VALID__DEAD = 19,
 
   /**
    * A gchararray
    */
-  PEERINFO_MC_VALIDATION_TIMEOUT_AS_STRING = 20,
+  PEERINFO_MC_VALIDATION_TIMEOUT_AS_STRING__DEAD = 20,
 
   /**
    * A GdkPixbuf
@@ -329,11 +329,6 @@
 static struct GNUNET_TRANSPORT_PeerMonitoringContext *pmc;
 
 /**
- * Monitoring transport validation operations.
- */
-static struct GNUNET_TRANSPORT_ValidationMonitoringContext *vmc;
-
-/**
  * Monitoring transport plugin sessions.
  */
 struct GNUNET_TRANSPORT_PluginMonitor *pm;
@@ -404,11 +399,6 @@
 static GtkTreeViewColumn *tvc_plugin_connectivity;
 
 /**
- * Tree view column for validation status
- */
-static GtkTreeViewColumn *tvc_validation_status;
-
-/**
  * Tree view column for neighbour_state
  */
 static GtkTreeViewColumn *tvc_neighbour_state;
@@ -526,11 +516,6 @@
     GNUNET_TRANSPORT_monitor_plugins_cancel (pm);
     pm = NULL;
   }
-  if (NULL != vmc)
-  {
-    GNUNET_TRANSPORT_monitor_validation_entries_cancel (vmc);
-    vmc = NULL;
-  }
   if (NULL != cm)
   {
     GNUNET_CORE_monitor_stop (cm);
@@ -1147,107 +1132,6 @@
 
 
 /**
- * Transport address validation monitor disconnected, reset
- * address validation status information for all peers.
- *
- * @param cls NULL
- * @param pid peer identity to reset
- * @param value the `struct PeerInfo` for the peer
- * @return #GNUNET_OK
- */
-static int
-reset_address_validation_status (void *cls,
-                                 const struct GNUNET_PeerIdentity *pid,
-                                 void *value)
-{
-  struct PeerInfo *info = value;
-  GtkTreeIter iter;
-  struct PeerAddress *pa;
-
-  for (pa = info->pa_head; NULL != pa; pa = pa->next)
-  {
-    get_iter_from_rr (pa->rr, &iter);
-    gtk_tree_store_set (ts, &iter,
-                        PEERINFO_MC_VALIDATION_IS_VALID, FALSE,
-                        PEERINFO_MC_VALIDATION_TIMEOUT_AS_STRING, NULL,
-                        PEERINFO_MC_VALIDATION_STATE_LED, NULL,
-                        -1);
-  }
-  return GNUNET_OK;
-}
-
-
-/**
- * Function to call with validation information about a peer
- *
- * @param cts closure
- * @param address address, NULL for disconnect notification in monitor mode
- * @param last_validation when was this address last validated
- * @param valid_until when does this address expire
- * @param next_validation time of the next validation operation
- * @param state state in the validation state machine
- */
-static void
-validation_monitor_cb (void *cts,
-                      const struct GNUNET_HELLO_Address *address,
-                       struct GNUNET_TIME_Absolute last_validation,
-                      struct GNUNET_TIME_Absolute valid_until,
-                      struct GNUNET_TIME_Absolute next_validation,
-                       enum GNUNET_TRANSPORT_ValidationState state)
-{
-  struct PeerInfo *info;
-  struct PeerAddress *pa;
-  GtkTreeIter iter;
-  const char *tos;
-  gboolean valid;
-  GdkPixbuf *led;
-
-  if (NULL == address)
-  {
-    /* disconnect notification, reset all validation state */
-    GNUNET_CONTAINER_multipeermap_iterate (peer2info,
-                                           &reset_address_validation_status,
-                                           NULL);
-    return;
-  }
-  switch (state)
-  {
-  case GNUNET_TRANSPORT_VS_NONE:
-    led = led_black;
-    break;
-  case GNUNET_TRANSPORT_VS_NEW:
-    led = led_yellow;
-    break;
-  case GNUNET_TRANSPORT_VS_UPDATE:
-    led = led_blue;
-    break;
-  case GNUNET_TRANSPORT_VS_TIMEOUT:
-    led = led_red;
-    break;
-  case GNUNET_TRANSPORT_VS_REMOVE:
-    led = NULL;
-    break;
-  default:
-    GNUNET_break (0);
-    led = NULL;
-    break;
-  }
-  info = get_peer_info (&address->peer);
-  valid = (GNUNET_TIME_absolute_get_remaining (valid_until).rel_value_us > 0);
-  if (valid)
-    led = led_green; /* UGH: should this not be indicated by 'state' somehow? 
*/
-  pa = get_address (info, address);
-  get_iter_from_rr (pa->rr, &iter);
-  tos = GNUNET_STRINGS_absolute_time_to_string (valid_until);
-  gtk_tree_store_set (ts, &iter,
-                      PEERINFO_MC_VALIDATION_IS_VALID, valid,
-                      PEERINFO_MC_VALIDATION_TIMEOUT_AS_STRING, tos,
-                      PEERINFO_MC_VALIDATION_STATE_LED, led,
-                      -1);
-}
-
-
-/**
  * Core disconnected, remove CORE KX status information for all peers.
  *
  * @param cls NULL
@@ -1538,8 +1422,6 @@
     model_column = PEERINFO_MC_PEERINFO_ADDRESS_EXPIRATION;
   else if (tvc_transport_connectivity == column)
     model_column = PEERINFO_MC_NEIGHBOUR_CONNECTIVITY_TIMEOUT_AS_STRING;
-  else if (tvc_validation_status == column)
-    model_column = PEERINFO_MC_VALIDATION_TIMEOUT_AS_STRING;
   else if (tvc_neighbour_state == column)
     model_column = PEERINFO_MC_NEIGHBOUR_STATE_TIMEOUT_AS_STRING;
   if (-1 == model_column)
@@ -1631,12 +1513,6 @@
   pm = GNUNET_TRANSPORT_monitor_plugins (cfg,
                                         &transport_plugin_cb,
                                         NULL);
-  vmc = GNUNET_TRANSPORT_monitor_validation_entries (cfg,
-                                                    NULL,
-                                                    GNUNET_NO,
-                                                    
GNUNET_TIME_UNIT_FOREVER_REL,
-                                                    &validation_monitor_cb,
-                                                    NULL);
   ats = GNUNET_ATS_performance_init (cfg,
                                      &ats_status_cb, NULL);
   tvc_core_connectivity = GTK_TREE_VIEW_COLUMN (get_object 
("GNUNET_PEERINFO_GTK_main_window_core_connectivity_treeviewcolumn"));
@@ -1643,7 +1519,6 @@
   tvc_ats_connectivity = GTK_TREE_VIEW_COLUMN (get_object 
("GNUNET_PEERINFO_GTK_main_window_ats_connectivity_treeviewcolumn"));
   tvc_plugin_connectivity = GTK_TREE_VIEW_COLUMN (get_object 
("GNUNET_PEERINFO_GTK_main_window_plugin_connectivity_treeviewcolumn"));
   tvc_transport_connectivity = GTK_TREE_VIEW_COLUMN (get_object 
("GNUNET_PEERINFO_GTK_main_window_transport_connectivity_treeviewcolumn"));
-  tvc_validation_status = GTK_TREE_VIEW_COLUMN (get_object 
("GNUNET_PEERINFO_GTK_main_window_validation_status_treeviewcolumn"));
   tvc_neighbour_state = GTK_TREE_VIEW_COLUMN (get_object 
("GNUNET_PEERINFO_GTK_main_window_neighbour_state_treeviewcolumn"));
   /* setup main window */
   main_window = GTK_WIDGET (get_object ("GNUNET_PEERINFO_GTK_main_window"));




reply via email to

[Prev in Thread] Current Thread [Next in Thread]