Merge branch 'master' of ssh://gnunet.org/gnunet
[oweals/gnunet.git] / src / dv / dv.h
index cfa09409ef969e48856d26971d85777d22ee44f5..844cfb5e1cfb5c72724b649cb27562ae476671fc 100644 (file)
@@ -1,6 +1,6 @@
 /*
      This file is part of GNUnet.
-     (C) 2013 Christian Grothoff (and other contributing authors)
+     Copyright (C) 2013 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.
 */
 
 /**
@@ -37,7 +37,7 @@ GNUNET_NETWORK_STRUCT_BEGIN
 struct GNUNET_DV_ConnectMessage
 {
   /**
-   * Type:  GNUNET_MESSAGE_TYPE_TRANSPORT_DV_CONNECT
+   * Type: #GNUNET_MESSAGE_TYPE_DV_CONNECT
    */
   struct GNUNET_MessageHeader header;
 
@@ -51,6 +51,11 @@ struct GNUNET_DV_ConnectMessage
    */
   struct GNUNET_PeerIdentity peer;
 
+  /**
+   * The network the peer is in
+   */
+  uint32_t network GNUNET_PACKED;
+
 };
 
 
@@ -64,14 +69,14 @@ struct GNUNET_DV_ConnectMessage
 struct GNUNET_DV_DisconnectMessage
 {
   /**
-   * Type:  GNUNET_MESSAGE_TYPE_TRANSPORT_DV_DISCONNECT
+   * Type: #GNUNET_MESSAGE_TYPE_DV_DISCONNECT
    */
   struct GNUNET_MessageHeader header;
 
   /**
-   * The distance to the peer that we used to have
+   * Always zero.
    */
-  uint32_t distance GNUNET_PACKED;
+  uint32_t reserved GNUNET_PACKED;
 
   /**
    * The peer that is no longer available.
@@ -91,7 +96,7 @@ struct GNUNET_DV_DisconnectMessage
 struct GNUNET_DV_ReceivedMessage
 {
   /**
-   * Type:  GNUNET_MESSAGE_TYPE_TRANSPORT_DV_RECV
+   * Type: #GNUNET_MESSAGE_TYPE_DV_RECV
    */
   struct GNUNET_MessageHeader header;
 
@@ -116,14 +121,14 @@ struct GNUNET_DV_ReceivedMessage
 struct GNUNET_DV_SendMessage
 {
   /**
-   * Type: GNUNET_MESSAGE_TYPE_DV_SEND
+   * Type: #GNUNET_MESSAGE_TYPE_DV_SEND
    */
   struct GNUNET_MessageHeader header;
 
   /**
-   * Unique ID for this message, for confirm callback.
+   * Reserved for alignment. 0.
    */
-  uint32_t uid GNUNET_PACKED;
+  uint32_t reserved GNUNET_PACKED;
 
   /**
    * The (actual) target of the message
@@ -134,27 +139,34 @@ struct GNUNET_DV_SendMessage
 
 
 /**
- * Message from service to DV plugin, saying that a
- * SEND request was handled.  
+ * Message from service to DV plugin, saying that our
+ * distance to another peer changed.
  */
-struct GNUNET_DV_AckMessage
+struct GNUNET_DV_DistanceUpdateMessage
 {
   /**
-   * Type: GNUNET_MESSAGE_TYPE_DV_SEND_ACK
-   */ 
+   * Type: #GNUNET_MESSAGE_TYPE_DV_DISTANCE_CHANGED.
+   */
   struct GNUNET_MessageHeader header;
 
   /**
-   * Which message is being acknowledged?
+   * What is the new distance?
    */
-  uint32_t uid GNUNET_PACKED;
+  uint32_t distance GNUNET_PACKED;
 
   /**
-   * The (actual) target of the message
+   * The peer for which the distance changed.
    */
-  struct GNUNET_PeerIdentity target;
+  struct GNUNET_PeerIdentity peer;
+
+  /**
+   * The network the peer is in
+   */
+  uint32_t network GNUNET_PACKED;
 
 };
+
+
 GNUNET_NETWORK_STRUCT_END
 
 #endif