-simplify logic
[oweals/gnunet.git] / src / transport / transport.h
index 6fea9201c4d762bc4b8e43d1a137027b43931a0c..15cf936f7402991df67a53f7d9faf63f8958a66c 100644 (file)
@@ -1,6 +1,6 @@
 /*
      This file is part of GNUnet.
-     (C) 2009-2014 Christian Grothoff (and other contributing authors)
+     Copyright (C) 2009-2014 Christian Grothoff (and other contributing authors)
 
      GNUnet is free software; you can redistribute it and/or modify
      it under the terms of the GNU General Public License as published
@@ -163,6 +163,7 @@ struct DisconnectInfoMessage
 
 };
 
+
 /**
  * Message type for sending a request connect message
  * to the transport service.  Must be done before transport
@@ -172,14 +173,37 @@ struct DisconnectInfoMessage
 struct TransportRequestConnectMessage
 {
   /**
-   *  Message header
+   *  Message header with type #GNUNET_MESSAGE_TYPE_TRANSPORT_REQUEST_CONNECT
+   */
+  struct GNUNET_MessageHeader header;
+
+  /**
+   * Reserved (0).
+   */
+  uint32_t reserved GNUNET_PACKED;
+
+  /**
+   * Identity of the peer we would like to connect to.
+   */
+  struct GNUNET_PeerIdentity peer;
+};
+
+
+/**
+ * Message type for sending a request connection to
+ * a peer to be torn down.
+ */
+struct TransportRequestDisconnectMessage
+{
+  /**
+   *  Message header with type #GNUNET_MESSAGE_TYPE_TRANSPORT_REQUEST_DISCONNECT
    */
   struct GNUNET_MessageHeader header;
 
   /**
-   * Connect (#GNUNET_YES) or connect (#GNUNET_NO).
+   * Reserved (0).
    */
-  uint32_t connect;
+  uint32_t reserved GNUNET_PACKED;
 
   /**
    * Identity of the peer we would like to connect to.
@@ -187,6 +211,7 @@ struct TransportRequestConnectMessage
   struct GNUNET_PeerIdentity peer;
 };
 
+
 /**
  * Message used to set a particular bandwidth quota.  Sent TO the
  * service to set an incoming quota, sent FROM the service to update
@@ -264,11 +289,6 @@ struct SendOkMessage
    */
   uint32_t bytes_physical GNUNET_PACKED;
 
-  /**
-   * Latency estimate.
-   */
-  struct GNUNET_TIME_RelativeNBO latency;
-
   /**
    * Which peer can send more now?
    */
@@ -448,7 +468,7 @@ struct ValidationMonitorMessage
   /**
    * One shot call or continous replies?
    */
-  uint32_t one_shot;
+  uint32_t one_shot GNUNET_PACKED;
 
   /**
    * The identity of the peer to look up.
@@ -472,7 +492,7 @@ struct PeerMonitorMessage
   /**
    * One shot call or continous replies?
    */
-  uint32_t one_shot;
+  uint32_t one_shot GNUNET_PACKED;
 
   /**
    * The identity of the peer to look up.
@@ -494,19 +514,29 @@ struct TrafficMetricMessage
   struct GNUNET_MessageHeader header;
 
   /**
-   * SEND, RECEIVE or BOTH?
+   * Always zero.
+   */
+  uint32_t reserved GNUNET_PACKED;
+
+  /**
+   * The identity of the peer to look up.
    */
-  uint16_t direction;
+  struct GNUNET_PeerIdentity peer;
 
   /**
-   * Traffic metrics count
+   * Fake properties to generate.
    */
-  uint16_t ats_count;
+  struct GNUNET_ATS_PropertiesNBO properties;
 
   /**
-   * The identity of the peer to look up.
+   * Fake delay to add on inbound traffic.
    */
-  struct GNUNET_PeerIdentity peer;
+  struct GNUNET_TIME_RelativeNBO delay_in;
+
+  /**
+   * Fake delay to add on outbound traffic.
+   */
+  struct GNUNET_TIME_RelativeNBO delay_out;
 };