/*
This file is part of GNUnet.
- Copyright (C) 2001--2015 Christian Grothoff (and other contributing authors)
+ Copyright (C) 2001--2015 GNUnet e.V.
GNUnet is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published
*/
/**
- * @file include/gnunet_protocols.h
- * @brief constants for network protocols
* @author Christian Grothoff
- * @defgroup protocols Types of messages used in GNUnet
+ *
+ * @file
+ * Constants for network protocols
+ *
+ * @defgroup protocols Network protocol definitions
+ * Types of messages used in GNUnet.
+ *
+ * @see [Documentation](https://gnunet.org/ipc)
+ *
* @{
*/
/**
* Test if service is online.
+ *
+ * @deprecated!
*/
#define GNUNET_MESSAGE_TYPE_TEST 1
*/
#define GNUNET_MESSAGE_TYPE_ARM_MONITOR 14
+/**
+ * Test if ARM service is online.
+ */
+#define GNUNET_MESSAGE_TYPE_ARM_TEST 15
+
/*******************************************************************************
* HELLO message types
******************************************************************************/
*/
#define GNUNET_MESSAGE_TYPE_DATASTORE_PUT 95
-/**
- * Message sent by datastore client to update data.
- */
-#define GNUNET_MESSAGE_TYPE_DATASTORE_UPDATE 96
-
/**
* Message sent by datastore client to get data.
*/
*/
#define GNUNET_MESSAGE_TYPE_DATASTORE_DROP 103
+/**
+ * Message sent by datastore client to get data by key.
+ */
+#define GNUNET_MESSAGE_TYPE_DATASTORE_GET_KEY 104
+
/*******************************************************************************
* FS message types
*/
#define GNUNET_MESSAGE_TYPE_STATISTICS_WATCH_VALUE 173
+/**
+ * Client is done sending service requests and will now disconnect.
+ */
+#define GNUNET_MESSAGE_TYPE_STATISTICS_DISCONNECT 174
+
+/**
+ * Service confirms disconnect and that it is done processing
+ * all requests from the client.
+ */
+#define GNUNET_MESSAGE_TYPE_STATISTICS_DISCONNECT_CONFIRM 175
/*******************************************************************************
* VPN message types
#define GNUNET_MESSAGE_TYPE_DNS_HELPER 214
-/*******************************************************************************
- * CADET message types
- ******************************************************************************/
-
-/**
- * Type of message used to transport messages throug a CADET-tunnel (LEGACY)
- */
-#define GNUNET_MESSAGE_TYPE_CADET 215
-
-/**
- * Type of message used to send another peer which messages we want to receive
- * through a cadet-tunnel (LEGACY)
- */
-#define GNUNET_MESSAGE_TYPE_CADET_HELLO 216
-
-/**
- * Request the creation of a connection
- */
-#define GNUNET_MESSAGE_TYPE_CADET_CONNECTION_CREATE 256
-
-/**
- * Send origin an ACK that the connection is complete
- */
-#define GNUNET_MESSAGE_TYPE_CADET_CONNECTION_ACK 257
-
-/**
- * Notify that a connection is no longer valid
- */
-#define GNUNET_MESSAGE_TYPE_CADET_CONNECTION_BROKEN 258
-
-/**
- * At some point, the route will spontaneously change TODO
- */
-#define GNUNET_MESSAGE_TYPE_CADET_PATH_CHANGED 259
-
-/**
- * Payload data (usually inside a encrypted tunnel).
- */
-#define GNUNET_MESSAGE_TYPE_CADET_DATA 260
-
-/**
- * Confirm payload data end-to-end.
- */
-#define GNUNET_MESSAGE_TYPE_CADET_DATA_ACK 261
-
-/**
- * Key exchange encapsulation.
- */
-#define GNUNET_MESSAGE_TYPE_CADET_KX 262
-
-/**
- * New ephemeral key.
- */
-#define GNUNET_MESSAGE_TYPE_CADET_KX_EPHEMERAL 263
-
-/**
- * Answer to session key challenge.
- */
-#define GNUNET_MESSAGE_TYPE_CADET_KX_PONG 265
-
-/**
- * Request the destuction of a connection
- */
-#define GNUNET_MESSAGE_TYPE_CADET_CONNECTION_DESTROY 266
-
-/**
- * Hop-by-hop, connection dependent ACK.
- */
-#define GNUNET_MESSAGE_TYPE_CADET_ACK 268
-
-/**
- * Poll for a hop-by-hop ACK.
- */
-#define GNUNET_MESSAGE_TYPE_CADET_POLL 269
-
-/**
- * Announce connection is still alive (direction sensitive).
- */
-#define GNUNET_MESSAGE_TYPE_CADET_KEEPALIVE 270
-
-/**
- * Connect to the cadet service, specifying subscriptions
- */
-#define GNUNET_MESSAGE_TYPE_CADET_LOCAL_CONNECT 272
-
-/**
- * Ask the cadet service to create a new channel.
- */
-#define GNUNET_MESSAGE_TYPE_CADET_CHANNEL_CREATE 273
-
-/**
- * Ask the cadet service to destroy a channel.
- */
-#define GNUNET_MESSAGE_TYPE_CADET_CHANNEL_DESTROY 274
-
-/**
- * Confirm the creation of a channel
- */
-#define GNUNET_MESSAGE_TYPE_CADET_CHANNEL_ACK 275
-
-/**
- * Reject the creation of a channel
- */
-#define GNUNET_MESSAGE_TYPE_CADET_CHANNEL_NACK 276
-
-/**
- * Encrypted data. (Payload, channel management, keepalive)
- */
-#define GNUNET_MESSAGE_TYPE_CADET_ENCRYPTED 280
-
-/**
- * Axolotl key exchange.
- */
-#define GNUNET_MESSAGE_TYPE_CADET_AX_KX 281
-
-/**
- * Axolotl encrypted data.
- */
-#define GNUNET_MESSAGE_TYPE_CADET_AX 282
-
-/**
- * Payload client <-> service
- */
-#define GNUNET_MESSAGE_TYPE_CADET_LOCAL_DATA 285
-
-/**
- * Local ACK for data.
- */
-#define GNUNET_MESSAGE_TYPE_CADET_LOCAL_ACK 286
-
-/**
- * Local information about all channels of service.
- */
-#define GNUNET_MESSAGE_TYPE_CADET_LOCAL_INFO_CHANNELS 290
-
-/**
- * Local information of service about a specific channel.
- */
-#define GNUNET_MESSAGE_TYPE_CADET_LOCAL_INFO_CHANNEL 291
-
-/**
- * Local information about all tunnels of service.
- */
-#define GNUNET_MESSAGE_TYPE_CADET_LOCAL_INFO_TUNNELS 292
-
-/**
- * Local information of service about a specific tunnel.
- */
-#define GNUNET_MESSAGE_TYPE_CADET_LOCAL_INFO_TUNNEL 293
-
-/**
- * Local information about all connections of service.
- */
-#define GNUNET_MESSAGE_TYPE_CADET_LOCAL_INFO_CONNECTIONS 294
-
-/**
- * Local information of service about a specific connection.
- */
-#define GNUNET_MESSAGE_TYPE_CADET_LOCAL_INFO_CONNECTION 295
-
-/**
- * Local information about all peers known to the service.
- */
-#define GNUNET_MESSAGE_TYPE_CADET_LOCAL_INFO_PEERS 296
-
-/**
- * Local information of service about a specific peer.
- */
-#define GNUNET_MESSAGE_TYPE_CADET_LOCAL_INFO_PEER 297
-
-/**
- * Traffic (net-cat style) used by the Command Line Interface.
- */
-#define GNUNET_MESSAGE_TYPE_CADET_CLI 298
-
-/**
- * Debug request.
- */
-#define GNUNET_MESSAGE_TYPE_CADET_LOCAL_INFO_DUMP 299
-
-
/*******************************************************************************
* CHAT message types START
*/
#define GNUNET_MESSAGE_TYPE_TRANSPORT_PONG 373
-/**
- * Message for transport service from a client asking that a
- * connection be initiated with another peer.
- */
-#define GNUNET_MESSAGE_TYPE_TRANSPORT_REQUEST_CONNECT 374
-
/**
* Transport SYN message exchanged between transport services to
* indicate that a session should be marked as 'connected'.
*/
#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
-
/**
* Request to start monitoring the connection state of plugins.
*/
#define GNUNET_MESSAGE_TYPE_TRANSPORT_MONITOR_PLUGIN_SYNC 390
/**
- * Message for transport service from a client asking that a
- * connection with another peer be torn down.
+ * Response to #GNUNET_MESSAGE_TYPE_TRANSPORT_MONITOR_PEER_RESPONSE_END
+ * terminating list of replies.
*/
-#define GNUNET_MESSAGE_TYPE_TRANSPORT_REQUEST_DISCONNECT 391
+#define GNUNET_MESSAGE_TYPE_TRANSPORT_MONITOR_PEER_RESPONSE_END 391
/*******************************************************************************
#define GNUNET_MESSAGE_TYPE_TESTBED_SLAVE_CONFIGURATION 480
/**
- * Message to signal the result of GNUNET_MESSAGE_TYPE_TESTBED_LINK_CONTROLLERS request
+ * Message to signal the result of #GNUNET_MESSAGE_TYPE_TESTBED_LINK_CONTROLLERS request
*/
#define GNUNET_MESSAGE_TYPE_TESTBED_LINK_CONTROLLERS_RESULT 481
*/
#define GNUNET_MESSAGE_TYPE_GNS_LOOKUP_RESULT 501
+/**
+ * Reverse lookup
+ */
+#define GNUNET_MESSAGE_TYPE_GNS_REVERSE_LOOKUP 503
+
+/**
+ * Response to reverse lookup
+ */
+#define GNUNET_MESSAGE_TYPE_GNS_REVERSE_LOOKUP_RESULT 504
+
/*******************************************************************************
* CONSENSUS message types
* SET message types
******************************************************************************/
+/**
+ * Demand the whole element from the other
+ * peer, given only the hash code.
+ */
+#define GNUNET_MESSAGE_TYPE_SET_UNION_P2P_REQUEST_FULL 565
+
/**
* Demand the whole element from the other
* peer, given only the hash code.
*/
#define GNUNET_MESSAGE_TYPE_SET_ITER_DONE 589
+/**
+ * Compressed strata estimator.
+ */
+#define GNUNET_MESSAGE_TYPE_SET_UNION_P2P_SEC 590
+
/**
* Information about the element count for intersection
*/
*/
#define GNUNET_MESSAGE_TYPE_SET_COPY_LAZY_CONNECT 596
-
-/*******************************************************************************
- * TESTBED LOGGER message types
- ******************************************************************************/
-
/**
- * Message for TESTBED LOGGER
+ * Request all missing elements from the other peer,
+ * based on their sets and the elements we previously sent
+ * with #GNUNET_MESSAGE_TYPE_SET_P2P_ELEMENTS.
*/
-#define GNUNET_MESSAGE_TYPE_TESTBED_LOGGER_MSG 600
+#define GNUNET_MESSAGE_TYPE_SET_UNION_P2P_FULL_DONE 597
/**
- * Message for TESTBED LOGGER acknowledgement
+ * Send a set element, not as response to a demand but because
+ * we're sending the full set.
*/
-#define GNUNET_MESSAGE_TYPE_TESTBED_LOGGER_ACK 601
+#define GNUNET_MESSAGE_TYPE_SET_UNION_P2P_FULL_ELEMENT 598
/*******************************************************************************
- * EXPERIMENTATION message types
+ * TESTBED LOGGER message types
******************************************************************************/
/**
- * Message for experimentation request
- */
-#define GNUNET_MESSAGE_TYPE_EXPERIMENTATION_REQUEST 610
-
-/**
- * Message for experimentation response
- */
-#define GNUNET_MESSAGE_TYPE_EXPERIMENTATION_RESPONSE 611
-
-/**
- * Message for experimentation response
- */
-#define GNUNET_MESSAGE_TYPE_EXPERIMENTATION_START 612
-
-/**
- * Message for experimentation response
+ * Message for TESTBED LOGGER
*/
-#define GNUNET_MESSAGE_TYPE_EXPERIMENTATION_START_ACK 613
+#define GNUNET_MESSAGE_TYPE_TESTBED_LOGGER_MSG 600
/**
- * Message for experimentation response
+ * Message for TESTBED LOGGER acknowledgement
*/
-#define GNUNET_MESSAGE_TYPE_EXPERIMENTATION_STOP 614
-
+#define GNUNET_MESSAGE_TYPE_TESTBED_LOGGER_ACK 601
/**
* Client -> Alice multipart
*/
-#define GNUNET_MESSAGE_TYPE_SCALARPRODUCT_CLIENT_MUTLIPART_ALICE 642
+#define GNUNET_MESSAGE_TYPE_SCALARPRODUCT_CLIENT_MULTIPART_ALICE 642
/**
* Client -> Bob multipart
*/
-#define GNUNET_MESSAGE_TYPE_SCALARPRODUCT_CLIENT_MUTLIPART_BOB 643
+#define GNUNET_MESSAGE_TYPE_SCALARPRODUCT_CLIENT_MULTIPART_BOB 643
/**
* Alice -> Bob session initialization
#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_RESUME 737
/**
- * Client <-> Server message to send audio data.
+ * Service -> Client message to notify that phone was picked up.
*/
#define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_PICKED_UP 738
#define GNUNET_MESSAGE_TYPE_MULTICAST_REQUEST 758
/**
- * C<->S<->T: Replay request from a group member to another member.
- */
-#define GNUNET_MESSAGE_TYPE_MULTICAST_REPLAY_REQUEST 759
-
-/**
- * C<->S<->T: Cancellation of a replay request.
- */
-#define GNUNET_MESSAGE_TYPE_MULTICAST_REPLAY_REQUEST_CANCEL 760
-
-/**
- * S->C: Membership test request.
+ * C->S: Acknowledgement of a message or request fragment for the client.
*/
-#define GNUNET_MESSAGE_TYPE_MULTICAST_MEMBERSHIP_TEST 761
+#define GNUNET_MESSAGE_TYPE_MULTICAST_FRAGMENT_ACK 759
/**
- * C->S: Membership test result.
+ * C<->S<->T: Replay request from a group member to another member.
*/
-#define GNUNET_MESSAGE_TYPE_MULTICAST_MEMBERSHIP_TEST_RESULT 762
+#define GNUNET_MESSAGE_TYPE_MULTICAST_REPLAY_REQUEST 760
/**
* C<->S<->T: Replay response from a group member to another member.
*/
-#define GNUNET_MESSAGE_TYPE_MULTICAST_REPLAY_RESPONSE 763
+#define GNUNET_MESSAGE_TYPE_MULTICAST_REPLAY_RESPONSE 761
/**
* C<->S: End of replay response.
*/
-#define GNUNET_MESSAGE_TYPE_MULTICAST_REPLAY_RESPONSE_END 764
+#define GNUNET_MESSAGE_TYPE_MULTICAST_REPLAY_RESPONSE_END 762
#define GNUNET_MESSAGE_TYPE_SECRETSHARING_CLIENT_SECRET_READY 783
-/*******************************************************************************
- * SENSOR message types
- ******************************************************************************/
-
-/**
- * Request information about all sensors
- */
-#define GNUNET_MESSAGE_TYPE_SENSOR_GETALL 800
-
-/**
- * Request information about one sensor
- */
-#define GNUNET_MESSAGE_TYPE_SENSOR_GET 801
-
-/**
- * Message carrying sensor information
- */
-#define GNUNET_MESSAGE_TYPE_SENSOR_INFO 802
-
-/**
- * End of an iteration sequence
- */
-#define GNUNET_MESSAGE_TYPE_SENSOR_END 803
-
-/**
- * Message carrying a single sensor reading
- */
-#define GNUNET_MESSAGE_TYPE_SENSOR_READING 804
-
-/**
- * Request for sensor list from update point
- */
-#define GNUNET_MESSAGE_TYPE_SENSOR_LIST_REQ 805
-
-/**
- * Messsage carrying brief sensor information (name, version)
- */
-#define GNUNET_MESSAGE_TYPE_SENSOR_BRIEF 806
-
-/**
- * Request for full sensor information
- */
-#define GNUNET_MESSAGE_TYPE_SENSOR_FULL_REQ 807
-
-/**
- * Full sensor information
- */
-#define GNUNET_MESSAGE_TYPE_SENSOR_FULL 808
-
-/**
- * Sensor anomaly report
- */
-#define GNUNET_MESSAGE_TYPE_SENSOR_ANOMALY_REPORT 809
-
-/**
- * Message sent from API to service to force a new sensor anomaly status
- * (For testing purposes only)
- */
-#define GNUNET_MESSAGE_TYPE_SENSOR_ANOMALY_FORCE 810
-
-/**
- * Sensor anomaly report exchanged between peers
- */
-#define GNUNET_MESSAGE_TYPE_SENSOR_ANOMALY_REPORT_P2P 811
-
-
/*******************************************************************************
* PEERSTORE message types
******************************************************************************/
/** C->S: request to enter a place as a guest */
#define GNUNET_MESSAGE_TYPE_SOCIAL_GUEST_ENTER 843
+/** C->S: request to enter a place as a guest, using a GNS address */
+#define GNUNET_MESSAGE_TYPE_SOCIAL_GUEST_ENTER_BY_NAME 844
+
/** S->C: guest enter acknowledgement */
-#define GNUNET_MESSAGE_TYPE_SOCIAL_GUEST_ENTER_ACK 844
+#define GNUNET_MESSAGE_TYPE_SOCIAL_GUEST_ENTER_ACK 845
/** P->S->C: incoming entry request from PSYC */
-#define GNUNET_MESSAGE_TYPE_SOCIAL_ENTRY_REQUEST 845
+#define GNUNET_MESSAGE_TYPE_SOCIAL_ENTRY_REQUEST 846
/** C->S->P: decision about an entry request */
-#define GNUNET_MESSAGE_TYPE_SOCIAL_ENTRY_DECISION 846
+#define GNUNET_MESSAGE_TYPE_SOCIAL_ENTRY_DECISION 847
+
+/** C->S: request to leave a place */
+#define GNUNET_MESSAGE_TYPE_SOCIAL_PLACE_LEAVE 848
+
+/** C->S: add place to GNS zone */
+#define GNUNET_MESSAGE_TYPE_SOCIAL_ZONE_ADD_PLACE 849
+
+/** C->S: add nym to GNS zone */
+#define GNUNET_MESSAGE_TYPE_SOCIAL_ZONE_ADD_NYM 850
+
+/** C->S: connect application */
+#define GNUNET_MESSAGE_TYPE_SOCIAL_APP_CONNECT 851
+
+/** C->S: detach a place from application */
+#define GNUNET_MESSAGE_TYPE_SOCIAL_APP_DETACH 852
+
+/** S->C: notify about an existing ego */
+#define GNUNET_MESSAGE_TYPE_SOCIAL_APP_EGO 853
+
+/** S->C: end of ego list */
+#define GNUNET_MESSAGE_TYPE_SOCIAL_APP_EGO_END 854
+
+/** S->C: notify about an existing place */
+#define GNUNET_MESSAGE_TYPE_SOCIAL_APP_PLACE 855
+
+/** S->C: end of place list */
+#define GNUNET_MESSAGE_TYPE_SOCIAL_APP_PLACE_END 856
+
+/** C->S: set message processing flags */
+#define GNUNET_MESSAGE_TYPE_SOCIAL_MSG_PROC_SET 860
+
+/** C->S: clear message processing flags */
+#define GNUNET_MESSAGE_TYPE_SOCIAL_MSG_PROC_CLEAR 861
/*******************************************************************************
* X-VINE DHT messages
/* P2P Messages */
+/**
+ * RPS check liveliness message to check liveliness of other peer
+ */
+#define GNUNET_MESSAGE_TYPE_RPS_PP_CHECK_LIVE 950
+
/**
* RPS PUSH message to push own ID to another peer
*/
-#define GNUNET_MESSAGE_TYPE_RPS_PP_PUSH 950
+#define GNUNET_MESSAGE_TYPE_RPS_PP_PUSH 951
/**
* RPS PULL REQUEST message to request the local view of another peer
*/
-#define GNUNET_MESSAGE_TYPE_RPS_PP_PULL_REQUEST 951
+#define GNUNET_MESSAGE_TYPE_RPS_PP_PULL_REQUEST 952
/**
* RPS PULL REPLY message which contains the view of the other peer
*/
-#define GNUNET_MESSAGE_TYPE_RPS_PP_PULL_REPLY 952
+#define GNUNET_MESSAGE_TYPE_RPS_PP_PULL_REPLY 953
/**
* RPS CS REQUEST Message for the Client to request (a) random peer(s)
*/
-#define GNUNET_MESSAGE_TYPE_RPS_CS_REQUEST 953
+#define GNUNET_MESSAGE_TYPE_RPS_CS_REQUEST 954
/**
* RPS CS REPLY Message for the Server to send (a) random peer(s)
*/
-#define GNUNET_MESSAGE_TYPE_RPS_CS_REPLY 954
+#define GNUNET_MESSAGE_TYPE_RPS_CS_REPLY 955
/**
* RPS CS REQUEST CANCEL Message for the Client to cancel a request
*/
-#define GNUNET_MESSAGE_TYPE_RPS_CS_REQUEST_CANCEL 955
+#define GNUNET_MESSAGE_TYPE_RPS_CS_REQUEST_CANCEL 956
/**
* RPS CS SEED Message for the Client to seed peers into rps
*/
-#define GNUNET_MESSAGE_TYPE_RPS_CS_SEED 956
+#define GNUNET_MESSAGE_TYPE_RPS_CS_SEED 957
#ifdef ENABLE_MALICIOUS
/**
* Turn RPS service malicious
*/
-#define GNUNET_MESSAGE_TYPE_RPS_ACT_MALICIOUS 957
+#define GNUNET_MESSAGE_TYPE_RPS_ACT_MALICIOUS 958
#endif /* ENABLE_MALICIOUS */
-/*******************************************************************************/
+/******************************************************************************/
+
+
+/**************************************************
+ *
+ * IDENTITY PROVIDER MESSAGE TYPES
+ */
+#define GNUNET_MESSAGE_TYPE_IDENTITY_PROVIDER_ISSUE 961
+
+#define GNUNET_MESSAGE_TYPE_IDENTITY_PROVIDER_EXCHANGE 962
+
+#define GNUNET_MESSAGE_TYPE_IDENTITY_PROVIDER_ISSUE_RESULT 963
+
+#define GNUNET_MESSAGE_TYPE_IDENTITY_PROVIDER_EXCHANGE_RESULT 964
+
+/******************************************************************************/
+
+
+/******************************************************************************/
+/*********************************** CADET **********************************/
+/******************************************************************************/
+/* CADET: message types 1000-1059
+ * 1000-1009 Connection-level Messages
+ * 1010-1019 Channel-level Messages
+ * 1020-1029 Local Client-Service
+ * 1030-1039 Local Service Monitoring
+ * 1040-1049 Application Data
+ * 1050-1059 Reserved
+ */
+
+/******************************** Connection ********************************/
+
+/**
+ * Request the creation of a connection
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_CONNECTION_CREATE 1000
+
+/**
+ * Send origin an ACK that the connection is complete
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_CONNECTION_CREATE_ACK 1001
+
+/**
+ * Notify that a connection is no longer valid
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_CONNECTION_BROKEN 1002
+
+/**
+ * Request the destuction of a connection
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_CONNECTION_DESTROY 1003
+
+/**
+ * At some point, the route will spontaneously change TODO
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_CONNECTION_PATH_CHANGED_UNIMPLEMENTED 1004
+
+/**
+ * Hop-by-hop, connection dependent ACK.
+ *
+ * @deprecated
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_CONNECTION_HOP_BY_HOP_ENCRYPTED_ACK 1005
+
+/**
+ * We do not bother with ACKs for
+ * #GNUNET_MESSAGE_TYPE_CADET_TUNNEL_ENCRYPTED messages, but we instead
+ * poll for one if we got nothing for a while and start to be worried.
+ *
+ * @deprecated
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_TUNNEL_ENCRYPTED_POLL 1006
+
+/**
+ * Axolotl key exchange.
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_TUNNEL_KX 1007
+
+/**
+ * Axolotl encrypted data.
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_TUNNEL_ENCRYPTED 1008
+
+/**
+ * Axolotl key exchange response with authentication.
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_TUNNEL_KX_AUTH 1009
+
+
+
+/********************************** Channel *********************************/
+
+/**
+ * Payload data (inside an encrypted tunnel).
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_CHANNEL_APP_DATA 1010
+
+/**
+ * Confirm payload data end-to-end.
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_CHANNEL_APP_DATA_ACK 1011
+
+/**
+ * Announce connection is still alive (direction sensitive).
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_CHANNEL_KEEPALIVE 1012
+
+/**
+ * Ask the cadet service to create a new channel.
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_CHANNEL_OPEN 1013
+
+/**
+ * Ask the cadet service to destroy a channel.
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_CHANNEL_DESTROY 1014
+
+/**
+ * Confirm the creation of a channel
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_CHANNEL_OPEN_ACK 1015
+
+/**
+ * Reject the creation of a channel
+ *
+ * @deprecated
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_CHANNEL_OPEN_NACK_DEPRECATED 1016
+
+/*********************************** Local **********************************/
+
+/**
+ * Payload client <-> service
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_LOCAL_DATA 1020
+
+/**
+ * Local ACK for data.
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_LOCAL_ACK 1021
+
+/**
+ * Start listening on a port.
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_LOCAL_PORT_OPEN 1022
+
+/**
+ * Stop listening on a port.
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_LOCAL_PORT_CLOSE 1023
+
+/**
+ * Ask the cadet service to create a new channel.
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_LOCAL_CHANNEL_CREATE 1024
+
+/**
+ * Tell client that a channel was destroyed.
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_LOCAL_CHANNEL_DESTROY 1025
+
+/********************************** Monitor *********************************/
+
+
+/**
+ * Local information about all channels of service.
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_LOCAL_INFO_CHANNELS 1030
+
+/**
+ * Local information of service about a specific channel.
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_LOCAL_INFO_CHANNEL 1031
/**
- * Next available: 960
+ * Local information about all tunnels of service.
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_LOCAL_INFO_TUNNELS 1032
+
+/**
+ * Local information of service about a specific tunnel.
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_LOCAL_INFO_TUNNEL 1033
+
+/**
+ * Local information about all connections of service.
*/
+#define GNUNET_MESSAGE_TYPE_CADET_LOCAL_INFO_CONNECTIONS 1034
+
+/**
+ * Local information of service about a specific connection.
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_LOCAL_INFO_CONNECTION 1035
+
+/**
+ * Local information about all peers known to the service.
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_LOCAL_INFO_PEERS 1036
+
+/**
+ * Local information of service about a specific peer.
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_LOCAL_INFO_PEER 1037
+
+/**
+ * Debug request.
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_LOCAL_INFO_DUMP 1038
+
+/**
+ * End of local information about all peers known to the service.
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_LOCAL_INFO_PEER_END 1039
+
+/******************************** Application *******************************/
+
+/**
+ * Traffic (net-cat style) used by the Command Line Interface.
+ */
+#define GNUNET_MESSAGE_TYPE_CADET_CLI 1040
+
+/******************************************************************************/
+
+
+/******************************************************************************/
+/************************************* NAT **********************************/
+/******************************************************************************/
+
+/**
+ * Message to ask NAT service to register a client.
+ */
+#define GNUNET_MESSAGE_TYPE_NAT_REGISTER 1060
+
+/**
+ * Message to ask NAT service to handle a STUN packet.
+ */
+#define GNUNET_MESSAGE_TYPE_NAT_HANDLE_STUN 1061
+
+/**
+ * Message to ask NAT service to request connection reversal.
+ */
+#define GNUNET_MESSAGE_TYPE_NAT_REQUEST_CONNECTION_REVERSAL 1062
+
+/**
+ * Message to from NAT service notifying us that connection reversal
+ * was requested by another peer.
+ */
+#define GNUNET_MESSAGE_TYPE_NAT_CONNECTION_REVERSAL_REQUESTED 1063
+
+/**
+ * Message to from NAT service notifying us that one of our
+ * addresses changed.
+ */
+#define GNUNET_MESSAGE_TYPE_NAT_ADDRESS_CHANGE 1064
+
+/**
+ * Message to ask NAT service to request autoconfiguration.
+ */
+#define GNUNET_MESSAGE_TYPE_NAT_AUTO_REQUEST_CFG 1067
+
+/**
+ * Message from NAT service with the autoconfiguration result.
+ */
+#define GNUNET_MESSAGE_TYPE_NAT_AUTO_CFG_RESULT 1068
+
+
+/* 1080-1109 reserved for TMCG (Heiko Stamer, see gnunet-developers, January 2017) */
+
+
+/******************************************************************************/
+/*********************************** AUCTION ********************************/
+/******************************************************************************/
+
+/**
+ * Client wants to create a new auction.
+ */
+#define GNUNET_MESSAGE_TYPE_AUCTION_CLIENT_CREATE 1110
+
+/**
+ * Client wants to join an existing auction.
+ */
+#define GNUNET_MESSAGE_TYPE_AUCTION_CLIENT_JOIN 1111
+
+/**
+ * Service reports the auction outcome to the client.
+ */
+#define GNUNET_MESSAGE_TYPE_AUCTION_CLIENT_OUTCOME 1112
+
+
+/**
+ * Next available: 1130
+ */
+
/**
* Type used to match 'all' message types.
}
#endif
-/** @} */ /* end of group protocols */
-
/* ifndef GNUNET_PROTOCOLS_H */
#endif
+
+/** @} */ /* end of group protocols */
+
/* end of gnunet_protocols.h */