-remove GNUNET_MQ_impl_send_commit, make it part of send_continue, to ensure calling...
[oweals/gnunet.git] / src / include / gnunet_protocols.h
index a2b3ae60d3da430dc7188b3f53f8530ee091bfca..3169e2318d91b06185c847027c5172de7a930205 100644 (file)
@@ -23,7 +23,7 @@
  * @brief constants for network protocols
  * @author Christian Grothoff
  * @defgroup protocols Types of messages used in GNUnet
- * @{ 
+ * @{
  */
 
 /*******************************************************************************
@@ -149,7 +149,7 @@ extern "C"
  ******************************************************************************/
 
 /**
- * Type of data messages from the plugin to the gnunet-wlan-helper 
+ * Type of data messages from the plugin to the gnunet-wlan-helper
  */
 #define GNUNET_MESSAGE_TYPE_WLAN_DATA_TO_HELPER 39
 
@@ -807,7 +807,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
 
@@ -816,6 +816,26 @@ extern "C"
  */
 #define GNUNET_MESSAGE_TYPE_MESH_DATA_ACK               261
 
+/**
+ * Key exchange encapsulation.
+ */
+#define GNUNET_MESSAGE_TYPE_MESH_KX                     262
+
+/**
+ * New ephemeral key.
+ */
+#define GNUNET_MESSAGE_TYPE_MESH_KX_EPHEMERAL           263
+
+/**
+ * Challenge to test peer's session key.
+ */
+#define GNUNET_MESSAGE_TYPE_MESH_KX_PING                264
+
+/**
+ * Answer to session key challenge.
+ */
+#define GNUNET_MESSAGE_TYPE_MESH_KX_PONG                265
+
 /**
  * Payload data origin->end DEPRECATED.
  */
@@ -843,7 +863,7 @@ extern "C"
 #define GNUNET_MESSAGE_TYPE_MESH_CONNECTION_DESTROY     266
 
 /**
- * Request the destruction of a whole tunnel 
+ * Request the destruction of a whole tunnel
  */
 #define GNUNET_MESSAGE_TYPE_MESH_TUNNEL_DESTROY         267
 
@@ -890,6 +910,11 @@ extern "C"
  */
 #define GNUNET_MESSAGE_TYPE_MESH_CHANNEL_ACK            275
 
+/**
+ * Reject the creation of a channel
+ */
+#define GNUNET_MESSAGE_TYPE_MESH_CHANNEL_NACK           276
+
 /**
  * Encrypted data going forward. DEPRECATED
  */
@@ -915,6 +940,11 @@ extern "C"
  */
 #define GNUNET_MESSAGE_TYPE_MESH_LOCAL_ACK              286
 
+/**
+ * Local NACK for rejected channels.
+ */
+#define GNUNET_MESSAGE_TYPE_MESH_LOCAL_NACK             287
+
 /**
  * Local information about all tunnels of service. DEPRECATED
  */
@@ -1350,38 +1380,52 @@ extern "C"
 
 
 /*******************************************************************************
- * NAMESTORE message types
+ * NAMECACHE message types
  ******************************************************************************/
 
 /**
  * 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_NAMECACHE_BLOCK_CACHE 433
+
+/**
+ * Service to client: result of block cache request
+ */
+#define GNUNET_MESSAGE_TYPE_NAMECACHE_BLOCK_CACHE_RESPONSE 434
+
+/*******************************************************************************
+ * NAMESTORE message types
+ ******************************************************************************/
 
 /**
  * Client to service: store records (as authority)
  */
-#define GNUNET_MESSAGE_TYPE_NAMESTORE_RECORD_STORE 433
+#define GNUNET_MESSAGE_TYPE_NAMESTORE_RECORD_STORE 435
 
 /**
  * Service to client: result of store operation.
  */
-#define GNUNET_MESSAGE_TYPE_NAMESTORE_RECORD_STORE_RESPONSE 434
+#define GNUNET_MESSAGE_TYPE_NAMESTORE_RECORD_STORE_RESPONSE 436
 
 /**
- * Client to service: cache a block
+ * Client to service: lookup label
  */
-#define GNUNET_MESSAGE_TYPE_NAMESTORE_BLOCK_CACHE 435
+#define GNUNET_MESSAGE_TYPE_NAMESTORE_RECORD_LOOKUP 437
 
 /**
- * Service to client: result of block cache request
+ * Service to client: lookup label
  */
-#define GNUNET_MESSAGE_TYPE_NAMESTORE_BLOCK_CACHE_RESPONSE 436
+#define GNUNET_MESSAGE_TYPE_NAMESTORE_RECORD_LOOKUP_RESPONSE 438
 
 /**
  * Client to service: "reverse" lookup for zone name based on zone key
@@ -1425,7 +1469,6 @@ extern "C"
  */
 #define GNUNET_MESSAGE_TYPE_NAMESTORE_ZONE_ITERATION_STOP 448
 
-
 /*******************************************************************************
  * LOCKMANAGER message types
  ******************************************************************************/
@@ -1791,12 +1834,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.
@@ -1828,6 +1871,15 @@ 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
 
 /*******************************************************************************
  * TESTBED LOGGER message types
@@ -1888,7 +1940,7 @@ extern "C"
 
 /**
  * Result in response to regex search.
- */ 
+ */
 #define GNUNET_MESSAGE_TYPE_REGEX_RESULT 622
 
 /*******************************************************************************
@@ -1981,15 +2033,25 @@ extern "C"
  */
 #define GNUNET_MESSAGE_TYPE_SCALARPRODUCT_ALICE_TO_BOB 642
 
+/**
+ * Vector-Product Service request -> remote VP Service Multipart
+ */
+#define GNUNET_MESSAGE_TYPE_SCALARPRODUCT_ALICE_TO_BOB_MULTIPART 643
+
 /**
  * remote Vector-Product Service response -> requesting VP Service
  */
-#define GNUNET_MESSAGE_TYPE_SCALARPRODUCT_BOB_TO_ALICE 643
+#define GNUNET_MESSAGE_TYPE_SCALARPRODUCT_BOB_TO_ALICE 644
+
+/**
+ * remote Vector-Product Service response -> requesting VP Service Multipart
+ */
+#define GNUNET_MESSAGE_TYPE_SCALARPRODUCT_BOB_TO_ALICE_MULTIPART 645
 
 /**
  * Vector-Product Service response -> Client
  */
-#define GNUNET_MESSAGE_TYPE_SCALARPRODUCT_SERVICE_TO_CLIENT 644
+#define GNUNET_MESSAGE_TYPE_SCALARPRODUCT_SERVICE_TO_CLIENT 646
 
 
 /*******************************************************************************
@@ -2073,48 +2135,31 @@ extern "C"
 #define GNUNET_MESSAGE_TYPE_PSYC_CHANNEL_SLAVE_RM 690
 
 
-#define GNUNET_MESSAGE_TYPE_PSYC_TRANSMIT_METHOD 691
+#define GNUNET_MESSAGE_TYPE_PSYC_MESSAGE_METHOD 691
 
-#define GNUNET_MESSAGE_TYPE_PSYC_TRANSMIT_MODIFIER 692
+#define GNUNET_MESSAGE_TYPE_PSYC_MESSAGE_MODIFIER 692
 
-#define GNUNET_MESSAGE_TYPE_PSYC_TRANSMIT_MOD_CONT 693
+#define GNUNET_MESSAGE_TYPE_PSYC_MESSAGE_MOD_CONT 693
 
-#define GNUNET_MESSAGE_TYPE_PSYC_TRANSMIT_DATA 694
+#define GNUNET_MESSAGE_TYPE_PSYC_MESSAGE_DATA 694
 
 #define GNUNET_MESSAGE_TYPE_PSYC_TRANSMIT_ACK 695
 
 
-#define GNUNET_MESSAGE_TYPE_PSYC_MESSAGE_METHOD 696
-
-#define GNUNET_MESSAGE_TYPE_PSYC_MESSAGE_MODIFIER 697
-
-#define GNUNET_MESSAGE_TYPE_PSYC_MESSAGE_MOD_CONT 698
-
-#define GNUNET_MESSAGE_TYPE_PSYC_MESSAGE_DATA 699
-
-#define GNUNET_MESSAGE_TYPE_PSYC_MESSAGE_ACK 700
-
-
 #define GNUNET_MESSAGE_TYPE_PSYC_STORY_REQUEST 701
 
-#define GNUNET_MESSAGE_TYPE_PSYC_STORY_METHOD 702
-
-#define GNUNET_MESSAGE_TYPE_PSYC_STORY_MODIFIER 703
-
-#define GNUNET_MESSAGE_TYPE_PSYC_STORY_MOD_CONT 704
+#define GNUNET_MESSAGE_TYPE_PSYC_STORY_RESPONSE 702
 
-#define GNUNET_MESSAGE_TYPE_PSYC_STORY_DATA 705
 
-#define GNUNET_MESSAGE_TYPE_PSYC_STORY_ACK 706
+#define GNUNET_MESSAGE_TYPE_PSYC_STATE_GET 703
 
+#define GNUNET_MESSAGE_TYPE_PSYC_STATE_GET_PREFIX 704
 
-#define GNUNET_MESSAGE_TYPE_PSYC_STATE_GET 707
+#define GNUNET_MESSAGE_TYPE_PSYC_STATE_RESPONSE 705
 
-#define GNUNET_MESSAGE_TYPE_PSYC_STATE_GET_PREFIX 708
+#define GNUNET_MESSAGE_TYPE_PSYC_STATE_MODIFIER 706
 
-#define GNUNET_MESSAGE_TYPE_PSYC_STATE_MODIFIER 709
-
-#define GNUNET_MESSAGE_TYPE_PSYC_STATE_MOD_CONT 710
+#define GNUNET_MESSAGE_TYPE_PSYC_STATE_MOD_CONT 707
 
 
 /*******************************************************************************
@@ -2122,142 +2167,84 @@ extern "C"
  ******************************************************************************/
 
 /**
- * Client <-> Server message to initiate a new call
- */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_SESSION_INITIATE 730
-
-/**
- * Client <-> Server meessage to accept an incoming call
- */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_SESSION_ACCEPT 731
-
-/**
- * Client <-> Server message to reject an incoming call
- */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_SESSION_REJECT 732
-
-/**
- * Client <-> Server message to terminate a call
- */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_SESSION_TERMINATE 733
-
-/**
- * Client <-> Server message to initiate a new call
- */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_TEST 734
-
-/**
- * Server <-> Client message to initiate a new call
- */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_SC_SESSION_INITIATE 735
-
-/**
- * Server <-> Client meessage to accept an incoming call
- */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_SC_SESSION_ACCEPT 736
-
-/**
- * Server <-> Client message to reject an incoming call
+ * Message to transmit the audio between helper and speaker/microphone library.
  */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_SC_SESSION_REJECT 737
+#define GNUNET_MESSAGE_TYPE_CONVERSATION_AUDIO 730
 
 /**
- * Server <-> Client message to terminat a call
+ * Client -> Server message register a phone.
  */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_SC_SESSION_TERMINATE 738
+#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_REGISTER 731
 
 /**
- * Server <-> Client message to signalize the client that the service is already in use
+ * Client -> Server message to reject/hangup a call
  */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_SC_SERVICE_BLOCKED 739
+#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_PICK_UP 732
 
 /**
- * Server <-> Client message to signalize the client that the called peer is not connected
+ * Client -> Server message to reject/hangup a call
  */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_SC_PEER_NOT_CONNECTED 740
+#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_HANG_UP 733
 
 /**
- * Server <-> Client message to signalize the client that called peer does not answer
+ * Client <- Server message to indicate a ringing phone
  */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_SC_NO_ANSWER 741
+#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_CALL 734
 
 /**
- * Server <-> Client message to notify client of missed call
+ * Client <- Server message to indicate a ringing phone
  */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_SC_MISSED_CALL 742
+#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_RING 735
 
 /**
- * Server <-> Client message to signalize the client that there occured an error
+ * Client <-> Server message to suspend connection.
  */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_SC_ERROR 743
+#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_SUSPEND 736
 
 /**
- * Server <-> Client message to notify client of peer being available
+ * Client <-> Server message to resume connection.
  */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_SC_PEER_AVAILABLE 744
+#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_RESUME 737
 
 /**
- * Mesh message to sinal the remote peer the wish to initiate a new call
+ * Client <-> Server message to send audio data.
  */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_MESH_SESSION_INITIATE 745
+#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_PICKED_UP 738
 
 /**
- * Mesh message to signal the remote peer the acceptance of an initiated call
+ * Client <-> Server message to send audio data.
  */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_MESH_SESSION_ACCEPT 746
+#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_AUDIO 739
 
 /**
- * Mesh message to reject an a wish to initiate a new call
+ * Mesh: call initiation
  */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_MESH_SESSION_REJECT 747
+#define GNUNET_MESSAGE_TYPE_CONVERSATION_MESH_PHONE_RING 740
 
 /**
- * Mesh message to signal a remote peer the terminatation of a call
+ * Mesh: hang up / refuse call
  */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_MESH_SESSION_TERMINATE 748
+#define GNUNET_MESSAGE_TYPE_CONVERSATION_MESH_PHONE_HANG_UP 741
 
 /**
- * Server <-> Client message to notify client of peer being available
+ * Mesh: pick up phone (establish audio channel)
  */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_MESH_PEER_AVAILABLE 749
-
-
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_TEST 750
+#define GNUNET_MESSAGE_TYPE_CONVERSATION_MESH_PHONE_PICK_UP 742
 
 /**
-* Message to transmit the audio
-*/
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_AUDIO 751
-
-
-
-
-
-/**
- * Client -> Server message register a phone.
- */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_REGISTER 730
-
-/**
- * Client -> Server meessage to reject/hangup a call
+ * Mesh: phone suspended.
  */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_PICK_UP 731
+#define GNUNET_MESSAGE_TYPE_CONVERSATION_MESH_PHONE_SUSPEND 743
 
 /**
- * Client -> Server meessage to reject/hangup a call
+ * Mesh: phone resumed.
  */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_HANG_UP 732
+#define GNUNET_MESSAGE_TYPE_CONVERSATION_MESH_PHONE_RESUME 744
 
 /**
- * Client <- Server message to indicate a ringing phone
- */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_RING 733
-
-/**
- * Client <-> Server message to send audio data.
+ * Mesh: audio data
  */
-#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_AUDIO 734
-
+#define GNUNET_MESSAGE_TYPE_CONVERSATION_MESH_AUDIO 745
 
 
 /*******************************************************************************
@@ -2270,7 +2257,7 @@ extern "C"
 /**
  * Multicast message from the origin to all members.
  */
-#define GNUNET_MESSAGE_TYPE_MULTICAST_MESSAGE 760
+#define GNUNET_MESSAGE_TYPE_MULTICAST_MESSAGE 750
 
 /**
  * A unicast message from a group member to the origin.