*/
#define GNUNET_MESSAGE_TYPE_TEST 0
-/**
- * Request service shutdown.
- */
-#define GNUNET_MESSAGE_TYPE_SHUTDOWN 1
-
/**
* Request DNS resolution.
#define GNUNET_MESSAGE_TYPE_RESOLVER_RESPONSE 3
-/**
- * Set a statistical value.
- */
-#define GNUNET_MESSAGE_TYPE_STATISTICS_SET 4
-
-/**
- * Get a statistical value(s).
- */
-#define GNUNET_MESSAGE_TYPE_STATISTICS_GET 5
-
-/**
- * Response to a STATISTICS_GET message (with value).
- */
-#define GNUNET_MESSAGE_TYPE_STATISTICS_VALUE 6
-
-/**
- * Response to a STATISTICS_GET message (end of value stream).
- */
-#define GNUNET_MESSAGE_TYPE_STATISTICS_END 7
-
/**
* Request to ARM to start a service.
*/
#define GNUNET_MESSAGE_TYPE_ARM_IS_UNKNOWN 12
+/**
+ * Request ARM service shutdown.
+ */
+#define GNUNET_MESSAGE_TYPE_ARM_SHUTDOWN 13
+
+/**
+ * Acknowledge service shutting down, disconnect
+ * indicates service stopped.
+ */
+#define GNUNET_MESSAGE_TYPE_ARM_SHUTDOWN_ACK 14
/**
* HELLO message used for communicating peer addresses.
#define GNUNET_MESSAGE_TYPE_TRANSPORT_ADDRESS_LOOKUP 27
/**
- * Response to the address lookup request.
+ * Response to the address lookup request.
*/
#define GNUNET_MESSAGE_TYPE_TRANSPORT_ADDRESS_REPLY 28
/**
- * Change in blacklisting status of a peer.
+ * Register a client that wants to do blacklisting.
*/
-#define GNUNET_MESSAGE_TYPE_TRANSPORT_BLACKLIST 29
+#define GNUNET_MESSAGE_TYPE_TRANSPORT_BLACKLIST_INIT 29
/**
- * Request to transport to notify us about any blacklisting status
- * changes on this connection (and to immediately send all
- * active blacklist entries).
+ * Query to a blacklisting client (is this peer blacklisted)?
*/
-#define GNUNET_MESSAGE_TYPE_TRANSPORT_BLACKLIST_NOTIFY 30
+#define GNUNET_MESSAGE_TYPE_TRANSPORT_BLACKLIST_QUERY 30
+
+
+/**
+ * Reply from blacklisting client (answer to blacklist query).
+ */
+#define GNUNET_MESSAGE_TYPE_TRANSPORT_BLACKLIST_REPLY 31
/**
* Transport PING message
#define GNUNET_MESSAGE_TYPE_TRANSPORT_PONG 33
/**
- * Request addition of a HELLO
+ * Message for TRANSPORT asking that a connection
+ * be initiated with a peer.
*/
-#define GNUNET_MESSAGE_TYPE_PEERINFO_ADD 36
+#define GNUNET_MESSAGE_TYPE_TRANSPORT_REQUEST_CONNECT 34
/**
* Request update and listing of a peer.
*/
#define GNUNET_MESSAGE_TYPE_TRANSPORT_DV_SEND 45
+/**
+ * DV service to DV api message, containing a confirmation
+ * or failure of a DV_SEND message.
+ */
+#define GNUNET_MESSAGE_TYPE_TRANSPORT_DV_SEND_RESULT 46
+
/**
* P2P DV message encapsulating some real message
*/
-#define GNUNET_MESSAGE_TYPE_DV_DATA 46
+#define GNUNET_MESSAGE_TYPE_DV_DATA 47
/**
* P2P DV message gossipping peer information
*/
-#define GNUNET_MESSAGE_TYPE_DV_GOSSIP 47
+#define GNUNET_MESSAGE_TYPE_DV_GOSSIP 48
+/**
+ * DV Plugin to DV service message, indicating
+ * startup.
+ */
+#define GNUNET_MESSAGE_TYPE_DV_START 49
+
+/**
+ * P2P DV message notifying connected peers of a disconnect
+ */
+#define GNUNET_MESSAGE_TYPE_DV_DISCONNECT 50
+
+/**
+ * TCP NAT probe message, send from NAT'd peer to
+ * other peer to establish bi-directional communication
+ */
+#define GNUNET_MESSAGE_TYPE_TRANSPORT_TCP_NAT_PROBE 51
+
+/**
+ * Normal UDP message type.
+ */
+#define GNUNET_MESSAGE_TYPE_TRANSPORT_UDP_MESSAGE 52
+
+/**
+ * Fragmented part of a UDP message.
+ */
+#define GNUNET_MESSAGE_TYPE_TRANSPORT_UDP_MESSAGE_PART 53
/**
* UDP NAT probe message, send from NAT'd peer to
*/
#define GNUNET_MESSAGE_TYPE_CORE_NOTIFY_DISCONNECT 68
+/**
+ * Notify clients about peer status change.
+ */
+#define GNUNET_MESSAGE_TYPE_CORE_NOTIFY_STATUS_CHANGE 69
+
/**
* Notify clients about incoming P2P messages.
*/
-#define GNUNET_MESSAGE_TYPE_CORE_NOTIFY_INBOUND 69
+#define GNUNET_MESSAGE_TYPE_CORE_NOTIFY_INBOUND 70
/**
* Notify clients about outgoing P2P transmissions.
*/
-#define GNUNET_MESSAGE_TYPE_CORE_NOTIFY_OUTBOUND 70
+#define GNUNET_MESSAGE_TYPE_CORE_NOTIFY_OUTBOUND 71
/**
* Request from client to "configure" P2P connection.
*/
-#define GNUNET_MESSAGE_TYPE_CORE_REQUEST_INFO 71
+#define GNUNET_MESSAGE_TYPE_CORE_REQUEST_INFO 72
/**
* Response from server about (possibly updated) P2P
* connection configuration.
*/
-#define GNUNET_MESSAGE_TYPE_CORE_CONFIGURATION_INFO 72
+#define GNUNET_MESSAGE_TYPE_CORE_CONFIGURATION_INFO 73
/**
* Request from client with message to transmit.
*/
-#define GNUNET_MESSAGE_TYPE_CORE_SEND 73
+#define GNUNET_MESSAGE_TYPE_CORE_SEND 74
/**
* Request from client asking to connect to a peer.
*/
-#define GNUNET_MESSAGE_TYPE_CORE_REQUEST_CONNECT 74
+#define GNUNET_MESSAGE_TYPE_CORE_REQUEST_CONNECT 75
+/**
+ * Request from client asking to call back with all connected peers.
+ */
+#define GNUNET_MESSAGE_TYPE_CORE_ITERATE_PEERS 76
/**
* Session key exchange between peers.
*/
/**
- * Local and P2P generic DHT message start type
+ * 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)
+ */
+#define GNUNET_MESSAGE_TYPE_DHT_PUT 147
+
+/**
+ * Local and P2P DHT GET message
+ * (encapsulated in DHT_ROUTE message)
+ */
+#define GNUNET_MESSAGE_TYPE_DHT_GET 148
+
+/**
+ * Local and P2P DHT Get result message
+ */
+#define GNUNET_MESSAGE_TYPE_DHT_GET_RESULT 149
+
+/**
+ * Local and P2P DHT find peer message
+ */
+#define GNUNET_MESSAGE_TYPE_DHT_FIND_PEER 150
+
+/**
+ * Local and P2P DHT find peer result message
+ */
+#define GNUNET_MESSAGE_TYPE_DHT_FIND_PEER_RESULT 151
+
+/**
+ * P2P DHT PING request type
*/
-#define GNUNET_MESSAGE_TYPE_DHT 142
+#define GNUNET_MESSAGE_TYPE_DHT_P2P_PING 152
/**
- * Local and P2P generic DHT message stop type
+ * DHT Control message type, for telling the
+ * DHT to alter its current operation somehow.
*/
-#define GNUNET_MESSAGE_TYPE_DHT_STOP 143
+#define GNUNET_MESSAGE_TYPE_DHT_CONTROL 153
/**
- * Local and message acknowledgment
+ * Local control message type, tells peer to start
+ * issuing malicious GET requests.
*/
-#define GNUNET_MESSAGE_TYPE_DHT_ACK 145
+#define GNUNET_MESSAGE_TYPE_DHT_MALICIOUS_GET 154
/**
- * Local DHT Get message, from API to service
+ * Local control message type, tells peer to start
+ * issuing malicious PUT requests.
*/
-#define GNUNET_MESSAGE_TYPE_DHT_GET 146
+#define GNUNET_MESSAGE_TYPE_DHT_MALICIOUS_PUT 155
/**
- * Local DHT Get stop message, from API to service
+ * Local control message type, tells peer to start
+ * dropping all requests.
*/
-#define GNUNET_MESSAGE_TYPE_DHT_GET_STOP 147
+#define GNUNET_MESSAGE_TYPE_DHT_MALICIOUS_DROP 156
/**
- * Local DHT Get message, from API to service
+ * Hostlist advertisement message
*/
-#define GNUNET_MESSAGE_TYPE_DHT_FIND_PEER 148
+#define GNUNET_MESSAGE_TYPE_HOSTLIST_ADVERTISEMENT 160
+
/**
- * Local DHT Get stop message, from API to service
+ * Set a statistical value.
*/
-#define GNUNET_MESSAGE_TYPE_DHT_FIND_PEER_STOP 149
+#define GNUNET_MESSAGE_TYPE_STATISTICS_SET 168
/**
- * Local DHT Put message, from API to service
+ * Get a statistical value(s).
*/
-#define GNUNET_MESSAGE_TYPE_DHT_PUT 150
+#define GNUNET_MESSAGE_TYPE_STATISTICS_GET 169
/**
- * Local DHT Get result message, from service to API
+ * Response to a STATISTICS_GET message (with value).
*/
-#define GNUNET_MESSAGE_TYPE_DHT_GET_RESULT 151
+#define GNUNET_MESSAGE_TYPE_STATISTICS_VALUE 170
+
+/**
+ * Response to a STATISTICS_GET message (end of value stream).
+ */
+#define GNUNET_MESSAGE_TYPE_STATISTICS_END 171
+
+/**
+ * Watch changes to a statistical value. Message format is the same
+ * as for GET, except that the subsystem and entry name must be given.
+ */
+#define GNUNET_MESSAGE_TYPE_STATISTICS_WATCH 172
+
+/**
+ * Changes to a watched value.
+ */
+#define GNUNET_MESSAGE_TYPE_STATISTICS_WATCH_VALUE 173
+
+
+/**
+ * Type of messages between the gnunet-vpn-helper and the daemon
+ */
+#define GNUNET_MESSAGE_TYPE_VPN_HELPER 185
+
+
+
+/**
+ * Type of messages between the gnunet-wlan-helper and the daemon
+ *
+ * data messages
+ */
+
+#define GNUNET_MESSAGE_TYPE_WLAN_HELPER_DATA 195
+
+/**
+ * Control messages between the gnunet-wlan-helper and the daemon
+ */
+
+#define GNUNET_MESSAGE_TYPE_WLAN_HELPER_CONTROL 196
+
+/**
+ * Type of messages for advertisement over wlan
+ */
+#define GNUNET_MESSAGE_TYPE_WLAN_HELPER_ADVERTISEMENT 196
+
+/**
+ * Type of messages for wlan
+ */
+
+/**
+ * Type of messages to query the local service-dns
+ */
+#define GNUNET_MESSAGE_TYPE_LOCAL_QUERY_DNS 205
+/**
+ * Type of messages the local service-dns responds with
+ */
+#define GNUNET_MESSAGE_TYPE_LOCAL_RESPONSE_DNS 206
/**
/*
TODO:
- - DV
- - DHT
- applications (FS, VPN, CHAT, TRACEKIT, TBENCH)
*/
+
+
+/* BELOW: experimental student-DHT protocol codes */
+
+/**
+ * Request to join a CAN DHT
+ */
+#define GNUNET_MESSAGE_TYPE_DHT_CAN_JOIN_REQUEST 1174
+
+/**
+ * Response to join request of a CAN DHT
+ */
+#define GNUNET_MESSAGE_TYPE_DHT_CAN_JOIN_REPLY 1175
+
+/**
+ * Messages for swapping locations
+ */
+#define GNUNET_MESSAGE_TYPE_DHT_GET_NEIGHBOURLIST_REQUEST 1180
+
+#define GNUNET_MESSAGE_TYPE_DHT_GET_NEIGHBOURLIST_RESULT 1181
+
+#define GNUNET_MESSAGE_TYPE_DHT_SWAP_LOCATION_REQUEST 1182
+
+#define GNUNET_MESSAGE_TYPE_DHT_SWAP_LOCATION_ACK 1183
+
+/**
+ * Freenet hello message
+ */
+#define GNUNET_MESSAGE_TYPE_DHT_FREENET_HELLO 1184
+
+
#if 0 /* keep Emacsens' auto-indent happy */
{
#endif