transport: [fix] Typos in comments
[oweals/gnunet.git] / src / transport / transport.h
index ceeaf9c0daeaa3384e7723cdeabcc882aa55bc0a..17e4f3c215d5659a5231cfddd9e815618df6df0f 100644 (file)
@@ -1,6 +1,6 @@
 /*
      This file is part of GNUnet.
-     (C) 2009 Christian Grothoff (and other contributing authors)
+     Copyright (C) 2009-2014 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
@@ -14,8 +14,8 @@
 
      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., 59 Temple Place - Suite 330,
-     Boston, MA 02111-1307, USA.
+     Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+     Boston, MA 02110-1301, USA.
 */
 
 /**
  * @param bandwidth_out outbound bandwidth in NBO
  *
  */
+typedef void
+(*NotifyConnect) (void *cls,
+                  const struct GNUNET_PeerIdentity *peer,
+                  struct GNUNET_BANDWIDTH_Value32NBO bandwidth_in,
+                  struct GNUNET_BANDWIDTH_Value32NBO bandwidth_out);
 
-typedef void (*NotifyConnect) (void *cls,
-                              const struct GNUNET_PeerIdentity *peer,
-                              struct GNUNET_BANDWIDTH_Value32NBO bandwidth_in,
-                              struct GNUNET_BANDWIDTH_Value32NBO bandwidth_out);
 
 GNUNET_NETWORK_STRUCT_BEGIN
 
@@ -89,7 +90,7 @@ struct StartMessage
 {
 
   /**
-   * Type will be GNUNET_MESSAGE_TYPE_TRANSPORT_START
+   * Type will be #GNUNET_MESSAGE_TYPE_TRANSPORT_START
    */
   struct GNUNET_MessageHeader header;
 
@@ -117,7 +118,7 @@ struct ConnectInfoMessage
 {
 
   /**
-   * Type will be GNUNET_MESSAGE_TYPE_TRANSPORT_CONNECT
+   * Type will be #GNUNET_MESSAGE_TYPE_TRANSPORT_CONNECT
    */
   struct GNUNET_MessageHeader header;
 
@@ -146,7 +147,7 @@ struct DisconnectInfoMessage
 {
 
   /**
-   * Type will be GNUNET_MESSAGE_TYPE_TRANSPORT_DISCONNECT
+   * Type will be #GNUNET_MESSAGE_TYPE_TRANSPORT_DISCONNECT
    */
   struct GNUNET_MessageHeader header;
 
@@ -162,29 +163,6 @@ struct DisconnectInfoMessage
 
 };
 
-/**
- * Message type for sending a request connect message
- * to the transport service.  Must be done before transport
- * api will allow messages to be queued/sent to transport
- * service for transmission to a peer.
- */
-struct TransportRequestConnectMessage
-{
-  /**
-   *  Message header
-   */
-  struct GNUNET_MessageHeader header;
-
-  /**
-   * Connect (GNUNET_YES) or connect (GNUNET_NO).
-   */
-  uint32_t connect;
-
-  /**
-   * Identity of the peer we would like to connect to.
-   */
-  struct GNUNET_PeerIdentity peer;
-};
 
 /**
  * Message used to set a particular bandwidth quota.  Sent TO the
@@ -195,7 +173,7 @@ struct QuotaSetMessage
 {
 
   /**
-   * Type will be GNUNET_MESSAGE_TYPE_TRANSPORT_SET_QUOTA
+   * Type will be #GNUNET_MESSAGE_TYPE_TRANSPORT_SET_QUOTA
    */
   struct GNUNET_MessageHeader header;
 
@@ -220,7 +198,7 @@ struct InboundMessage
 {
 
   /**
-   * Type will be GNUNET_MESSAGE_TYPE_TRANSPORT_RECV
+   * Type will be #GNUNET_MESSAGE_TYPE_TRANSPORT_RECV
    */
   struct GNUNET_MessageHeader header;
 
@@ -240,19 +218,18 @@ struct SendOkMessage
 {
 
   /**
-   * Type will be GNUNET_MESSAGE_TYPE_TRANSPORT_SEND_OK
+   * Type will be #GNUNET_MESSAGE_TYPE_TRANSPORT_SEND_OK
    */
   struct GNUNET_MessageHeader header;
 
   /**
-   * GNUNET_OK if the transmission succeeded,
-   * GNUNET_SYSERR if it failed (i.e. network disconnect);
+   * #GNUNET_OK if the transmission succeeded,
+   * #GNUNET_SYSERR if it failed (i.e. network disconnect);
    * in either case, it is now OK for this client to
    * send us another message for the given peer.
    */
   uint32_t success GNUNET_PACKED;
 
-
   /**
    * Size of message sent
    */
@@ -264,11 +241,6 @@ struct SendOkMessage
    */
   uint32_t bytes_physical GNUNET_PACKED;
 
-  /**
-   * Latency estimate.
-   */
-  struct GNUNET_TIME_RelativeNBO latency;
-
   /**
    * Which peer can send more now?
    */
@@ -448,7 +420,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 +444,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 +466,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;
 };
 
 
@@ -590,6 +572,80 @@ struct BlacklistMessage
   struct GNUNET_PeerIdentity peer;
 
 };
+
+
+/**
+ * Transport-level connection status update.
+ */
+struct TransportPluginMonitorMessage
+{
+
+  /**
+   * Type will be #GNUNET_MESSAGE_TYPE_TRANSPORT_MONITOR_PLUGIN_EVENT.
+   */
+  struct GNUNET_MessageHeader header;
+
+  /**
+   * An `enum GNUNET_TRANSPORT_SessionState` in NBO.
+   */
+  uint16_t session_state GNUNET_PACKED;
+
+  /**
+   * #GNUNET_YES if this is an inbound connection,
+   * #GNUNET_NO if this is an outbound connection,
+   * #GNUNET_SYSERR if connections of this plugin
+   *             are so fundamentally bidirectional
+   *             that they have no 'initiator'
+   * Value given in NBO.
+   */
+  int16_t is_inbound GNUNET_PACKED;
+
+  /**
+   * Number of messages waiting transmission.
+   */
+  uint32_t msgs_pending GNUNET_PACKED;
+
+  /**
+   * Number of bytes waiting for transmission.
+   */
+  uint32_t bytes_pending GNUNET_PACKED;
+
+  /**
+   * When will this transport plugin session time out?
+   */
+  struct GNUNET_TIME_AbsoluteNBO timeout;
+
+  /**
+   * Until how long is this plugin currently blocked from reading?
+   */
+  struct GNUNET_TIME_AbsoluteNBO delay;
+
+  /**
+   * Which peer is this connection for?
+   */
+  struct GNUNET_PeerIdentity peer;
+
+  /**
+   * Unique identifier for the session.
+   */
+  uint64_t session_id;
+
+  /**
+   * Length of the plugin name in bytes, including 0-termination.
+   */
+  uint16_t plugin_name_len GNUNET_PACKED;
+
+  /**
+   * Length of the plugin address in bytes.
+   */
+  uint16_t plugin_address_len GNUNET_PACKED;
+
+  /* followed by 0-terminated plugin name and
+     @e plugin_address_len bytes of plugin address */
+
+};
+
+
 GNUNET_NETWORK_STRUCT_END
 
 /* end of transport.h */