*/
#define GNUNET_MESSAGE_TYPE_TEST 1
+/**
+ * Dummy messages for testing / benchmarking.
+ */
+#define GNUNET_MESSAGE_TYPE_DUMMY 2
+
/*******************************************************************************
* RESOLVER message types
******************************************************************************/
*/
#define GNUNET_MESSAGE_TYPE_CORE_NOTIFY_OUTBOUND 71
-/**
- * Request from client to "configure" P2P connection.
- */
-#define GNUNET_MESSAGE_TYPE_CORE_REQUEST_INFO 72
-
-/**
- * Response from server about (possibly updated) P2P
- * connection configuration.
- */
-#define GNUNET_MESSAGE_TYPE_CORE_CONFIGURATION_INFO 73
-
/**
* Request from client to transmit message.
*/
*/
#define GNUNET_MESSAGE_TYPE_CORE_SEND 76
-/**
- * Request from client asking to connect to a peer.
- */
-#define GNUNET_MESSAGE_TYPE_CORE_REQUEST_CONNECT 77
/**
* Request for peer iteration from CORE service.
******************************************************************************/
/**
- * Local DHT route request type
- */
-#define GNUNET_MESSAGE_TYPE_DHT_LOCAL_ROUTE 142
-
-/**
- * Local generic DHT route result type
- */
-#define GNUNET_MESSAGE_TYPE_DHT_LOCAL_ROUTE_RESULT 143
-
-/**
- * P2P DHT route request type
- */
-#define GNUNET_MESSAGE_TYPE_DHT_P2P_ROUTE 144
-
-/**
- * P2P DHT route result type
- */
-#define GNUNET_MESSAGE_TYPE_DHT_P2P_ROUTE_RESULT 145
-
-/**
- * Local generic DHT message stop type
- */
-#define GNUNET_MESSAGE_TYPE_DHT_LOCAL_ROUTE_STOP 146
-
-/**
- * Local and P2P DHT PUT message
- * (encapsulated in DHT_ROUTE message)
+ * Client wants to store item in DHT.
*/
-#define GNUNET_MESSAGE_TYPE_DHT_PUT 147
+#define GNUNET_MESSAGE_TYPE_DHT_CLIENT_PUT 142
/**
- * Local and P2P DHT GET message
- * (encapsulated in DHT_ROUTE message)
+ * Client wants to lookup item in DHT.
*/
-#define GNUNET_MESSAGE_TYPE_DHT_GET 148
+#define GNUNET_MESSAGE_TYPE_DHT_CLIENT_GET 143
/**
- * Local and P2P DHT Get result message
+ * Client wants to stop search in DHT.
*/
-#define GNUNET_MESSAGE_TYPE_DHT_GET_RESULT 149
+#define GNUNET_MESSAGE_TYPE_DHT_CLIENT_GET_STOP 144
/**
- * Local and P2P DHT find peer message
+ * Service returns result to client.
*/
-#define GNUNET_MESSAGE_TYPE_DHT_FIND_PEER 150
+#define GNUNET_MESSAGE_TYPE_DHT_CLIENT_RESULT 145
/**
- * Local and P2P DHT find peer result message
+ * Peer is storing data in DHT.
*/
-#define GNUNET_MESSAGE_TYPE_DHT_FIND_PEER_RESULT 151
+#define GNUNET_MESSAGE_TYPE_DHT_P2P_PUT 146
/**
- * P2P DHT PING request type
+ * Peer tries to find data in DHT.
*/
-#define GNUNET_MESSAGE_TYPE_DHT_P2P_PING 152
+#define GNUNET_MESSAGE_TYPE_DHT_P2P_GET 147
/**
- * DHT Control message type, for telling the
- * DHT to alter its current operation somehow.
+ * Data is returned to peer from DHT.
*/
-#define GNUNET_MESSAGE_TYPE_DHT_CONTROL 153
+#define GNUNET_MESSAGE_TYPE_DHT_P2P_RESULT 148
-/**
- * Local control message type, tells peer to start
- * issuing malicious GET requests.
- */
-#define GNUNET_MESSAGE_TYPE_DHT_MALICIOUS_GET 154
-
-/**
- * Local control message type, tells peer to start
- * issuing malicious PUT requests.
- */
-#define GNUNET_MESSAGE_TYPE_DHT_MALICIOUS_PUT 155
-
-/**
- * Local control message type, tells peer to start
- * dropping all requests.
- */
-#define GNUNET_MESSAGE_TYPE_DHT_MALICIOUS_DROP 156
/*******************************************************************************
* HOSTLIST message types
#define GNUNET_MESSAGE_TYPE_MESH_PATH_CHANGE 257
/**
- * Request the addition to a new branch to a path
+ * Notify that a connection of a path is no longer valid
*/
-#define GNUNET_MESSAGE_TYPE_MESH_PATH_ADD 258
+#define GNUNET_MESSAGE_TYPE_MESH_PATH_BROKEN 258
/**
* At some point, the route will spontaneously change
/**
* Transport data back in the mesh (end->origin)
- * (not sure if this is the right way, should be some other solution)
*/
#define GNUNET_MESSAGE_TYPE_MESH_TO_ORIGIN 262
*/
#define GNUNET_MESSAGE_TYPE_MESH_PATH_ACK 263
+/**
+ * Avoid path timeouts
+ */
+#define GNUNET_MESSAGE_TYPE_MESH_PATH_KEEPALIVE 264
+
+/**
+ * Request the destuction of a path
+ */
+#define GNUNET_MESSAGE_TYPE_MESH_PATH_DESTROY 265
+
+/**
+ * Request the destruction of a whole tunnel
+ */
+#define GNUNET_MESSAGE_TYPE_MESH_TUNNEL_DESTROY 266
+
/**
* We need flow control
*/
/**
* Ask the mesh service to add a peer to an existing tunnel
*/
-#define GNUNET_MESSAGE_TYPE_MESH_LOCAL_CONNECT_PEER_ADD 275
+#define GNUNET_MESSAGE_TYPE_MESH_LOCAL_PEER_ADD 275
/**
* Ask the mesh service to remove a peer from a tunnel
*/
-#define GNUNET_MESSAGE_TYPE_MESH_LOCAL_CONNECT_PEER_DEL 276
+#define GNUNET_MESSAGE_TYPE_MESH_LOCAL_PEER_DEL 276
/**
* Ask the mesh service to add a peer offering a service to an existing tunnel
*/
-#define GNUNET_MESSAGE_TYPE_MESH_LOCAL_CONNECT_PEER_BY_TYPE 277
-
-/**
- * Ask the mesh service to cancel a peer connection request
- */
-#define GNUNET_MESSAGE_TYPE_MESH_LOCAL_CONNECT_PEER_CANCEL 278
-
-/**
- * Notify a mesh client that a peer has connected to a tunnel
- */
-#define GNUNET_MESSAGE_TYPE_MESH_LOCAL_PEER_CONNECTED 279
-
-/**
- * Notify a mesh client that a peer has disconnected from a tunnel
- */
-#define GNUNET_MESSAGE_TYPE_MESH_LOCAL_PEER_DISCONNECTED 280
-
+#define GNUNET_MESSAGE_TYPE_MESH_LOCAL_PEER_ADD_BY_TYPE 277
/**
* 640kb should be enough for everybody
*/
-#define GNUNET_MESSAGE_TYPE_MESH_RESERVE_END 288
+#define GNUNET_MESSAGE_TYPE_MESH_RESERVE_END 288
*/
#define GNUNET_MESSAGE_TYPE_PEERINFO_NOTIFY 334
+/*******************************************************************************
+ * ATS message types
+ ******************************************************************************/
+
+/**
+ * Type of the 'struct ClientStartMessage' sent by clients to ATS to
+ * identify the type of the client.
+ */
+#define GNUNET_MESSAGE_TYPE_ATS_START 340
+
+/**
+ * Type of the 'struct RequestAddressMessage' sent by clients to ATS
+ * to request an address to help connect.
+ */
+#define GNUNET_MESSAGE_TYPE_ATS_REQUEST_ADDRESS 341
+
+/**
+ * Type of the 'struct AddressUpdateMessage' sent by clients to ATS
+ * to inform ATS about performance changes.
+ */
+#define GNUNET_MESSAGE_TYPE_ATS_ADDRESS_UPDATE 342
+
+/**
+ * Type of the 'struct AddressDestroyedMessage' sent by clients to ATS
+ * to inform ATS about an address being unavailable.
+ */
+#define GNUNET_MESSAGE_TYPE_ATS_ADDRESS_DESTROYED 343
+
+/**
+ * Type of the 'struct AddressSuggestionMessage' sent by ATS to clients
+ * to suggest switching to a different address.
+ */
+#define GNUNET_MESSAGE_TYPE_ATS_ADDRESS_SUGGESTION 344
+
+/**
+ * Type of the 'struct PeerInformationMessage' sent by ATS to clients
+ * to inform about QoS for a particular connection.
+ */
+#define GNUNET_MESSAGE_TYPE_ATS_PEER_INFORMATION 345
+
+/**
+ * Type of the 'struct ReservationRequestMessage' sent by clients to ATS
+ * to ask for inbound bandwidth reservations.
+ */
+#define GNUNET_MESSAGE_TYPE_ATS_RESERVATION_REQUEST 346
+
+/**
+ * Type of the 'struct ReservationResultMessage' sent by ATS to clients
+ * in response to a reservation request.
+ */
+#define GNUNET_MESSAGE_TYPE_ATS_RESERVATION_RESULT 347
+
+/**
+ * Type of the 'struct ChangePreferenceMessage' sent by clients to ATS
+ * to ask for allocation preference changes.
+ */
+#define GNUNET_MESSAGE_TYPE_ATS_PREFERENCE_CHANGE 348
+
+/**
+ * Type of the 'struct SessionReleaseMessage' sent by ATS to client
+ * to confirm that a session ID was destroyed.
+ */
+#define GNUNET_MESSAGE_TYPE_ATS_SESSION_RELEASE 349
+
+
/*******************************************************************************
* TODO: we need a way to register message types centrally (via some webpage).
* For now: unofficial extensions should start at 48k, internal extensions