-report error if starting openssl failed
[oweals/gnunet.git] / src / ats / ats.h
index 317528cade0510e02fe0001f4888c3498ae1b906..6fae406324ab0b6195e8875ce4f9111b90c203c4 100644 (file)
 
 enum StartFlag
 {
-  
+
   START_FLAG_SCHEDULING = 0,
 
   START_FLAG_PERFORMANCE_WITH_PIC = 1,
 
   START_FLAG_PERFORMANCE_NO_PIC = 2
-
 };
 
+GNUNET_NETWORK_STRUCT_BEGIN
 
-
-struct ClientStart
+struct ClientStartMessage
 {
   struct GNUNET_MessageHeader header;
 
   /**
    * NBO value of an 'enum StartFlag'.
    */
-  uint32_t start_flag;
+  uint32_t start_flag GNUNET_PACKED;
 };
 
 
-
 struct RequestAddressMessage
 {
   struct GNUNET_MessageHeader header;
+
+  uint32_t reserved GNUNET_PACKED;
+
+  struct GNUNET_PeerIdentity peer;
+};
+
+struct ResetBackoffMessage
+{
+  struct GNUNET_MessageHeader header;
+
   uint32_t reserved GNUNET_PACKED;
 
   struct GNUNET_PeerIdentity peer;
 };
 
+
 struct AddressUpdateMessage
 {
   struct GNUNET_MessageHeader header;
@@ -78,13 +86,35 @@ struct AddressUpdateMessage
   uint32_t session_id GNUNET_PACKED;
 
   /* followed by:
-     - struct GNUNET_TRANSPORT_ATS_Information [ats_count];
-     - char address[address_length]
-     - char plugin_name[plugin_name_length] (including '\0'-termination).
-  */
+   * - struct GNUNET_ATS_Information [ats_count];
+   * - char address[address_length]
+   * - char plugin_name[plugin_name_length] (including '\0'-termination).
+   */
+
+};
+
+struct AddressUseMessage
+{
+  struct GNUNET_MessageHeader header;
+
+  struct GNUNET_PeerIdentity peer;
+
+  uint16_t in_use GNUNET_PACKED;
+
+  uint16_t address_length GNUNET_PACKED;
+
+  uint16_t plugin_name_length GNUNET_PACKED;
+
+  uint32_t session_id GNUNET_PACKED;
+
+  /* followed by:
+   * - char address[address_length]
+   * - char plugin_name[plugin_name_length] (including '\0'-termination).
+   */
 
 };
 
+
 struct AddressDestroyedMessage
 {
   struct GNUNET_MessageHeader header;
@@ -100,9 +130,9 @@ struct AddressDestroyedMessage
   uint32_t session_id GNUNET_PACKED;
 
   /* followed by:
-     - char address[address_length]
-     - char plugin_name[plugin_name_length] (including '\0'-termination).
-  */
+   * - char address[address_length]
+   * - char plugin_name[plugin_name_length] (including '\0'-termination).
+   */
 
 };
 
@@ -111,7 +141,7 @@ struct AddressSuggestionMessage
 {
   struct GNUNET_MessageHeader header;
 
-  uint32_t reserved GNUNET_PACKED;
+  uint32_t ats_count GNUNET_PACKED;
 
   struct GNUNET_PeerIdentity peer;
 
@@ -122,24 +152,28 @@ struct AddressSuggestionMessage
   uint32_t session_id GNUNET_PACKED;
 
   struct GNUNET_BANDWIDTH_Value32NBO bandwidth_out;
-  
+
   struct GNUNET_BANDWIDTH_Value32NBO bandwidth_in;
 
   /* followed by:
-     - char address[address_length]
-     - char plugin_name[plugin_name_length] (including '\0'-termination).
-  */
+   * - struct GNUNET_ATS_Information [ats_count];
+   * - char address[address_length]
+   * - char plugin_name[plugin_name_length] (including '\0'-termination).
+   */
 
 };
 
 
-
 struct PeerInformationMessage
 {
   struct GNUNET_MessageHeader header;
 
   uint32_t ats_count GNUNET_PACKED;
 
+  uint32_t address_active GNUNET_PACKED;
+
+  uint32_t id GNUNET_PACKED;
+
   struct GNUNET_PeerIdentity peer;
 
   uint16_t address_length GNUNET_PACKED;
@@ -147,18 +181,28 @@ struct PeerInformationMessage
   uint16_t plugin_name_length GNUNET_PACKED;
 
   struct GNUNET_BANDWIDTH_Value32NBO bandwidth_out;
-  
+
   struct GNUNET_BANDWIDTH_Value32NBO bandwidth_in;
 
-  /* followed by: 
-     - struct GNUNET_TRANSPORT_ATS_Information [ats_count];
-     - char address[address_length]
-     - char plugin_name[plugin_name_length] (including '\0'-termination).
-  */
+  /* followed by:
+   * - struct GNUNET_ATS_Information [ats_count];
+   * - char address[address_length]
+   * - char plugin_name[plugin_name_length] (including '\0'-termination).
+   */
 
 };
 
 
+struct AddressListRequestMessage
+{
+  struct GNUNET_MessageHeader header;
+
+  uint32_t id GNUNET_PACKED;
+
+  int32_t all GNUNET_PACKED;
+
+  struct GNUNET_PeerIdentity peer;
+};
 
 
 struct ReservationRequestMessage
@@ -171,6 +215,20 @@ struct ReservationRequestMessage
 };
 
 
+/**
+ * Message sent by ATS service to client to confirm that it is done
+ * using the given session ID.
+ */
+struct SessionReleaseMessage
+{
+  struct GNUNET_MessageHeader header;
+
+  uint32_t session_id GNUNET_PACKED;
+
+  struct GNUNET_PeerIdentity peer;
+};
+
+
 struct ReservationResultMessage
 {
   struct GNUNET_MessageHeader header;
@@ -182,14 +240,13 @@ struct ReservationResultMessage
   struct GNUNET_TIME_RelativeNBO res_delay;
 };
 
-
 struct PreferenceInformation
 {
 
   uint32_t preference_kind GNUNET_PACKED;
 
   float preference_value GNUNET_PACKED;
-  
+
 };
 
 
@@ -201,9 +258,10 @@ struct ChangePreferenceMessage
 
   struct GNUNET_PeerIdentity peer;
 
-  /* followed by 'num_preferences' 
-     struct PreferenceInformation values */
+  /* followed by 'num_preferences'
+   * struct PreferenceInformation values */
 };
+GNUNET_NETWORK_STRUCT_END