X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=src%2Fats%2Fats.h;h=6fae406324ab0b6195e8875ce4f9111b90c203c4;hb=bace3fe85e0dccc59a1d2352e028021e528608b5;hp=317528cade0510e02fe0001f4888c3498ae1b906;hpb=86ad1393cdf6c8b37437c330fce25ebfffbc8ffd;p=oweals%2Fgnunet.git diff --git a/src/ats/ats.h b/src/ats/ats.h index 317528cad..6fae40632 100644 --- a/src/ats/ats.h +++ b/src/ats/ats.h @@ -31,38 +31,46 @@ 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