- use a memory-efficient, cleaner info API (limiting concurrent info requests to 1)
[oweals/gnunet.git] / src / include / gnunet_protocols.h
index a3e40afd35c48c770e5d90036492efb213fc7235..77d7e216b82194de1d8efde99777c20c6417e6b6 100644 (file)
@@ -606,6 +606,15 @@ extern "C"
  */
 #define GNUNET_MESSAGE_TYPE_DHT_CLIENT_GET_RESULTS_KNOWN             156
 
+/**
+ * Trail setup request is received by a peer.
+ */
+#define GNUNET_MESSAGE_TYPE_DHT_P2P_TRAIL_SETUP                157
+
+/**
+ * Trail to a particular peer is returned to this peer.
+ */
+#define GNUNET_MESSAGE_TYPE_DHT_P2P_TRAIL_SETUP_RESULT         158
 
 /*******************************************************************************
  * HOSTLIST message types
@@ -784,21 +793,18 @@ extern "C"
 #define GNUNET_MESSAGE_TYPE_MESH_HELLO 216
 
 /**
- * Request the creation of a connection DEPRECATED
+ * Request the creation of a connection
  */
-#define GNUNET_MESSAGE_TYPE_MESH_PATH_CREATE            256
 #define GNUNET_MESSAGE_TYPE_MESH_CONNECTION_CREATE      256
 
 /**
- * Send origin an ACK that the connection is complete DEPRECATED
+ * Send origin an ACK that the connection is complete
  */
-#define GNUNET_MESSAGE_TYPE_MESH_PATH_ACK               257
 #define GNUNET_MESSAGE_TYPE_MESH_CONNECTION_ACK         257
 
 /**
- * Notify that a connection is no longer valid DEPRECATED
+ * Notify that a connection is no longer valid
  */
-#define GNUNET_MESSAGE_TYPE_MESH_PATH_BROKEN            258
 #define GNUNET_MESSAGE_TYPE_MESH_CONNECTION_BROKEN      258
 
 /**
@@ -807,7 +813,7 @@ extern "C"
 #define GNUNET_MESSAGE_TYPE_MESH_PATH_CHANGED           259
 
 /**
- * Payload data.
+ * Payload data (usually inside a encrypted tunnel).
  */
 #define GNUNET_MESSAGE_TYPE_MESH_DATA                   260
 
@@ -817,36 +823,30 @@ extern "C"
 #define GNUNET_MESSAGE_TYPE_MESH_DATA_ACK               261
 
 /**
- * Payload data origin->end DEPRECATED.
+ * Key exchange encapsulation.
  */
-#define GNUNET_MESSAGE_TYPE_MESH_UNICAST                260
+#define GNUNET_MESSAGE_TYPE_MESH_KX                     262
 
 /**
- * Payload data end->origin DEPRECATED.
+ * New ephemeral key.
  */
-#define GNUNET_MESSAGE_TYPE_MESH_TO_ORIGIN              262
+#define GNUNET_MESSAGE_TYPE_MESH_KX_EPHEMERAL           263
 
 /**
- * Confirm owner->dest data end-to-end (ack goes dest->owner). DEPRECATED
+ * Challenge to test peer's session key.
  */
-#define GNUNET_MESSAGE_TYPE_MESH_UNICAST_ACK            263
+#define GNUNET_MESSAGE_TYPE_MESH_KX_PING                264
 
 /**
- * Confirm dest->owner data end-to-end (ack goes owner->dest). DEPRECATED
+ * Answer to session key challenge.
  */
-#define GNUNET_MESSAGE_TYPE_MESH_TO_ORIG_ACK            264
+#define GNUNET_MESSAGE_TYPE_MESH_KX_PONG                265
 
 /**
- * Request the destuction of a path (PATH DEPRECATED)
+ * Request the destuction of a connection
  */
-#define GNUNET_MESSAGE_TYPE_MESH_PATH_DESTROY           266
 #define GNUNET_MESSAGE_TYPE_MESH_CONNECTION_DESTROY     266
 
-/**
- * Request the destruction of a whole tunnel
- */
-#define GNUNET_MESSAGE_TYPE_MESH_TUNNEL_DESTROY         267
-
 /**
  * Hop-by-hop, connection dependent ACK.
  */
@@ -858,15 +858,9 @@ extern "C"
 #define GNUNET_MESSAGE_TYPE_MESH_POLL                   269
 
 /**
- * Announce origin is still alive.
- */
-#define GNUNET_MESSAGE_TYPE_MESH_FWD_KEEPALIVE          270
-#define GNUNET_MESSAGE_TYPE_MESH_KEEPALIVE          270
-
-/**
- * Announce destination is still alive. DEPRECATED
+ * Announce connection is still alive (direction sensitive).
  */
-#define GNUNET_MESSAGE_TYPE_MESH_BCK_KEEPALIVE          271
+#define GNUNET_MESSAGE_TYPE_MESH_KEEPALIVE              270
 
 /**
  * Connect to the mesh service, specifying subscriptions
@@ -874,16 +868,14 @@ extern "C"
 #define GNUNET_MESSAGE_TYPE_MESH_LOCAL_CONNECT          272
 
 /**
- * Ask the mesh service to create a new tunnel DEPRECATED
+ * Ask the mesh service to create a new channel.
  */
 #define GNUNET_MESSAGE_TYPE_MESH_CHANNEL_CREATE         273
-#define GNUNET_MESSAGE_TYPE_MESH_LOCAL_TUNNEL_CREATE    273
 
 /**
- * Ask the mesh service to destroy a tunnel DEPRECATED
+ * Ask the mesh service to destroy a channel.
  */
 #define GNUNET_MESSAGE_TYPE_MESH_CHANNEL_DESTROY        274
-#define GNUNET_MESSAGE_TYPE_MESH_LOCAL_TUNNEL_DESTROY   274
 
 /**
  * Confirm the creation of a channel
@@ -891,20 +883,15 @@ extern "C"
 #define GNUNET_MESSAGE_TYPE_MESH_CHANNEL_ACK            275
 
 /**
- * Encrypted data going forward. DEPRECATED
+ * Reject the creation of a channel
  */
-#define GNUNET_MESSAGE_TYPE_MESH_FWD                    280
+#define GNUNET_MESSAGE_TYPE_MESH_CHANNEL_NACK           276
 
 /**
  * Encrypted data. (Payload, channel management, keepalive)
  */
 #define GNUNET_MESSAGE_TYPE_MESH_ENCRYPTED              280
 
-/**
- * Encrypted data going backwards.
- */
-#define GNUNET_MESSAGE_TYPE_MESH_BCK                    281
-
 /**
  * Payload client <-> service
  */
@@ -916,16 +903,49 @@ extern "C"
 #define GNUNET_MESSAGE_TYPE_MESH_LOCAL_ACK              286
 
 /**
- * Local information about all tunnels of service. DEPRECATED
+ * Local information about all channels of service.
+ */
+#define GNUNET_MESSAGE_TYPE_MESH_LOCAL_INFO_CHANNELS    290
+
+/**
+ * Local information of service about a specific channel.
  */
-#define GNUNET_MESSAGE_TYPE_MESH_LOCAL_INFO_TUNNELS     287
-#define GNUNET_MESSAGE_TYPE_MESH_LOCAL_INFO_CHANNELS    287
+#define GNUNET_MESSAGE_TYPE_MESH_LOCAL_INFO_CHANNEL     291
 
 /**
- * Local information of service about a specific tunnel. DEPRECATED
+ * Local information about all tunnels of service.
  */
-#define GNUNET_MESSAGE_TYPE_MESH_LOCAL_INFO_TUNNEL      288
-#define GNUNET_MESSAGE_TYPE_MESH_LOCAL_INFO_CHANNEL     288
+#define GNUNET_MESSAGE_TYPE_MESH_LOCAL_INFO_TUNNELS     292
+
+/**
+ * Local information of service about a specific tunnel.
+ */
+#define GNUNET_MESSAGE_TYPE_MESH_LOCAL_INFO_TUNNEL      293
+
+/**
+ * Local information about all connections of service.
+ */
+#define GNUNET_MESSAGE_TYPE_MESH_LOCAL_INFO_CONNECTIONS 294
+
+/**
+ * Local information of service about a specific connection.
+ */
+#define GNUNET_MESSAGE_TYPE_MESH_LOCAL_INFO_CONNECTION  295
+
+/**
+ * Local information about all peers known to the service.
+ */
+#define GNUNET_MESSAGE_TYPE_MESH_LOCAL_INFO_PEERS       296
+
+/**
+ * Local information of service about a specific peer.
+ */
+#define GNUNET_MESSAGE_TYPE_MESH_LOCAL_INFO_PEER        297
+
+/**
+ * Traffic (net-cat style) used by the Command Line Interface.
+ */
+#define GNUNET_MESSAGE_TYPE_MESH_CLI                    298
 
 /**
  * 640kb should be enough for everybody
@@ -1277,7 +1297,7 @@ extern "C"
 /**
  * Request to monitor addresses used by a peer or all peers.
  */
-#define GNUNET_MESSAGE_TYPE_TRANSPORT_ADDRESS_ITERATE 380
+#define GNUNET_MESSAGE_TYPE_TRANSPORT_MONITOR_PEER_REQUEST 380
 
 /**
  * Message send by a peer to notify the other to keep the session alive
@@ -1286,16 +1306,16 @@ extern "C"
 #define GNUNET_MESSAGE_TYPE_TRANSPORT_SESSION_KEEPALIVE 381
 
 /**
- * Response to a GNUNET_MESSAGE_TYPE_TRANSPORT_SESSION_KEEPALIVE message to
+ * Response to a #GNUNET_MESSAGE_TYPE_TRANSPORT_SESSION_KEEPALIVE message to
  * measure latency in a regular interval
  */
 #define GNUNET_MESSAGE_TYPE_TRANSPORT_SESSION_KEEPALIVE_RESPONSE 382
 
-
 /**
- * Request to iterate over all known addresses.
+ * Response to #GNUNET_MESSAGE_TYPE_TRANSPORT_MONITOR_PEER_REQUEST
+ * request to iterate over all known addresses.
  */
-#define GNUNET_MESSAGE_TYPE_TRANSPORT_ADDRESS_ITERATE_RESPONSE 383
+#define GNUNET_MESSAGE_TYPE_TRANSPORT_MONITOR_PEER_RESPONSE 383
 
 /**
  * Message send by a peer to notify the other to keep the session alive.
@@ -1307,7 +1327,16 @@ extern "C"
  */
 #define GNUNET_MESSAGE_TYPE_TRANSPORT_TRAFFIC_METRIC 385
 
+/**
+ * Request to monitor address validations by a peer or all peers.
+ */
+#define GNUNET_MESSAGE_TYPE_TRANSPORT_MONITOR_VALIDATION_REQUEST 386
 
+/**
+ * Response to #GNUNET_MESSAGE_TYPE_TRANSPORT_MONITOR_VALIDATION_REQUEST
+ * request to iterate over all known addresses.
+ */
+#define GNUNET_MESSAGE_TYPE_TRANSPORT_MONITOR_VALIDATION_RESPONSE 387
 
 /*******************************************************************************
  * FS-PUBLISH-HELPER IPC Messages
@@ -1356,25 +1385,21 @@ extern "C"
 /**
  * Client to service: lookup block
  */
-#define GNUNET_MESSAGE_TYPE_NAMESTORE_LOOKUP_BLOCK 431
 #define GNUNET_MESSAGE_TYPE_NAMECACHE_LOOKUP_BLOCK 431
 
 /**
  * Service to client: result of block lookup
  */
-#define GNUNET_MESSAGE_TYPE_NAMESTORE_LOOKUP_BLOCK_RESPONSE 432
 #define GNUNET_MESSAGE_TYPE_NAMECACHE_LOOKUP_BLOCK_RESPONSE 432
 
 /**
  * Client to service: cache a block
  */
-#define GNUNET_MESSAGE_TYPE_NAMESTORE_BLOCK_CACHE 433
 #define GNUNET_MESSAGE_TYPE_NAMECACHE_BLOCK_CACHE 433
 
 /**
  * Service to client: result of block cache request
  */
-#define GNUNET_MESSAGE_TYPE_NAMESTORE_BLOCK_CACHE_RESPONSE 434
 #define GNUNET_MESSAGE_TYPE_NAMECACHE_BLOCK_CACHE_RESPONSE 434
 
 /*******************************************************************************
@@ -1391,6 +1416,16 @@ extern "C"
  */
 #define GNUNET_MESSAGE_TYPE_NAMESTORE_RECORD_STORE_RESPONSE 436
 
+/**
+ * Client to service: lookup label
+ */
+#define GNUNET_MESSAGE_TYPE_NAMESTORE_RECORD_LOOKUP 437
+
+/**
+ * Service to client: lookup label
+ */
+#define GNUNET_MESSAGE_TYPE_NAMESTORE_RECORD_LOOKUP_RESPONSE 438
+
 /**
  * Client to service: "reverse" lookup for zone name based on zone key
  */
@@ -1433,7 +1468,6 @@ extern "C"
  */
 #define GNUNET_MESSAGE_TYPE_NAMESTORE_ZONE_ITERATION_STOP 448
 
-
 /*******************************************************************************
  * LOCKMANAGER message types
  ******************************************************************************/
@@ -1799,12 +1833,12 @@ extern "C"
 /**
  * Strata estimator.
  */
-#define GNUNET_MESSAGE_TYPE_SET_P2P_SE 582
+#define GNUNET_MESSAGE_TYPE_SET_UNION_P2P_SE 582
 
 /**
  * Invertible bloom filter.
  */
-#define GNUNET_MESSAGE_TYPE_SET_P2P_IBF 583
+#define GNUNET_MESSAGE_TYPE_SET_UNION_P2P_IBF 583
 
 /**
  * Actual set elements.
@@ -1836,6 +1870,20 @@ extern "C"
  */
 #define GNUNET_MESSAGE_TYPE_SET_ITER_DONE 589
 
+/**
+ * Information about the element count for intersection
+ */
+#define GNUNET_MESSAGE_TYPE_SET_INTERSECTION_P2P_ELEMENT_INFO 591
+
+/**
+ * Bloom filter message for intersection exchange started by Bob.
+ */
+#define GNUNET_MESSAGE_TYPE_SET_INTERSECTION_P2P_BF 592
+
+/**
+ * Bloom filter message for intersection exchange started by Bob.
+ */
+#define GNUNET_MESSAGE_TYPE_SET_INTERSECTION_P2P_BF_PART 593
 
 /*******************************************************************************
  * TESTBED LOGGER message types
@@ -2091,15 +2139,21 @@ extern "C"
 #define GNUNET_MESSAGE_TYPE_PSYC_CHANNEL_SLAVE_RM 690
 
 
-#define GNUNET_MESSAGE_TYPE_PSYC_MESSAGE_METHOD 691
+#define GNUNET_MESSAGE_TYPE_PSYC_MESSAGE 691
+
+#define GNUNET_MESSAGE_TYPE_PSYC_MESSAGE_METHOD 692
+
+#define GNUNET_MESSAGE_TYPE_PSYC_MESSAGE_MODIFIER 693
 
-#define GNUNET_MESSAGE_TYPE_PSYC_MESSAGE_MODIFIER 692
+#define GNUNET_MESSAGE_TYPE_PSYC_MESSAGE_MOD_CONT 694
 
-#define GNUNET_MESSAGE_TYPE_PSYC_MESSAGE_MOD_CONT 693
+#define GNUNET_MESSAGE_TYPE_PSYC_MESSAGE_DATA 695
 
-#define GNUNET_MESSAGE_TYPE_PSYC_MESSAGE_DATA 694
+#define GNUNET_MESSAGE_TYPE_PSYC_MESSAGE_END 696
 
-#define GNUNET_MESSAGE_TYPE_PSYC_TRANSMIT_ACK 695
+#define GNUNET_MESSAGE_TYPE_PSYC_MESSAGE_CANCEL 697
+
+#define GNUNET_MESSAGE_TYPE_PSYC_MESSAGE_ACK 698
 
 
 #define GNUNET_MESSAGE_TYPE_PSYC_STORY_REQUEST 701
@@ -2130,67 +2184,77 @@ extern "C"
 /**
  * Client -> Server message register a phone.
  */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_REGISTER 730
+#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_REGISTER 731
 
 /**
- * Client -> Server meessage to reject/hangup a call
+ * Client -> Server message to reject/hangup a call
  */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_PICK_UP 731
+#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_PICK_UP 732
 
 /**
- * Client -> Server meessage to reject/hangup a call
+ * Client -> Server message to reject/hangup a call
  */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_HANG_UP 732
+#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_HANG_UP 733
 
 /**
  * Client <- Server message to indicate a ringing phone
  */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_CALL 733
+#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_CALL 734
 
 /**
  * Client <- Server message to indicate a ringing phone
  */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_RING 734
+#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_RING 735
 
 /**
- * Client <-> Server message to send audio data.
+ * Client <-> Server message to suspend connection.
  */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_BUSY 735
+#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_SUSPEND 736
+
+/**
+ * Client <-> Server message to resume connection.
+ */
+#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_RESUME 737
 
 /**
  * Client <-> Server message to send audio data.
  */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_PICKED_UP 736
+#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_PICKED_UP 738
 
 /**
  * Client <-> Server message to send audio data.
  */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_AUDIO 737
+#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_AUDIO 739
 
 /**
  * Mesh: call initiation
  */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_MESH_PHONE_RING 738
+#define GNUNET_MESSAGE_TYPE_CONVERSATION_MESH_PHONE_RING 740
 
 /**
  * Mesh: hang up / refuse call
  */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_MESH_PHONE_HANG_UP 739
+#define GNUNET_MESSAGE_TYPE_CONVERSATION_MESH_PHONE_HANG_UP 741
 
 /**
  * Mesh: pick up phone (establish audio channel)
  */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_MESH_PHONE_PICK_UP 740
+#define GNUNET_MESSAGE_TYPE_CONVERSATION_MESH_PHONE_PICK_UP 742
+
+/**
+ * Mesh: phone suspended.
+ */
+#define GNUNET_MESSAGE_TYPE_CONVERSATION_MESH_PHONE_SUSPEND 743
 
 /**
- * Mesh: phone is busy (refuse nicely)
+ * Mesh: phone resumed.
  */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_MESH_PHONE_BUSY 741
+#define GNUNET_MESSAGE_TYPE_CONVERSATION_MESH_PHONE_RESUME 744
 
 /**
  * Mesh: audio data
  */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_MESH_AUDIO 742
+#define GNUNET_MESSAGE_TYPE_CONVERSATION_MESH_AUDIO 745
 
 
 /*******************************************************************************
@@ -2252,9 +2316,39 @@ extern "C"
 #define GNUNET_MESSAGE_TYPE_MULTICAST_REPLAY_REQUEST_CANCEL
 
 
+
+/*******************************************************************************
+ * SECRETSHARING message types
+ ******************************************************************************/
+
+
 /**
- * Next available: 780
+ * Establish a new session.
  */
+#define GNUNET_MESSAGE_TYPE_SECRETSHARING_CLIENT_GENERATE 780
+
+/**
+ * Request the decryption of a ciphertext.
+ */
+#define GNUNET_MESSAGE_TYPE_SECRETSHARING_CLIENT_DECRYPT 781
+
+/**
+ * The service succeeded in decrypting a ciphertext.
+ */
+#define GNUNET_MESSAGE_TYPE_SECRETSHARING_CLIENT_DECRYPT_DONE 782
+
+/**
+ * The cryptosystem has been established.
+ * Contains the peer's share.
+ */
+#define GNUNET_MESSAGE_TYPE_SECRETSHARING_CLIENT_SECRET_READY 783
+
+
+
+/**
+ * Next available: 800
+ */
+
 
 
 /*******************************************************************************