paragraph for gnunet devs that don't know how to use the web
[oweals/gnunet.git] / src / include / gnunet_protocols.h
1 /*
2      This file is part of GNUnet.
3      Copyright (C) 2001--2018 GNUnet e.V.
4
5      GNUnet is free software: you can redistribute it and/or modify it
6      under the terms of the GNU Affero General Public License as published
7      by the Free Software Foundation, either version 3 of the License,
8      or (at your option) any later version.
9
10      GNUnet is distributed in the hope that it will be useful, but
11      WITHOUT ANY WARRANTY; without even the implied warranty of
12      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13      Affero General Public License for more details.
14     
15      You should have received a copy of the GNU Affero General Public License
16      along with this program.  If not, see <http://www.gnu.org/licenses/>.
17 */
18
19 /**
20  * @author Christian Grothoff
21  *
22  * @file
23  * Constants for network protocols
24  *
25  * @defgroup protocols  Network protocol definitions
26  * Types of messages used in GNUnet.
27  *
28  * @see [Documentation](https://gnunet.org/ipc)
29  *
30  * @{
31  */
32
33 /*******************************************************************************
34  * TODO: we need a way to register message types centrally (via some webpage).
35  * For now: unofficial extensions should start at 48k, internal extensions
36  * defined here should leave some room (4-10 additional messages to the previous
37  * extension).
38  ******************************************************************************/
39
40 #ifndef GNUNET_PROTOCOLS_H
41 #define GNUNET_PROTOCOLS_H
42
43 #ifdef __cplusplus
44 extern "C"
45 {
46 #if 0                           /* keep Emacsens' auto-indent happy */
47 }
48 #endif
49 #endif
50
51 /*******************************************************************************
52  * UTIL message types
53  ******************************************************************************/
54
55 /**
56  * Test if service is online.
57  *
58  * @deprecated!
59  */
60 #define GNUNET_MESSAGE_TYPE_TEST 1
61
62 /**
63  * Dummy messages for testing / benchmarking.
64  */
65 #define GNUNET_MESSAGE_TYPE_DUMMY 2
66
67 /**
68  * Another dummy messages for testing / benchmarking.
69  */
70 #define GNUNET_MESSAGE_TYPE_DUMMY2 3
71
72 /*******************************************************************************
73  * RESOLVER message types
74  ******************************************************************************/
75
76 /**
77  * Request DNS resolution.
78  */
79 #define GNUNET_MESSAGE_TYPE_RESOLVER_REQUEST 4
80
81 /**
82  * Response to a DNS resolution request.
83  */
84 #define GNUNET_MESSAGE_TYPE_RESOLVER_RESPONSE 5
85
86 /*******************************************************************************
87  * AGPL source code download
88  * *****************************************************************************/
89
90 /**
91  * Message to request source code link.
92  */
93 #define GNUNET_MESSAGE_TYPE_REQUEST_AGPL 6
94
95 /**
96  * Source code link.
97  */
98 #define GNUNET_MESSAGE_TYPE_RESPONSE_AGPL 7
99
100
101 /*******************************************************************************
102  * ARM message types
103  ******************************************************************************/
104
105 /**
106  * Request to ARM to start a service.
107  */
108 #define GNUNET_MESSAGE_TYPE_ARM_START 8
109
110 /**
111  * Request to ARM to stop a service.
112  */
113 #define GNUNET_MESSAGE_TYPE_ARM_STOP 9
114
115 /**
116  * Response from ARM.
117  */
118 #define GNUNET_MESSAGE_TYPE_ARM_RESULT 10
119
120 /**
121  * Status update from ARM.
122  */
123 #define GNUNET_MESSAGE_TYPE_ARM_STATUS 11
124
125 /**
126  * Request to ARM to list all currently running services
127  */
128 #define GNUNET_MESSAGE_TYPE_ARM_LIST 12
129
130 /**
131  * Response from ARM for listing currently running services
132  */
133 #define GNUNET_MESSAGE_TYPE_ARM_LIST_RESULT 13
134
135 /**
136  * Request to ARM to notify client of service status changes
137  */
138 #define GNUNET_MESSAGE_TYPE_ARM_MONITOR 14
139
140 /**
141  * Test if ARM service is online.
142  */
143 #define GNUNET_MESSAGE_TYPE_ARM_TEST 15
144
145 /*******************************************************************************
146  * HELLO message types
147  ******************************************************************************/
148
149 /**
150  * Previously used for HELLO messages used for communicating peer addresses.
151  * Managed by libgnunethello.
152  */
153 #define GNUNET_MESSAGE_TYPE_HELLO_LEGACY 16
154
155 /**
156  * HELLO message with friend only flag used for communicating peer addresses.
157  * Managed by libgnunethello.
158  */
159
160 #define GNUNET_MESSAGE_TYPE_HELLO 17
161
162 /*******************************************************************************
163  * FRAGMENTATION message types
164  ******************************************************************************/
165
166 /**
167  * FRAGMENT of a larger message.
168  * Managed by libgnunetfragment.
169  */
170 #define GNUNET_MESSAGE_TYPE_FRAGMENT 18
171
172 /**
173  * Acknowledgement of a FRAGMENT of a larger message.
174  * Managed by libgnunetfragment.
175  */
176 #define GNUNET_MESSAGE_TYPE_FRAGMENT_ACK 19
177
178 /*******************************************************************************
179  * Transport-WLAN message types
180  ******************************************************************************/
181
182 /**
183  * Type of data messages from the plugin to the gnunet-wlan-helper
184  */
185 #define GNUNET_MESSAGE_TYPE_WLAN_DATA_TO_HELPER 39
186
187 /**
188  * Type of data messages from the gnunet-wlan-helper to the plugin
189  */
190 #define GNUNET_MESSAGE_TYPE_WLAN_DATA_FROM_HELPER 40
191
192 /**
193  * Control message between the gnunet-wlan-helper and the daemon (with the MAC).
194  */
195 #define GNUNET_MESSAGE_TYPE_WLAN_HELPER_CONTROL 41
196
197 /**
198  * Type of messages for advertisement over wlan
199  */
200 #define GNUNET_MESSAGE_TYPE_WLAN_ADVERTISEMENT 42
201
202 /**
203  * Type of messages for data over the wlan
204  */
205 #define GNUNET_MESSAGE_TYPE_WLAN_DATA 43
206
207
208 /*******************************************************************************
209  * Transport-DV message types
210  ******************************************************************************/
211
212 /**
213  * DV service to DV Plugin message, when a message is
214  * unwrapped by the DV service and handed to the plugin
215  * for processing
216  */
217 #define GNUNET_MESSAGE_TYPE_DV_RECV 44
218
219 /**
220  * DV Plugin to DV service message, indicating a message
221  * should be sent out.
222  */
223 #define GNUNET_MESSAGE_TYPE_DV_SEND 45
224
225 /**
226  * DV service to DV api message, containing a confirmation
227  * or failure of a DV_SEND message.
228  */
229 #define GNUNET_MESSAGE_TYPE_DV_SEND_ACK 46
230
231 /**
232  * P2P DV message encapsulating some real message
233  */
234 #define GNUNET_MESSAGE_TYPE_DV_ROUTE 47
235
236 /**
237  * DV Plugin to DV service message, indicating
238  * startup.
239  */
240 #define GNUNET_MESSAGE_TYPE_DV_START 48
241
242 /**
243  * P2P DV message telling plugin that a peer connected
244  */
245 #define GNUNET_MESSAGE_TYPE_DV_CONNECT 49
246
247 /**
248  * P2P DV message telling plugin that a peer disconnected
249  */
250 #define GNUNET_MESSAGE_TYPE_DV_DISCONNECT 50
251
252 /**
253  * P2P DV message telling plugin that a message transmission failed (negative ACK)
254  */
255 #define GNUNET_MESSAGE_TYPE_DV_SEND_NACK 51
256
257 /**
258  * P2P DV message telling plugin that our distance to a peer changed
259  */
260 #define GNUNET_MESSAGE_TYPE_DV_DISTANCE_CHANGED 52
261
262 /**
263  * DV message box for boxing multiple messages.
264  */
265 #define GNUNET_MESSAGE_TYPE_DV_BOX 53
266
267
268 /**
269  * Experimental message type.
270  */
271 #define GNUNET_MESSAGE_TYPE_TRANSPORT_XU_MESSAGE 55
272
273
274 /*******************************************************************************
275  * Transport-UDP message types
276  ******************************************************************************/
277
278 /**
279  * Normal UDP message type.
280  */
281 #define GNUNET_MESSAGE_TYPE_TRANSPORT_UDP_MESSAGE 56
282
283 /**
284  * UDP ACK.
285  */
286 #define GNUNET_MESSAGE_TYPE_TRANSPORT_UDP_ACK 57
287
288 /*******************************************************************************
289  * Transport-TCP message types
290  ******************************************************************************/
291
292 /**
293  * TCP NAT probe message, send from NAT'd peer to
294  * other peer to establish bi-directional communication
295  */
296 #define GNUNET_MESSAGE_TYPE_TRANSPORT_TCP_NAT_PROBE 60
297
298 /**
299  * Welcome message between TCP transports.
300  */
301 #define GNUNET_MESSAGE_TYPE_TRANSPORT_TCP_WELCOME 61
302
303 /**
304  * Message to force transport to update bandwidth assignment (LEGACY)
305  */
306 #define GNUNET_MESSAGE_TYPE_TRANSPORT_ATS 62
307
308 /*******************************************************************************
309  * NAT message types
310  ******************************************************************************/
311
312 /**
313  * Message to ask NAT server to perform traversal test
314  */
315 #define GNUNET_MESSAGE_TYPE_NAT_TEST 63
316
317 /*******************************************************************************
318  * CORE message types
319  ******************************************************************************/
320
321 /**
322  * Initial setup message from core client to core.
323  */
324 #define GNUNET_MESSAGE_TYPE_CORE_INIT 64
325
326 /**
327  * Response from core to core client to INIT message.
328  */
329 #define GNUNET_MESSAGE_TYPE_CORE_INIT_REPLY 65
330
331 /**
332  * Notify clients about new peer-to-peer connections (triggered
333  * after key exchange).
334  */
335 #define GNUNET_MESSAGE_TYPE_CORE_NOTIFY_CONNECT 67
336
337 /**
338  * Notify clients about peer disconnecting.
339  */
340 #define GNUNET_MESSAGE_TYPE_CORE_NOTIFY_DISCONNECT 68
341
342 /**
343  * Notify clients about peer status change.
344  */
345 #define GNUNET_MESSAGE_TYPE_CORE_NOTIFY_STATUS_CHANGE 69
346
347 /**
348  * Notify clients about incoming P2P messages.
349  */
350 #define GNUNET_MESSAGE_TYPE_CORE_NOTIFY_INBOUND 70
351
352 /**
353  * Notify clients about outgoing P2P transmissions.
354  */
355 #define GNUNET_MESSAGE_TYPE_CORE_NOTIFY_OUTBOUND 71
356
357 /**
358  * Request from client to transmit message.
359  */
360 #define GNUNET_MESSAGE_TYPE_CORE_SEND_REQUEST 74
361
362 /**
363  * Confirmation from core that message can now be sent
364  */
365 #define GNUNET_MESSAGE_TYPE_CORE_SEND_READY 75
366
367 /**
368  * Client with message to transmit (after SEND_READY confirmation
369  * was received).
370  */
371 #define GNUNET_MESSAGE_TYPE_CORE_SEND 76
372
373 /**
374  * Request for connection monitoring from CORE service.
375  */
376 #define GNUNET_MESSAGE_TYPE_CORE_MONITOR_PEERS 78
377
378 /**
379  * Reply for monitor by CORE service.
380  */
381 #define GNUNET_MESSAGE_TYPE_CORE_MONITOR_NOTIFY 79
382
383 /**
384  * Encapsulation for an encrypted message between peers.
385  */
386 #define GNUNET_MESSAGE_TYPE_CORE_ENCRYPTED_MESSAGE 82
387
388 /**
389  * Check that other peer is alive (challenge).
390  */
391 #define GNUNET_MESSAGE_TYPE_CORE_PING 83
392
393 /**
394  * Confirmation that other peer is alive.
395  */
396 #define GNUNET_MESSAGE_TYPE_CORE_PONG 84
397
398 /**
399  * Request by the other peer to terminate the connection.
400  */
401 #define GNUNET_MESSAGE_TYPE_CORE_HANGUP 85
402
403 /**
404  * gzip-compressed type map of the sender
405  */
406 #define GNUNET_MESSAGE_TYPE_CORE_COMPRESSED_TYPE_MAP 86
407
408 /**
409  * uncompressed type map of the sender
410  */
411 #define GNUNET_MESSAGE_TYPE_CORE_BINARY_TYPE_MAP 87
412
413 /**
414  * Session key exchange between peers.
415  */
416 #define GNUNET_MESSAGE_TYPE_CORE_EPHEMERAL_KEY 88
417
418 /**
419  * Other peer confirms having received the type map
420  */
421 #define GNUNET_MESSAGE_TYPE_CORE_CONFIRM_TYPE_MAP 89
422
423
424 /*******************************************************************************
425  * DATASTORE message types
426  ******************************************************************************/
427
428 /**
429  * Message sent by datastore client on join.
430  */
431 #define GNUNET_MESSAGE_TYPE_DATASTORE_RESERVE 92
432
433 /**
434  * Message sent by datastore client on join.
435  */
436 #define GNUNET_MESSAGE_TYPE_DATASTORE_RELEASE_RESERVE 93
437
438 /**
439  * Message sent by datastore to client informing about status
440  * processing a request
441  * (in response to RESERVE, RELEASE_RESERVE, PUT, UPDATE and REMOVE requests).
442  */
443 #define GNUNET_MESSAGE_TYPE_DATASTORE_STATUS 94
444
445 /**
446  * Message sent by datastore client to store data.
447  */
448 #define GNUNET_MESSAGE_TYPE_DATASTORE_PUT 95
449
450 /**
451  * Message sent by datastore client to get data.
452  */
453 #define GNUNET_MESSAGE_TYPE_DATASTORE_GET 97
454
455 /**
456  * Message sent by datastore client to get random data.
457  */
458 #define GNUNET_MESSAGE_TYPE_DATASTORE_GET_REPLICATION 98
459
460 /**
461  * Message sent by datastore client to get random data.
462  */
463 #define GNUNET_MESSAGE_TYPE_DATASTORE_GET_ZERO_ANONYMITY 99
464
465 /**
466  * Message sent by datastore to client providing requested data
467  * (in response to GET or GET_RANDOM request).
468  */
469 #define GNUNET_MESSAGE_TYPE_DATASTORE_DATA 100
470
471 /**
472  * Message sent by datastore to client signaling end of matching data.
473  * This message will also be sent for "GET_RANDOM", even though
474  * "GET_RANDOM" returns at most one data item.
475  */
476 #define GNUNET_MESSAGE_TYPE_DATASTORE_DATA_END 101
477
478 /**
479  * Message sent by datastore client to remove data.
480  */
481 #define GNUNET_MESSAGE_TYPE_DATASTORE_REMOVE 102
482
483 /**
484  * Message sent by datastore client to drop the database.
485  */
486 #define GNUNET_MESSAGE_TYPE_DATASTORE_DROP 103
487
488 /**
489  * Message sent by datastore client to get data by key.
490  */
491 #define GNUNET_MESSAGE_TYPE_DATASTORE_GET_KEY 104
492
493
494 /*******************************************************************************
495  * FS message types
496  ******************************************************************************/
497
498 /**
499  * Message sent by fs client to request LOC signature.
500  */
501 #define GNUNET_MESSAGE_TYPE_FS_REQUEST_LOC_SIGN 126
502
503 /**
504  * Reply sent by fs service with LOC signature.
505  */
506 #define GNUNET_MESSAGE_TYPE_FS_REQUEST_LOC_SIGNATURE 127
507
508 /**
509  * Message sent by fs client to start indexing.
510  */
511 #define GNUNET_MESSAGE_TYPE_FS_INDEX_START 128
512
513 /**
514  * Affirmative response to a request for start indexing.
515  */
516 #define GNUNET_MESSAGE_TYPE_FS_INDEX_START_OK 129
517
518 /**
519  * Response to a request for start indexing that
520  * refuses.
521  */
522 #define GNUNET_MESSAGE_TYPE_FS_INDEX_START_FAILED 130
523
524 /**
525  * Request from client for list of indexed files.
526  */
527 #define GNUNET_MESSAGE_TYPE_FS_INDEX_LIST_GET 131
528
529 /**
530  * Reply to client with an indexed file name.
531  */
532 #define GNUNET_MESSAGE_TYPE_FS_INDEX_LIST_ENTRY 132
533
534 /**
535  * Reply to client indicating end of list.
536  */
537 #define GNUNET_MESSAGE_TYPE_FS_INDEX_LIST_END 133
538
539 /**
540  * Request from client to unindex a file.
541  */
542 #define GNUNET_MESSAGE_TYPE_FS_UNINDEX 134
543
544 /**
545  * Reply to client indicating unindex receipt.
546  */
547 #define GNUNET_MESSAGE_TYPE_FS_UNINDEX_OK 135
548
549 /**
550  * Client asks FS service to start a (keyword) search.
551  */
552 #define GNUNET_MESSAGE_TYPE_FS_START_SEARCH 136
553
554 /**
555  * P2P request for content (one FS to another).
556  */
557 #define GNUNET_MESSAGE_TYPE_FS_GET 137
558
559 /**
560  * P2P response with content or active migration of content.  Also
561  * used between the service and clients (in response to
562  * #GNUNET_MESSAGE_TYPE_FS_START_SEARCH).
563  */
564 #define GNUNET_MESSAGE_TYPE_FS_PUT 138
565
566 /**
567  * Peer asks us to stop migrating content towards it for a while.
568  */
569 #define GNUNET_MESSAGE_TYPE_FS_MIGRATION_STOP 139
570
571 /**
572  * P2P request for content (one FS to another via a cadet).
573  */
574 #define GNUNET_MESSAGE_TYPE_FS_CADET_QUERY 140
575
576 /**
577  * P2P answer for content (one FS to another via a cadet).
578  */
579 #define GNUNET_MESSAGE_TYPE_FS_CADET_REPLY 141
580
581
582 /*******************************************************************************
583  * DHT message types
584  ******************************************************************************/
585 /**
586  * Client wants to store item in DHT.
587  */
588 #define GNUNET_MESSAGE_TYPE_DHT_CLIENT_PUT 142
589
590 /**
591  * Client wants to lookup item in DHT.
592  */
593 #define GNUNET_MESSAGE_TYPE_DHT_CLIENT_GET 143
594
595 /**
596  * Client wants to stop search in DHT.
597  */
598 #define GNUNET_MESSAGE_TYPE_DHT_CLIENT_GET_STOP 144
599
600 /**
601  * Service returns result to client.
602  */
603 #define GNUNET_MESSAGE_TYPE_DHT_CLIENT_RESULT 145
604
605 /**
606  * Peer is storing data in DHT.
607  */
608 #define GNUNET_MESSAGE_TYPE_DHT_P2P_PUT 146
609
610 /**
611  * Peer tries to find data in DHT.
612  */
613 #define GNUNET_MESSAGE_TYPE_DHT_P2P_GET 147
614
615 /**
616  * Data is returned to peer from DHT.
617  */
618 #define GNUNET_MESSAGE_TYPE_DHT_P2P_RESULT 148
619
620 /**
621  * Receive information about transiting GETs
622  */
623 #define GNUNET_MESSAGE_TYPE_DHT_MONITOR_GET             149
624
625 /**
626  * Receive information about transiting GET responses
627  */
628 #define GNUNET_MESSAGE_TYPE_DHT_MONITOR_GET_RESP        150
629
630 /**
631  * Receive information about transiting PUTs
632  */
633 #define GNUNET_MESSAGE_TYPE_DHT_MONITOR_PUT             151
634
635 /**
636  * Receive information about transiting PUT responses (TODO)
637  */
638 #define GNUNET_MESSAGE_TYPE_DHT_MONITOR_PUT_RESP        152
639
640 /**
641  * Request information about transiting messages
642  */
643 #define GNUNET_MESSAGE_TYPE_DHT_MONITOR_START             153
644
645 /**
646  * Stop information about transiting messages
647  */
648 #define GNUNET_MESSAGE_TYPE_DHT_MONITOR_STOP             154
649
650 /**
651  * Certain results are already known to the client, filter those.
652  */
653 #define GNUNET_MESSAGE_TYPE_DHT_CLIENT_GET_RESULTS_KNOWN             156
654
655 /**
656  * Further X-VINE DHT messages continued from 880
657  */
658
659 /*******************************************************************************
660  * HOSTLIST message types
661  ******************************************************************************/
662
663 /**
664  * Hostlist advertisement message
665  */
666 #define GNUNET_MESSAGE_TYPE_HOSTLIST_ADVERTISEMENT 160
667
668
669 /*******************************************************************************
670  * STATISTICS message types
671  ******************************************************************************/
672
673 /**
674  * Set a statistical value.
675  */
676 #define GNUNET_MESSAGE_TYPE_STATISTICS_SET 168
677
678 /**
679  * Get a statistical value(s).
680  */
681 #define GNUNET_MESSAGE_TYPE_STATISTICS_GET 169
682
683 /**
684  * Response to a STATISTICS_GET message (with value).
685  */
686 #define GNUNET_MESSAGE_TYPE_STATISTICS_VALUE 170
687
688 /**
689  * Response to a STATISTICS_GET message (end of value stream).
690  */
691 #define GNUNET_MESSAGE_TYPE_STATISTICS_END 171
692
693 /**
694  * Watch changes to a statistical value.  Message format is the same
695  * as for GET, except that the subsystem and entry name must be given.
696  */
697 #define GNUNET_MESSAGE_TYPE_STATISTICS_WATCH 172
698
699 /**
700  * Changes to a watched value.
701  */
702 #define GNUNET_MESSAGE_TYPE_STATISTICS_WATCH_VALUE 173
703
704 /**
705  * Client is done sending service requests and will now disconnect.
706  */
707 #define GNUNET_MESSAGE_TYPE_STATISTICS_DISCONNECT 174
708
709 /**
710  * Service confirms disconnect and that it is done processing
711  * all requests from the client.
712  */
713 #define GNUNET_MESSAGE_TYPE_STATISTICS_DISCONNECT_CONFIRM 175
714
715 /*******************************************************************************
716  * VPN message types
717  ******************************************************************************/
718
719 /**
720  * Type of messages between the gnunet-vpn-helper and the daemon
721  */
722 #define GNUNET_MESSAGE_TYPE_VPN_HELPER 185
723
724 /**
725  * Type of messages containing an ICMP packet for a service.
726  */
727 #define GNUNET_MESSAGE_TYPE_VPN_ICMP_TO_SERVICE 190
728
729 /**
730  * Type of messages containing an ICMP packet for the Internet.
731  */
732 #define GNUNET_MESSAGE_TYPE_VPN_ICMP_TO_INTERNET 191
733
734 /**
735  * Type of messages containing an ICMP packet for the VPN
736  */
737 #define GNUNET_MESSAGE_TYPE_VPN_ICMP_TO_VPN 192
738
739 /**
740  * Type of messages containing an DNS request for a DNS exit service.
741  */
742 #define GNUNET_MESSAGE_TYPE_VPN_DNS_TO_INTERNET 193
743
744 /**
745  * Type of messages containing an DNS reply from a DNS exit service.
746  */
747 #define GNUNET_MESSAGE_TYPE_VPN_DNS_FROM_INTERNET 194
748
749 /**
750  * Type of messages containing an TCP packet for a service.
751  */
752 #define GNUNET_MESSAGE_TYPE_VPN_TCP_TO_SERVICE_START 195
753
754 /**
755  * Type of messages containing an TCP packet for the Internet.
756  */
757 #define GNUNET_MESSAGE_TYPE_VPN_TCP_TO_INTERNET_START 196
758
759 /**
760  * Type of messages containing an TCP packet of an established connection.
761  */
762 #define GNUNET_MESSAGE_TYPE_VPN_TCP_DATA_TO_EXIT 197
763
764 /**
765  * Type of messages containing an TCP packet of an established connection.
766  */
767 #define GNUNET_MESSAGE_TYPE_VPN_TCP_DATA_TO_VPN 198
768
769 /**
770  * Type of messages containing an UDP packet for a service.
771  */
772 #define GNUNET_MESSAGE_TYPE_VPN_UDP_TO_SERVICE 199
773
774 /**
775  * Type of messages containing an UDP packet for the Internet.
776  */
777 #define GNUNET_MESSAGE_TYPE_VPN_UDP_TO_INTERNET 200
778
779 /**
780  * Type of messages containing an UDP packet from a remote host
781  */
782 #define GNUNET_MESSAGE_TYPE_VPN_UDP_REPLY 201
783
784
785 /**
786  * Client asks VPN service to setup an IP to redirect traffic
787  * via an exit node to some global IP address.
788  */
789 #define GNUNET_MESSAGE_TYPE_VPN_CLIENT_REDIRECT_TO_IP 202
790
791 /**
792  * Client asks VPN service to setup an IP to redirect traffic
793  * to some peer offering a service.
794  */
795 #define GNUNET_MESSAGE_TYPE_VPN_CLIENT_REDIRECT_TO_SERVICE 203
796
797 /**
798  * VPN service responds to client with an IP to use for the
799  * requested redirection.
800  */
801 #define GNUNET_MESSAGE_TYPE_VPN_CLIENT_USE_IP 204
802
803
804 /*******************************************************************************
805  * VPN-DNS message types
806  ******************************************************************************/
807
808
809 /**
810  * Initial message from client to DNS service for registration.
811  */
812 #define GNUNET_MESSAGE_TYPE_DNS_CLIENT_INIT 211
813
814 /**
815  * Type of messages between the gnunet-helper-dns and the service
816  */
817 #define GNUNET_MESSAGE_TYPE_DNS_CLIENT_REQUEST 212
818
819 /**
820  * Type of messages between the gnunet-helper-dns and the service
821  */
822 #define GNUNET_MESSAGE_TYPE_DNS_CLIENT_RESPONSE 213
823
824 /**
825  * Type of messages between the gnunet-helper-dns and the service
826  */
827 #define GNUNET_MESSAGE_TYPE_DNS_HELPER 214
828
829
830
831 /*******************************************************************************
832  * CHAT message types START
833  ******************************************************************************/
834
835 /**
836  * Message sent from client to join a chat room.
837  */
838 #define GNUNET_MESSAGE_TYPE_CHAT_JOIN_REQUEST 300
839
840 /**
841  * Message sent to client to indicate joining of another room member.
842  */
843 #define GNUNET_MESSAGE_TYPE_CHAT_JOIN_NOTIFICATION 301
844
845 /**
846  * Message sent to client to indicate leaving of another room member.
847  */
848 #define GNUNET_MESSAGE_TYPE_CHAT_LEAVE_NOTIFICATION 302
849
850 /**
851  * Notification sent by service to client indicating that we've received a chat
852  * message.
853  */
854 #define GNUNET_MESSAGE_TYPE_CHAT_MESSAGE_NOTIFICATION 303
855
856 /**
857  * Request sent by client to transmit a chat message to another room members.
858  */
859 #define GNUNET_MESSAGE_TYPE_CHAT_TRANSMIT_REQUEST 304
860
861 /**
862  * Receipt sent from a message receiver to the service to confirm delivery of
863  * a chat message.
864  */
865 #define GNUNET_MESSAGE_TYPE_CHAT_CONFIRMATION_RECEIPT 305
866
867 /**
868  * Notification sent from the service to the original sender
869  * to acknowledge delivery of a chat message.
870  */
871 #define GNUNET_MESSAGE_TYPE_CHAT_CONFIRMATION_NOTIFICATION 306
872
873 /**
874  * P2P message sent to indicate joining of another room member.
875  */
876 #define GNUNET_MESSAGE_TYPE_CHAT_P2P_JOIN_NOTIFICATION 307
877
878 /**
879  * P2P message sent to indicate leaving of another room member.
880  */
881 #define GNUNET_MESSAGE_TYPE_CHAT_P2P_LEAVE_NOTIFICATION 308
882
883 /**
884  * P2P message sent to a newly connected peer to request its known clients in
885  * order to synchronize room members.
886  */
887 #define GNUNET_MESSAGE_TYPE_CHAT_P2P_SYNC_REQUEST 309
888
889 /**
890  * Notification sent from one peer to another to indicate that we have received
891  * a chat message.
892  */
893 #define GNUNET_MESSAGE_TYPE_CHAT_P2P_MESSAGE_NOTIFICATION 310
894
895 /**
896  * P2P receipt confirming delivery of a chat message.
897  */
898 #define GNUNET_MESSAGE_TYPE_CHAT_P2P_CONFIRMATION_RECEIPT 311
899
900
901 /*******************************************************************************
902  * NSE (network size estimation) message types
903  ******************************************************************************/
904
905 /**
906  * client->service message indicating start
907  */
908 #define GNUNET_MESSAGE_TYPE_NSE_START 321
909
910 /**
911  * P2P message sent from nearest peer
912  */
913 #define GNUNET_MESSAGE_TYPE_NSE_P2P_FLOOD 322
914
915 /**
916  * service->client message indicating
917  */
918 #define GNUNET_MESSAGE_TYPE_NSE_ESTIMATE 323
919
920
921 /*******************************************************************************
922  * PEERINFO message types
923  ******************************************************************************/
924
925 /**
926  * Request update and listing of a peer.
927  */
928 #define GNUNET_MESSAGE_TYPE_PEERINFO_GET 330
929
930 /**
931  * Request update and listing of all peers.
932  */
933 #define GNUNET_MESSAGE_TYPE_PEERINFO_GET_ALL 331
934
935 /**
936  * Information about one of the peers.
937  */
938 #define GNUNET_MESSAGE_TYPE_PEERINFO_INFO 332
939
940 /**
941  * End of information about other peers.
942  */
943 #define GNUNET_MESSAGE_TYPE_PEERINFO_INFO_END 333
944
945 /**
946  * Start notifying this client about all changes to
947  * the known peers until it disconnects.
948  */
949 #define GNUNET_MESSAGE_TYPE_PEERINFO_NOTIFY 334
950
951 /*******************************************************************************
952  * ATS message types
953  ******************************************************************************/
954
955 /**
956  * Type of the 'struct ClientStartMessage' sent by clients to ATS to
957  * identify the type of the client.
958  */
959 #define GNUNET_MESSAGE_TYPE_ATS_START 340
960
961 /**
962  * Type of the 'struct RequestAddressMessage' sent by clients to ATS
963  * to request an address to help connect.
964  */
965 #define GNUNET_MESSAGE_TYPE_ATS_REQUEST_ADDRESS 341
966
967 /**
968  * Type of the 'struct RequestAddressMessage' sent by clients to ATS
969  * to request an address to help connect.
970  */
971 #define GNUNET_MESSAGE_TYPE_ATS_REQUEST_ADDRESS_CANCEL 342
972
973 /**
974  * Type of the 'struct AddressUpdateMessage' sent by clients to ATS
975  * to inform ATS about performance changes.
976  */
977 #define GNUNET_MESSAGE_TYPE_ATS_ADDRESS_UPDATE 343
978
979 /**
980  * Type of the 'struct AddressDestroyedMessage' sent by clients to ATS
981  * to inform ATS about an address being unavailable.
982  */
983 #define GNUNET_MESSAGE_TYPE_ATS_ADDRESS_DESTROYED 344
984
985 /**
986  * Type of the 'struct AddressSuggestionMessage' sent by ATS to clients
987  * to suggest switching to a different address.
988  */
989 #define GNUNET_MESSAGE_TYPE_ATS_ADDRESS_SUGGESTION 345
990
991 /**
992  * Type of the 'struct PeerInformationMessage' sent by ATS to clients
993  * to inform about QoS for a particular connection.
994  */
995 #define GNUNET_MESSAGE_TYPE_ATS_PEER_INFORMATION 346
996
997 /**
998  * Type of the 'struct ReservationRequestMessage' sent by clients to ATS
999  * to ask for inbound bandwidth reservations.
1000  */
1001 #define GNUNET_MESSAGE_TYPE_ATS_RESERVATION_REQUEST 347
1002
1003 /**
1004  * Type of the 'struct ReservationResultMessage' sent by ATS to clients
1005  * in response to a reservation request.
1006  */
1007 #define GNUNET_MESSAGE_TYPE_ATS_RESERVATION_RESULT 348
1008
1009 /**
1010  * Type of the 'struct ChangePreferenceMessage' sent by clients to ATS
1011  * to ask for allocation preference changes.
1012  */
1013 #define GNUNET_MESSAGE_TYPE_ATS_PREFERENCE_CHANGE 349
1014
1015 /**
1016  * Type of the 'struct SessionReleaseMessage' sent by ATS to client
1017  * to confirm that a session ID was destroyed.
1018  */
1019 #define GNUNET_MESSAGE_TYPE_ATS_SESSION_RELEASE 350
1020
1021 /**
1022  * Type of the 'struct AddressUpdateMessage' sent by client to ATS
1023  * to add a new address
1024  */
1025 #define GNUNET_MESSAGE_TYPE_ATS_ADDRESS_ADD 353
1026
1027 /**
1028  * Type of the 'struct AddressListRequestMessage' sent by client to ATS
1029  * to request information about addresses
1030  */
1031 #define GNUNET_MESSAGE_TYPE_ATS_ADDRESSLIST_REQUEST 354
1032
1033 /**
1034  * Type of the 'struct AddressListResponseMessage' sent by ATS to client
1035  * with information about addresses
1036  */
1037 #define GNUNET_MESSAGE_TYPE_ATS_ADDRESSLIST_RESPONSE 355
1038
1039 /**
1040  * Type of the 'struct ChangePreferenceMessage' sent by clients to ATS
1041  * to ask for allocation preference changes.
1042  */
1043 #define GNUNET_MESSAGE_TYPE_ATS_PREFERENCE_FEEDBACK 356
1044
1045
1046 /*******************************************************************************
1047  * TRANSPORT message types
1048  ******************************************************************************/
1049
1050 /**
1051  * Message from the core saying that the transport
1052  * server should start giving it messages.  This
1053  * should automatically trigger the transmission of
1054  * a HELLO message.
1055  */
1056 #define GNUNET_MESSAGE_TYPE_TRANSPORT_START 360
1057
1058 /**
1059  * Message from TRANSPORT notifying about a
1060  * client that connected to us.
1061  */
1062 #define GNUNET_MESSAGE_TYPE_TRANSPORT_CONNECT 361
1063
1064 /**
1065  * Message from TRANSPORT notifying about a
1066  * client that disconnected from us.
1067  */
1068 #define GNUNET_MESSAGE_TYPE_TRANSPORT_DISCONNECT 362
1069
1070 /**
1071  * Request to TRANSPORT to transmit a message.
1072  */
1073 #define GNUNET_MESSAGE_TYPE_TRANSPORT_SEND 363
1074
1075 /**
1076  * Confirmation from TRANSPORT that message for transmission has been
1077  * queued (and that the next message to this peer can now be passed to
1078  * the service).  Note that this confirmation does NOT imply that the
1079  * message was fully transmitted.
1080  */
1081 #define GNUNET_MESSAGE_TYPE_TRANSPORT_SEND_OK 364
1082
1083 /**
1084  * Message from TRANSPORT notifying about a
1085  * message that was received.
1086  */
1087 #define GNUNET_MESSAGE_TYPE_TRANSPORT_RECV 365
1088
1089 /**
1090  * Message telling transport to limit its receive rate.
1091  */
1092 #define GNUNET_MESSAGE_TYPE_TRANSPORT_SET_QUOTA 366
1093
1094 /**
1095  * Request to look addresses of peers in server.
1096  */
1097 #define GNUNET_MESSAGE_TYPE_TRANSPORT_ADDRESS_TO_STRING 367
1098
1099 /**
1100  * Response to the address lookup request.
1101  */
1102 #define GNUNET_MESSAGE_TYPE_TRANSPORT_ADDRESS_TO_STRING_REPLY 368
1103
1104 /**
1105  * Register a client that wants to do blacklisting.
1106  */
1107 #define GNUNET_MESSAGE_TYPE_TRANSPORT_BLACKLIST_INIT 369
1108
1109 /**
1110  * Query to a blacklisting client (is this peer blacklisted)?
1111  */
1112 #define GNUNET_MESSAGE_TYPE_TRANSPORT_BLACKLIST_QUERY 370
1113
1114 /**
1115  * Reply from blacklisting client (answer to blacklist query).
1116  */
1117 #define GNUNET_MESSAGE_TYPE_TRANSPORT_BLACKLIST_REPLY 371
1118
1119 /**
1120  * Transport PING message
1121  */
1122 #define GNUNET_MESSAGE_TYPE_TRANSPORT_PING 372
1123
1124 /**
1125  * Transport PONG message
1126  */
1127 #define GNUNET_MESSAGE_TYPE_TRANSPORT_PONG 373
1128
1129 /**
1130  * Transport SYN message exchanged between transport services to
1131  * indicate that a session should be marked as 'connected'.
1132  */
1133 #define GNUNET_MESSAGE_TYPE_TRANSPORT_SESSION_SYN 375
1134
1135 /**
1136  * Transport SYN_ACK message exchanged between transport services to
1137  * indicate that a SYN message was accepted
1138  */
1139 #define GNUNET_MESSAGE_TYPE_TRANSPORT_SESSION_SYN_ACK 376
1140
1141 /**
1142  * Transport ACK message exchanged between transport services to
1143  * indicate that a SYN_ACK message was accepted
1144  */
1145 #define GNUNET_MESSAGE_TYPE_TRANSPORT_SESSION_ACK 377
1146
1147 /**
1148  * Transport DISCONNECT message exchanged between transport services to
1149  * indicate that a connection should be dropped.
1150  */
1151 #define GNUNET_MESSAGE_TYPE_TRANSPORT_SESSION_DISCONNECT 378
1152
1153 /**
1154  * Message exchanged between transport services to
1155  * indicate that the sender should limit its transmission
1156  * rate to the indicated quota.
1157  */
1158 #define GNUNET_MESSAGE_TYPE_TRANSPORT_SESSION_QUOTA 379
1159
1160 /**
1161  * Request to monitor addresses used by a peer or all peers.
1162  */
1163 #define GNUNET_MESSAGE_TYPE_TRANSPORT_MONITOR_PEER_REQUEST 380
1164
1165 /**
1166  * Message send by a peer to notify the other to keep the session alive
1167  * and measure latency in a regular interval
1168  */
1169 #define GNUNET_MESSAGE_TYPE_TRANSPORT_SESSION_KEEPALIVE 381
1170
1171 /**
1172  * Response to a #GNUNET_MESSAGE_TYPE_TRANSPORT_SESSION_KEEPALIVE message to
1173  * measure latency in a regular interval
1174  */
1175 #define GNUNET_MESSAGE_TYPE_TRANSPORT_SESSION_KEEPALIVE_RESPONSE 382
1176
1177 /**
1178  * Response to #GNUNET_MESSAGE_TYPE_TRANSPORT_MONITOR_PEER_REQUEST
1179  * request to iterate over all known addresses.
1180  */
1181 #define GNUNET_MESSAGE_TYPE_TRANSPORT_MONITOR_PEER_RESPONSE 383
1182
1183 /**
1184  * Message send by a peer to notify the other to keep the session alive.
1185  */
1186 #define GNUNET_MESSAGE_TYPE_TRANSPORT_BROADCAST_BEACON 384
1187
1188 /**
1189  * Message containing traffic metrics for transport service
1190  */
1191 #define GNUNET_MESSAGE_TYPE_TRANSPORT_TRAFFIC_METRIC 385
1192
1193 /**
1194  * Request to start monitoring the connection state of plugins.
1195  */
1196 #define GNUNET_MESSAGE_TYPE_TRANSPORT_MONITOR_PLUGIN_START 388
1197
1198 /**
1199  * Monitoring event about the connection state of plugins,
1200  * generated in response to a subscription initiated via
1201  * #GNUNET_MESSAGE_TYPE_TRANSPORT_MONITOR_PLUGIN_START
1202  */
1203 #define GNUNET_MESSAGE_TYPE_TRANSPORT_MONITOR_PLUGIN_EVENT 389
1204
1205 /**
1206  * Monitoring event notifying client that the initial iteration
1207  * is now completed and we are in sync with the state of the subsystem.
1208  */
1209 #define GNUNET_MESSAGE_TYPE_TRANSPORT_MONITOR_PLUGIN_SYNC 390
1210
1211 /**
1212  * Response to #GNUNET_MESSAGE_TYPE_TRANSPORT_MONITOR_PEER_RESPONSE_END
1213  * terminating list of replies.
1214  */
1215 #define GNUNET_MESSAGE_TYPE_TRANSPORT_MONITOR_PEER_RESPONSE_END 391
1216
1217
1218 /*******************************************************************************
1219  * FS-PUBLISH-HELPER IPC Messages
1220  ******************************************************************************/
1221
1222 /**
1223  * Progress information from the helper: found a file
1224  */
1225 #define GNUNET_MESSAGE_TYPE_FS_PUBLISH_HELPER_PROGRESS_FILE 420
1226
1227 /**
1228  * Progress information from the helper: found a directory
1229  */
1230 #define GNUNET_MESSAGE_TYPE_FS_PUBLISH_HELPER_PROGRESS_DIRECTORY 421
1231
1232 /**
1233  * Error signal from the helper.
1234  */
1235 #define GNUNET_MESSAGE_TYPE_FS_PUBLISH_HELPER_ERROR 422
1236
1237 /**
1238  * Signal that helper skipped a file.
1239  */
1240 #define GNUNET_MESSAGE_TYPE_FS_PUBLISH_HELPER_SKIP_FILE 423
1241
1242 /**
1243  * Signal that helper is done scanning the directory tree.
1244  */
1245 #define GNUNET_MESSAGE_TYPE_FS_PUBLISH_HELPER_COUNTING_DONE 424
1246
1247 /**
1248  * Extracted meta data from the helper.
1249  */
1250 #define GNUNET_MESSAGE_TYPE_FS_PUBLISH_HELPER_META_DATA 425
1251
1252 /**
1253  * Signal that helper is done.
1254  */
1255 #define GNUNET_MESSAGE_TYPE_FS_PUBLISH_HELPER_FINISHED 426
1256
1257
1258 /*******************************************************************************
1259  * NAMECACHE message types
1260  ******************************************************************************/
1261
1262 /**
1263  * Client to service: lookup block
1264  */
1265 #define GNUNET_MESSAGE_TYPE_NAMECACHE_LOOKUP_BLOCK 431
1266
1267 /**
1268  * Service to client: result of block lookup
1269  */
1270 #define GNUNET_MESSAGE_TYPE_NAMECACHE_LOOKUP_BLOCK_RESPONSE 432
1271
1272 /**
1273  * Client to service: cache a block
1274  */
1275 #define GNUNET_MESSAGE_TYPE_NAMECACHE_BLOCK_CACHE 433
1276
1277 /**
1278  * Service to client: result of block cache request
1279  */
1280 #define GNUNET_MESSAGE_TYPE_NAMECACHE_BLOCK_CACHE_RESPONSE 434
1281
1282 /*******************************************************************************
1283  * NAMESTORE message types
1284  ******************************************************************************/
1285
1286 /**
1287  * Client to service: store records (as authority)
1288  */
1289 #define GNUNET_MESSAGE_TYPE_NAMESTORE_RECORD_STORE 435
1290
1291 /**
1292  * Service to client: result of store operation.
1293  */
1294 #define GNUNET_MESSAGE_TYPE_NAMESTORE_RECORD_STORE_RESPONSE 436
1295
1296 /**
1297  * Client to service: lookup label
1298  */
1299 #define GNUNET_MESSAGE_TYPE_NAMESTORE_RECORD_LOOKUP 437
1300
1301 /**
1302  * Service to client: lookup label
1303  */
1304 #define GNUNET_MESSAGE_TYPE_NAMESTORE_RECORD_LOOKUP_RESPONSE 438
1305
1306 /**
1307  * Client to service: "reverse" lookup for zone name based on zone key
1308  */
1309 #define GNUNET_MESSAGE_TYPE_NAMESTORE_ZONE_TO_NAME 439
1310
1311 /**
1312  * Service to client: result of zone-to-name lookup.
1313  */
1314 #define GNUNET_MESSAGE_TYPE_NAMESTORE_ZONE_TO_NAME_RESPONSE 440
1315
1316 /**
1317  * Client to service: start monitoring (yields sequence of
1318  * "ZONE_ITERATION_RESPONSES" --- forever).
1319  */
1320 #define GNUNET_MESSAGE_TYPE_NAMESTORE_MONITOR_START 441
1321
1322 /**
1323  * Service to client: you're now in sync.
1324  */
1325 #define GNUNET_MESSAGE_TYPE_NAMESTORE_MONITOR_SYNC 442
1326
1327 /**
1328  * Service to client: here is a (plaintext) record you requested.
1329  */
1330 #define GNUNET_MESSAGE_TYPE_NAMESTORE_RECORD_RESULT 443
1331
1332 /**
1333  * Client to service: I am now ready for the next (set of) monitor
1334  * events. Monitoring equivlaent of
1335  * #GNUNET_MESSAGE_TYPE_NAMESTORE_ZONE_ITERATION_NEXT.
1336  */
1337 #define GNUNET_MESSAGE_TYPE_NAMESTORE_MONITOR_NEXT 444
1338
1339 /**
1340  * Client to service: please start iteration; receives
1341  * "GNUNET_MESSAGE_TYPE_NAMESTORE_LOOKUP_NAME_RESPONSE" messages in return.
1342  */
1343 #define GNUNET_MESSAGE_TYPE_NAMESTORE_ZONE_ITERATION_START 445
1344
1345 /**
1346  * Client to service: next record(s) in iteration please.
1347  */
1348 #define GNUNET_MESSAGE_TYPE_NAMESTORE_ZONE_ITERATION_NEXT 447
1349
1350 /**
1351  * Client to service: stop iterating.
1352  */
1353 #define GNUNET_MESSAGE_TYPE_NAMESTORE_ZONE_ITERATION_STOP 448
1354
1355 /*******************************************************************************
1356  * LOCKMANAGER message types
1357  ******************************************************************************/
1358
1359 /**
1360  * Message to acquire Lock
1361  */
1362 #define GNUNET_MESSAGE_TYPE_LOCKMANAGER_ACQUIRE 450
1363
1364 /**
1365  * Message to release lock
1366  */
1367 #define GNUNET_MESSAGE_TYPE_LOCKMANAGER_RELEASE 451
1368
1369 /**
1370  * SUCESS reply from lockmanager
1371  */
1372 #define GNUNET_MESSAGE_TYPE_LOCKMANAGER_SUCCESS 452
1373
1374 /*******************************************************************************
1375  * TESTBED message types
1376  ******************************************************************************/
1377
1378 /**
1379  * Initial message from a client to a testing control service
1380  */
1381 #define GNUNET_MESSAGE_TYPE_TESTBED_INIT 460
1382
1383 /**
1384  * Message to add host
1385  */
1386 #define GNUNET_MESSAGE_TYPE_TESTBED_ADD_HOST 461
1387
1388 /**
1389  * Message to signal that a add host succeeded
1390  */
1391 #define GNUNET_MESSAGE_TYPE_TESTBED_ADD_HOST_SUCCESS 462
1392
1393 /**
1394  * Message to link delegated controller to slave controller
1395  */
1396 #define GNUNET_MESSAGE_TYPE_TESTBED_LINK_CONTROLLERS 463
1397
1398 /**
1399  * Message to create a peer at a host
1400  */
1401 #define GNUNET_MESSAGE_TYPE_TESTBED_CREATE_PEER 464
1402
1403 /**
1404  * Message to reconfigure a peer
1405  */
1406 #define GNUNET_MESSAGE_TYPE_TESTBED_RECONFIGURE_PEER 465
1407
1408 /**
1409  * Message to start a peer at a host
1410  */
1411 #define GNUNET_MESSAGE_TYPE_TESTBED_START_PEER 466
1412
1413 /**
1414  * Message to stop a peer at a host
1415  */
1416 #define GNUNET_MESSAGE_TYPE_TESTBED_STOP_PEER 467
1417
1418 /**
1419  * Message to destroy a peer
1420  */
1421 #define GNUNET_MESSAGE_TYPE_TESTBED_DESTROY_PEER 468
1422
1423 /**
1424  * Configure underlay link message
1425  */
1426 #define GNUNET_MESSAGE_TYPE_TESTBED_CONFIGURE_UNDERLAY_LINK 469
1427
1428 /**
1429  * Message to connect peers in a overlay
1430  */
1431 #define GNUNET_MESSAGE_TYPE_TESTBED_OVERLAY_CONNECT 470
1432
1433 /**
1434  * Message for peer events
1435  */
1436 #define GNUNET_MESSAGE_TYPE_TESTBED_PEER_EVENT 471
1437
1438 /**
1439  * Message for peer connect events
1440  */
1441 #define GNUNET_MESSAGE_TYPE_TESTBED_PEER_CONNECT_EVENT 472
1442
1443 /**
1444  * Message for operation events
1445  */
1446 #define GNUNET_MESSAGE_TYPE_TESTBED_OPERATION_FAIL_EVENT 473
1447
1448 /**
1449  * Message to signal successful peer creation
1450  */
1451 #define GNUNET_MESSAGE_TYPE_TESTBED_CREATE_PEER_SUCCESS 474
1452
1453 /**
1454  * Message to signal a generic operation has been successful
1455  */
1456 #define GNUNET_MESSAGE_TYPE_TESTBED_GENERIC_OPERATION_SUCCESS 475
1457
1458 /**
1459  * Message to get a peer's information
1460  */
1461 #define GNUNET_MESSAGE_TYPE_TESTBED_GET_PEER_INFORMATION 476
1462
1463 /**
1464  * Message containing the peer's information
1465  */
1466 #define GNUNET_MESSAGE_TYPE_TESTBED_PEER_INFORMATION 477
1467
1468 /**
1469  * Message to request a controller to make one of its peer to connect to another
1470  * peer using the contained HELLO
1471  */
1472 #define GNUNET_MESSAGE_TYPE_TESTBED_REMOTE_OVERLAY_CONNECT 478
1473
1474 /**
1475  * Message to request configuration of a slave controller
1476  */
1477 #define GNUNET_MESSAGE_TYPE_TESTBED_GET_SLAVE_CONFIGURATION 479
1478
1479 /**
1480  * Message which contains the configuration of slave controller
1481  */
1482 #define GNUNET_MESSAGE_TYPE_TESTBED_SLAVE_CONFIGURATION 480
1483
1484 /**
1485  * Message to signal the result of #GNUNET_MESSAGE_TYPE_TESTBED_LINK_CONTROLLERS request
1486  */
1487 #define GNUNET_MESSAGE_TYPE_TESTBED_LINK_CONTROLLERS_RESULT 481
1488
1489 /**
1490  * A controller receiving this message floods it to its directly-connected
1491  * sub-controllers and then stops and destroys all peers
1492  */
1493 #define GNUNET_MESSAGE_TYPE_TESTBED_SHUTDOWN_PEERS 482
1494
1495 /**
1496  * Message to start/stop a service of a peer
1497  */
1498 #define GNUNET_MESSAGE_TYPE_TESTBED_MANAGE_PEER_SERVICE 483
1499
1500 /**
1501  * Message to initialise a barrier.  Messages of these type are flooded to all
1502  * sub-controllers
1503  */
1504 #define GNUNET_MESSAGE_TYPE_TESTBED_BARRIER_INIT 484
1505
1506 /**
1507  * Message to cancel a barrier.  This message is flooded to all sub-controllers
1508  */
1509 #define GNUNET_MESSAGE_TYPE_TESTBED_BARRIER_CANCEL 485
1510
1511 /**
1512  * Message for signalling status of a barrier
1513  */
1514 #define GNUNET_MESSAGE_TYPE_TESTBED_BARRIER_STATUS 486
1515
1516 /**
1517  * Message sent by a peer when it has reached a barrier and is waiting for it to
1518  * be crossed
1519  */
1520 #define GNUNET_MESSAGE_TYPE_TESTBED_BARRIER_WAIT 487
1521
1522 /**
1523  * Not really a message, but for careful checks on the testbed messages; Should
1524  * always be the maximum and never be used to send messages with this type
1525  */
1526 #define GNUNET_MESSAGE_TYPE_TESTBED_MAX 488
1527
1528 /**
1529  * The initialization message towards gnunet-testbed-helper
1530  */
1531 #define GNUNET_MESSAGE_TYPE_TESTBED_HELPER_INIT 495
1532
1533 /**
1534  * The reply message from gnunet-testbed-helper
1535  */
1536 #define GNUNET_MESSAGE_TYPE_TESTBED_HELPER_REPLY 496
1537
1538
1539 /******************************************************************************
1540  * GNS.
1541  *****************************************************************************/
1542
1543 /**
1544  * Client would like to resolve a name.
1545  */
1546 #define GNUNET_MESSAGE_TYPE_GNS_LOOKUP 500
1547
1548 /**
1549  * Service response to name resolution request from client.
1550  */
1551 #define GNUNET_MESSAGE_TYPE_GNS_LOOKUP_RESULT 501
1552
1553 /**
1554  * Reverse lookup
1555  */
1556 #define GNUNET_MESSAGE_TYPE_GNS_REVERSE_LOOKUP 503
1557
1558 /**
1559  * Response to reverse lookup
1560  */
1561 #define GNUNET_MESSAGE_TYPE_GNS_REVERSE_LOOKUP_RESULT 504
1562
1563
1564 /*******************************************************************************
1565  * CONSENSUS message types
1566  ******************************************************************************/
1567
1568 /**
1569  * Join a consensus session. Sent by client to service as first message.
1570  */
1571 #define GNUNET_MESSAGE_TYPE_CONSENSUS_CLIENT_JOIN 520
1572
1573 /**
1574  * Insert an element. Sent by client to service.
1575  */
1576 #define GNUNET_MESSAGE_TYPE_CONSENSUS_CLIENT_INSERT 521
1577
1578 /**
1579  * Begin accepting new elements from other participants.
1580  * Sent by client to service.
1581  */
1582 #define GNUNET_MESSAGE_TYPE_CONSENSUS_CLIENT_BEGIN 522
1583
1584 /**
1585  * Sent by service when a new element is added.
1586  */
1587 #define GNUNET_MESSAGE_TYPE_CONSENSUS_CLIENT_RECEIVED_ELEMENT 523
1588
1589 /**
1590  * Sent by client to service in order to start the consensus conclusion.
1591  */
1592 #define GNUNET_MESSAGE_TYPE_CONSENSUS_CLIENT_CONCLUDE 524
1593
1594 /**
1595  * Sent by service to client in order to signal a completed consensus conclusion.
1596  * Last message sent in a consensus session.
1597  */
1598 #define GNUNET_MESSAGE_TYPE_CONSENSUS_CLIENT_CONCLUDE_DONE 525
1599
1600
1601 /* message types 526-539 reserved for consensus client/service messages */
1602
1603
1604 /**
1605  * Sent by client to service, telling whether a received element should
1606  * be accepted and propagated further or not.
1607  */
1608 #define GNUNET_MESSAGE_TYPE_CONSENSUS_CLIENT_ACK 540
1609
1610 /**
1611  * Strata estimator.
1612  */
1613 #define GNUNET_MESSAGE_TYPE_CONSENSUS_P2P_DELTA_ESTIMATE 541
1614
1615 /**
1616  * IBF containing all elements of a peer.
1617  */
1618 #define GNUNET_MESSAGE_TYPE_CONSENSUS_P2P_DIFFERENCE_DIGEST 542
1619
1620 /**
1621  * One or more elements that are sent from peer to peer.
1622  */
1623 #define GNUNET_MESSAGE_TYPE_CONSENSUS_P2P_ELEMENTS 543
1624
1625 /**
1626  * Elements, and requests for further elements
1627  */
1628 #define GNUNET_MESSAGE_TYPE_CONSENSUS_P2P_ELEMENTS_REQUEST 544
1629
1630 /**
1631  * Elements that a peer reports to be missing at the remote peer.
1632  */
1633 #define GNUNET_MESSAGE_TYPE_CONSENSUS_P2P_ELEMENTS_REPORT 545
1634
1635 /*
1636  * Initialization message for consensus p2p communication.
1637  */
1638 #define GNUNET_MESSAGE_TYPE_CONSENSUS_P2P_HELLO 546
1639
1640 /**
1641  * Report that the peer is synced with the partner after successfuly decoding the invertible bloom filter.
1642  */
1643 #define GNUNET_MESSAGE_TYPE_CONSENSUS_P2P_SYNCED 547
1644
1645 /**
1646  * Interaction os over, got synched and reported all elements
1647  */
1648 #define GNUNET_MESSAGE_TYPE_CONSENSUS_P2P_FIN 548
1649
1650 /**
1651  * Abort a round, don't send requested elements anymore
1652  */
1653 #define GNUNET_MESSAGE_TYPE_CONSENSUS_P2P_ABORT 548
1654
1655 /**
1656  * Abort a round, don't send requested elements anymore
1657  */
1658 #define GNUNET_MESSAGE_TYPE_CONSENSUS_P2P_ROUND_CONTEXT 547
1659
1660
1661 /*******************************************************************************
1662  * SET message types
1663  ******************************************************************************/
1664
1665 /**
1666  * Demand the whole element from the other
1667  * peer, given only the hash code.
1668  */
1669 #define GNUNET_MESSAGE_TYPE_SET_UNION_P2P_REQUEST_FULL 565
1670
1671 /**
1672  * Demand the whole element from the other
1673  * peer, given only the hash code.
1674  */
1675 #define GNUNET_MESSAGE_TYPE_SET_UNION_P2P_DEMAND 566
1676
1677 /**
1678  * Tell the other peer to send us a list of
1679  * hashes that match an IBF key.
1680  */
1681 #define GNUNET_MESSAGE_TYPE_SET_UNION_P2P_INQUIRY 567
1682
1683 /**
1684  * Tell the other peer which hashes match a
1685  * given IBF key.
1686  */
1687 #define GNUNET_MESSAGE_TYPE_SET_UNION_P2P_OFFER 568
1688
1689 /**
1690  * Reject a set request.
1691  */
1692 #define GNUNET_MESSAGE_TYPE_SET_REJECT 569
1693
1694 /**
1695  * Cancel a set operation
1696  */
1697 #define GNUNET_MESSAGE_TYPE_SET_CANCEL 570
1698
1699 /**
1700  * Acknowledge result from iteration
1701  */
1702 #define GNUNET_MESSAGE_TYPE_SET_ITER_ACK 571
1703
1704 /**
1705  * Create an empty set
1706  */
1707 #define GNUNET_MESSAGE_TYPE_SET_RESULT 572
1708
1709 /**
1710  * Add element to set
1711  */
1712 #define GNUNET_MESSAGE_TYPE_SET_ADD 573
1713
1714 /**
1715  * Remove element from set
1716  */
1717 #define GNUNET_MESSAGE_TYPE_SET_REMOVE 574
1718
1719 /**
1720  * Listen for operation requests
1721  */
1722 #define GNUNET_MESSAGE_TYPE_SET_LISTEN 575
1723
1724 /**
1725  * Accept a set request
1726  */
1727 #define GNUNET_MESSAGE_TYPE_SET_ACCEPT 576
1728
1729 /**
1730  * Evaluate a set operation
1731  */
1732 #define GNUNET_MESSAGE_TYPE_SET_EVALUATE 577
1733
1734 /**
1735  * Start a set operation with the given set
1736  */
1737 #define GNUNET_MESSAGE_TYPE_SET_CONCLUDE 578
1738
1739 /**
1740  * Notify the client of a request from a remote peer
1741  */
1742 #define GNUNET_MESSAGE_TYPE_SET_REQUEST 579
1743
1744 /**
1745  * Create a new local set
1746  */
1747 #define GNUNET_MESSAGE_TYPE_SET_CREATE 580
1748
1749 /**
1750  * Request a set operation from a remote peer.
1751  */
1752 #define GNUNET_MESSAGE_TYPE_SET_P2P_OPERATION_REQUEST 581
1753
1754 /**
1755  * Strata estimator.
1756  */
1757 #define GNUNET_MESSAGE_TYPE_SET_UNION_P2P_SE 582
1758
1759 /**
1760  * Invertible bloom filter.
1761  */
1762 #define GNUNET_MESSAGE_TYPE_SET_UNION_P2P_IBF 583
1763
1764 /**
1765  * Actual set elements.
1766  */
1767 #define GNUNET_MESSAGE_TYPE_SET_P2P_ELEMENTS 584
1768
1769 /**
1770  * Requests for the elements with the given hashes.
1771  */
1772 #define GNUNET_MESSAGE_TYPE_SET_P2P_ELEMENT_REQUESTS 585
1773
1774 /**
1775  * Set operation is done.
1776  */
1777 #define GNUNET_MESSAGE_TYPE_SET_UNION_P2P_DONE 586
1778
1779 /**
1780  * Start iteration over set elements.
1781  */
1782 #define GNUNET_MESSAGE_TYPE_SET_ITER_REQUEST 587
1783
1784 /**
1785  * Element result for the iterating client.
1786  */
1787 #define GNUNET_MESSAGE_TYPE_SET_ITER_ELEMENT 588
1788
1789 /**
1790  * Iteration end marker for the client.
1791  */
1792 #define GNUNET_MESSAGE_TYPE_SET_ITER_DONE 589
1793
1794 /**
1795  * Compressed strata estimator.
1796  */
1797 #define GNUNET_MESSAGE_TYPE_SET_UNION_P2P_SEC 590
1798
1799 /**
1800  * Information about the element count for intersection
1801  */
1802 #define GNUNET_MESSAGE_TYPE_SET_INTERSECTION_P2P_ELEMENT_INFO 591
1803
1804 /**
1805  * Bloom filter message for intersection exchange started by Bob.
1806  */
1807 #define GNUNET_MESSAGE_TYPE_SET_INTERSECTION_P2P_BF 592
1808
1809 /**
1810  * Intersection operation is done.
1811  */
1812 #define GNUNET_MESSAGE_TYPE_SET_INTERSECTION_P2P_DONE 593
1813
1814 /**
1815  * Ask the set service to prepare a copy of a set.
1816  */
1817 #define GNUNET_MESSAGE_TYPE_SET_COPY_LAZY_PREPARE 594
1818
1819 /**
1820  * Give the client an ID for connecting to the set's copy.
1821  */
1822 #define GNUNET_MESSAGE_TYPE_SET_COPY_LAZY_RESPONSE 595
1823
1824 /**
1825  * Sent by the client to the server to connect to an existing,
1826  * lazily copied set.
1827  */
1828 #define GNUNET_MESSAGE_TYPE_SET_COPY_LAZY_CONNECT 596
1829
1830 /**
1831  * Request all missing elements from the other peer,
1832  * based on their sets and the elements we previously sent
1833  * with #GNUNET_MESSAGE_TYPE_SET_P2P_ELEMENTS.
1834  */
1835 #define GNUNET_MESSAGE_TYPE_SET_UNION_P2P_FULL_DONE 597
1836
1837 /**
1838  * Send a set element, not as response to a demand but because
1839  * we're sending the full set.
1840  */
1841 #define GNUNET_MESSAGE_TYPE_SET_UNION_P2P_FULL_ELEMENT 598
1842
1843 /**
1844  * Request all missing elements from the other peer,
1845  * based on their sets and the elements we previously sent
1846  * with #GNUNET_MESSAGE_TYPE_SET_P2P_ELEMENTS.
1847  */
1848 #define GNUNET_MESSAGE_TYPE_SET_UNION_P2P_OVER 599
1849
1850
1851 /*******************************************************************************
1852  * TESTBED LOGGER message types
1853  ******************************************************************************/
1854
1855 /**
1856  * Message for TESTBED LOGGER
1857  */
1858 #define GNUNET_MESSAGE_TYPE_TESTBED_LOGGER_MSG 600
1859
1860 /**
1861  * Message for TESTBED LOGGER acknowledgement
1862  */
1863 #define GNUNET_MESSAGE_TYPE_TESTBED_LOGGER_ACK 601
1864
1865
1866
1867 /**
1868  * Advertise regex capability.
1869  */
1870 #define GNUNET_MESSAGE_TYPE_REGEX_ANNOUNCE 620
1871
1872 /**
1873  * Search for peer with matching capability.
1874  */
1875 #define GNUNET_MESSAGE_TYPE_REGEX_SEARCH 621
1876
1877 /**
1878  * Result in response to regex search.
1879  */
1880 #define GNUNET_MESSAGE_TYPE_REGEX_RESULT 622
1881
1882 /*******************************************************************************
1883  * IDENTITY message types
1884  ******************************************************************************/
1885
1886 /**
1887  * First message send from identity client to service (to subscribe to
1888  * updates).
1889  */
1890 #define GNUNET_MESSAGE_TYPE_IDENTITY_START 624
1891
1892 /**
1893  * Generic response from identity service with success and/or error message.
1894  */
1895 #define GNUNET_MESSAGE_TYPE_IDENTITY_RESULT_CODE 625
1896
1897 /**
1898  * Update about identity status from service to clients.
1899  */
1900 #define GNUNET_MESSAGE_TYPE_IDENTITY_UPDATE 626
1901
1902 /**
1903  * Client requests to know default identity for a subsystem.
1904  */
1905 #define GNUNET_MESSAGE_TYPE_IDENTITY_GET_DEFAULT 627
1906
1907 /**
1908  * Client sets default identity; or service informs about default identity.
1909  */
1910 #define GNUNET_MESSAGE_TYPE_IDENTITY_SET_DEFAULT 628
1911
1912 /**
1913  * Create new identity (client->service).
1914  */
1915 #define GNUNET_MESSAGE_TYPE_IDENTITY_CREATE 629
1916
1917 /**
1918  * Rename existing identity (client->service).
1919  */
1920 #define GNUNET_MESSAGE_TYPE_IDENTITY_RENAME 630
1921
1922 /**
1923  * Delete identity (client->service).
1924  */
1925 #define GNUNET_MESSAGE_TYPE_IDENTITY_DELETE 631
1926
1927
1928 /*******************************************************************************
1929  * REVOCATION message types
1930  ******************************************************************************/
1931
1932 /**
1933  * Client to service: was this key revoked?
1934  */
1935 #define GNUNET_MESSAGE_TYPE_REVOCATION_QUERY 636
1936
1937 /**
1938  * Service to client: answer if key was revoked!
1939  */
1940 #define GNUNET_MESSAGE_TYPE_REVOCATION_QUERY_RESPONSE 637
1941
1942 /**
1943  * Client to service OR peer-to-peer: revoke this key!
1944  */
1945 #define GNUNET_MESSAGE_TYPE_REVOCATION_REVOKE 638
1946
1947 /**
1948  * Service to client: revocation confirmed
1949  */
1950 #define GNUNET_MESSAGE_TYPE_REVOCATION_REVOKE_RESPONSE 639
1951
1952
1953 /*******************************************************************************
1954  * SCALARPRODUCT message types
1955  ******************************************************************************/
1956
1957 /**
1958  * Client -> Alice
1959  */
1960 #define GNUNET_MESSAGE_TYPE_SCALARPRODUCT_CLIENT_TO_ALICE 640
1961
1962 /**
1963  * Client -> Bob
1964  */
1965 #define GNUNET_MESSAGE_TYPE_SCALARPRODUCT_CLIENT_TO_BOB 641
1966
1967 /**
1968  * Client -> Alice multipart
1969  */
1970 #define GNUNET_MESSAGE_TYPE_SCALARPRODUCT_CLIENT_MULTIPART_ALICE 642
1971
1972 /**
1973  * Client -> Bob multipart
1974  */
1975 #define GNUNET_MESSAGE_TYPE_SCALARPRODUCT_CLIENT_MULTIPART_BOB 643
1976
1977 /**
1978  * Alice -> Bob session initialization
1979  */
1980 #define GNUNET_MESSAGE_TYPE_SCALARPRODUCT_SESSION_INITIALIZATION 644
1981
1982 /**
1983  * Alice -> Bob SP crypto-data (after intersection)
1984  */
1985 #define GNUNET_MESSAGE_TYPE_SCALARPRODUCT_ALICE_CRYPTODATA 645
1986
1987 /**
1988  * Bob -> Alice SP crypto-data
1989  */
1990 #define GNUNET_MESSAGE_TYPE_SCALARPRODUCT_BOB_CRYPTODATA 647
1991
1992 /**
1993  * Bob -> Alice SP crypto-data multipart
1994  */
1995 #define GNUNET_MESSAGE_TYPE_SCALARPRODUCT_BOB_CRYPTODATA_MULTIPART 648
1996
1997 /**
1998  * Alice/Bob -> Client Result
1999  */
2000 #define GNUNET_MESSAGE_TYPE_SCALARPRODUCT_RESULT 649
2001
2002 /**
2003  * Alice -> Bob ECC session initialization
2004  */
2005 #define GNUNET_MESSAGE_TYPE_SCALARPRODUCT_ECC_SESSION_INITIALIZATION 650
2006
2007 /**
2008  * Alice -> Bob ECC crypto data
2009  */
2010 #define GNUNET_MESSAGE_TYPE_SCALARPRODUCT_ECC_ALICE_CRYPTODATA 651
2011
2012 /**
2013  * Bob -> Alice ECC crypto data
2014  */
2015 #define GNUNET_MESSAGE_TYPE_SCALARPRODUCT_ECC_BOB_CRYPTODATA 652
2016
2017
2018
2019
2020
2021 /*******************************************************************************
2022  * PSYCSTORE message types
2023  ******************************************************************************/
2024
2025 /**
2026  * Store a membership event.
2027  */
2028 #define GNUNET_MESSAGE_TYPE_PSYCSTORE_MEMBERSHIP_STORE 660
2029
2030 /**
2031  * Test for membership of a member at a particular point in time.
2032  */
2033 #define GNUNET_MESSAGE_TYPE_PSYCSTORE_MEMBERSHIP_TEST 661
2034
2035 #define GNUNET_MESSAGE_TYPE_PSYCSTORE_FRAGMENT_STORE 662
2036
2037 #define GNUNET_MESSAGE_TYPE_PSYCSTORE_FRAGMENT_GET 663
2038
2039 #define GNUNET_MESSAGE_TYPE_PSYCSTORE_MESSAGE_GET 664
2040
2041 #define GNUNET_MESSAGE_TYPE_PSYCSTORE_MESSAGE_GET_FRAGMENT 665
2042
2043 #define GNUNET_MESSAGE_TYPE_PSYCSTORE_COUNTERS_GET 666
2044
2045 /* 657 */
2046
2047 #define GNUNET_MESSAGE_TYPE_PSYCSTORE_STATE_MODIFY 668
2048
2049 #define GNUNET_MESSAGE_TYPE_PSYCSTORE_STATE_SYNC 669
2050
2051 #define GNUNET_MESSAGE_TYPE_PSYCSTORE_STATE_RESET 670
2052
2053 #define GNUNET_MESSAGE_TYPE_PSYCSTORE_STATE_HASH_UPDATE 671
2054
2055 #define GNUNET_MESSAGE_TYPE_PSYCSTORE_STATE_GET 672
2056
2057 #define GNUNET_MESSAGE_TYPE_PSYCSTORE_STATE_GET_PREFIX 673
2058
2059 /**
2060  * Generic response from PSYCstore service with success and/or error message.
2061  */
2062 #define GNUNET_MESSAGE_TYPE_PSYCSTORE_RESULT_CODE 674
2063
2064 #define GNUNET_MESSAGE_TYPE_PSYCSTORE_RESULT_FRAGMENT 675
2065
2066 #define GNUNET_MESSAGE_TYPE_PSYCSTORE_RESULT_COUNTERS 676
2067
2068 #define GNUNET_MESSAGE_TYPE_PSYCSTORE_RESULT_STATE 677
2069
2070
2071 /*******************************************************************************
2072  * PSYC message types
2073  ******************************************************************************/
2074
2075 /**
2076  * C: client
2077  * S: service
2078  * M: multicast
2079  */
2080
2081 /** S->C: result of an operation */
2082 #define GNUNET_MESSAGE_TYPE_PSYC_RESULT_CODE 680
2083
2084 /** C->S: request to start a channel as a master */
2085 #define GNUNET_MESSAGE_TYPE_PSYC_MASTER_START 681
2086
2087 /** S->C: master start acknowledgement */
2088 #define GNUNET_MESSAGE_TYPE_PSYC_MASTER_START_ACK 682
2089
2090 /** C->S: request to join a channel as a slave */
2091 #define GNUNET_MESSAGE_TYPE_PSYC_SLAVE_JOIN 683
2092
2093 /** S->C: slave join acknowledgement */
2094 #define GNUNET_MESSAGE_TYPE_PSYC_SLAVE_JOIN_ACK 684
2095
2096 /** C->S: request to part from a channel */
2097 #define GNUNET_MESSAGE_TYPE_PSYC_PART_REQUEST 685
2098
2099 /** S->C: acknowledgement that a slave of master parted from a channel */
2100 #define GNUNET_MESSAGE_TYPE_PSYC_PART_ACK 686
2101
2102 /** M->S->C: incoming join request from multicast */
2103 #define GNUNET_MESSAGE_TYPE_PSYC_JOIN_REQUEST 687
2104
2105 /** C->S->M: decision about a join request */
2106 #define GNUNET_MESSAGE_TYPE_PSYC_JOIN_DECISION 688
2107
2108
2109 /** C->S: request to add/remove channel slave in the membership database. */
2110 #define GNUNET_MESSAGE_TYPE_PSYC_CHANNEL_MEMBERSHIP_STORE 689
2111
2112 /* 690 */
2113
2114 /** S<--C: PSYC message which contains one or more message parts. */
2115 #define GNUNET_MESSAGE_TYPE_PSYC_MESSAGE 691
2116
2117 /** M<->S<->C: PSYC message which contains a header and one or more message parts. */
2118 #define GNUNET_MESSAGE_TYPE_PSYC_MESSAGE_HEADER 692 // FIXME: start using this where appropriate
2119
2120 /** Message part: method */
2121 #define GNUNET_MESSAGE_TYPE_PSYC_MESSAGE_METHOD 693
2122
2123 /** Message part: modifier */
2124 #define GNUNET_MESSAGE_TYPE_PSYC_MESSAGE_MODIFIER 694
2125
2126 /** Message part: modifier continuation */
2127 #define GNUNET_MESSAGE_TYPE_PSYC_MESSAGE_MOD_CONT 695
2128
2129 /** Message part: data */
2130 #define GNUNET_MESSAGE_TYPE_PSYC_MESSAGE_DATA 696
2131
2132 /** Message part: end of message */
2133 #define GNUNET_MESSAGE_TYPE_PSYC_MESSAGE_END 697
2134
2135 /** Message part: message cancelled */
2136 #define GNUNET_MESSAGE_TYPE_PSYC_MESSAGE_CANCEL 698
2137
2138 /** S->C: message acknowledgement */
2139 #define GNUNET_MESSAGE_TYPE_PSYC_MESSAGE_ACK 699
2140
2141 /* 700 */
2142
2143 /** C->S: request channel history replay from PSYCstore. */
2144 #define GNUNET_MESSAGE_TYPE_PSYC_HISTORY_REPLAY 701
2145
2146 /** S->C: result for a channel history request */
2147 #define GNUNET_MESSAGE_TYPE_PSYC_HISTORY_RESULT 702
2148
2149
2150 /** C->S: request best matching state variable from PSYCstore. */
2151 #define GNUNET_MESSAGE_TYPE_PSYC_STATE_GET 703
2152
2153 /** C->S: request state variables with a given prefix from PSYCstore. */
2154 #define GNUNET_MESSAGE_TYPE_PSYC_STATE_GET_PREFIX 704
2155
2156 /** S->C: result for a state request. */
2157 #define GNUNET_MESSAGE_TYPE_PSYC_STATE_RESULT 705
2158
2159
2160 /*******************************************************************************
2161  * CONVERSATION message types
2162  ******************************************************************************/
2163
2164 /**
2165  * Message to transmit the audio between helper and speaker/microphone library.
2166  */
2167 #define GNUNET_MESSAGE_TYPE_CONVERSATION_AUDIO 730
2168
2169 /**
2170  * Client -> Server message to register a phone.
2171  */
2172 #define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_REGISTER 731
2173
2174 /**
2175  * Client -> Server message to reject/hangup a call
2176  */
2177 #define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_PICK_UP 732
2178
2179 /**
2180  * Client -> Server message to reject/hangup a call
2181  */
2182 #define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_HANG_UP 733
2183
2184 /**
2185  * Client <- Server message to indicate a ringing phone
2186  */
2187 #define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_CALL 734
2188
2189 /**
2190  * Client <- Server message to indicate a ringing phone
2191  */
2192 #define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_RING 735
2193
2194 /**
2195  * Client <-> Server message to suspend connection.
2196  */
2197 #define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_SUSPEND 736
2198
2199 /**
2200  * Client <-> Server message to resume connection.
2201  */
2202 #define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_RESUME 737
2203
2204 /**
2205  * Service -> Client message to notify that phone was picked up.
2206  */
2207 #define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_PHONE_PICKED_UP 738
2208
2209 /**
2210  * Client <-> Server message to send audio data.
2211  */
2212 #define GNUNET_MESSAGE_TYPE_CONVERSATION_CS_AUDIO 739
2213
2214 /**
2215  * Cadet: call initiation
2216  */
2217 #define GNUNET_MESSAGE_TYPE_CONVERSATION_CADET_PHONE_RING 740
2218
2219 /**
2220  * Cadet: hang up / refuse call
2221  */
2222 #define GNUNET_MESSAGE_TYPE_CONVERSATION_CADET_PHONE_HANG_UP 741
2223
2224 /**
2225  * Cadet: pick up phone (establish audio channel)
2226  */
2227 #define GNUNET_MESSAGE_TYPE_CONVERSATION_CADET_PHONE_PICK_UP 742
2228
2229 /**
2230  * Cadet: phone suspended.
2231  */
2232 #define GNUNET_MESSAGE_TYPE_CONVERSATION_CADET_PHONE_SUSPEND 743
2233
2234 /**
2235  * Cadet: phone resumed.
2236  */
2237 #define GNUNET_MESSAGE_TYPE_CONVERSATION_CADET_PHONE_RESUME 744
2238
2239 /**
2240  * Cadet: audio data
2241  */
2242 #define GNUNET_MESSAGE_TYPE_CONVERSATION_CADET_AUDIO 745
2243
2244
2245 /*******************************************************************************
2246  * MULTICAST message types
2247  ******************************************************************************/
2248
2249 /**
2250  * C: client
2251  * S: service
2252  * T: cadet
2253  */
2254
2255 /**
2256  * C->S: Start the origin.
2257  */
2258 #define GNUNET_MESSAGE_TYPE_MULTICAST_ORIGIN_START 750
2259
2260 /**
2261  * C->S: Join group as a member.
2262  */
2263 #define GNUNET_MESSAGE_TYPE_MULTICAST_MEMBER_JOIN 751
2264
2265 /**
2266  * C<--S<->T: A peer wants to join the group.
2267  *
2268  * Unicast message to the origin or another group member.
2269  */
2270 #define GNUNET_MESSAGE_TYPE_MULTICAST_JOIN_REQUEST 752
2271
2272 /**
2273  * C<->S<->T: Response to a join request.
2274  *
2275  * Unicast message from a group member to the peer wanting to join.
2276  */
2277 #define GNUNET_MESSAGE_TYPE_MULTICAST_JOIN_DECISION 753
2278
2279 /**
2280  * A peer wants to part the group.
2281  */
2282 #define GNUNET_MESSAGE_TYPE_MULTICAST_PART_REQUEST 754
2283
2284 /**
2285  * Acknowledgement sent in response to a part request.
2286  *
2287  * Unicast message from a group member to the peer wanting to part.
2288  */
2289 #define GNUNET_MESSAGE_TYPE_MULTICAST_PART_ACK 755
2290
2291 // FIXME: this is never used!
2292 /**
2293  * Group terminated.
2294  */
2295 #define GNUNET_MESSAGE_TYPE_MULTICAST_GROUP_END 756
2296
2297 /**
2298  * C<->S<->T: Multicast message from the origin to all members.
2299  */
2300 #define GNUNET_MESSAGE_TYPE_MULTICAST_MESSAGE 757
2301
2302 /**
2303  * C<->S<->T: Unicast request from a group member to the origin.
2304  */
2305 #define GNUNET_MESSAGE_TYPE_MULTICAST_REQUEST 758
2306
2307 /**
2308  * C->S: Acknowledgement of a message or request fragment for the client.
2309  */
2310 #define GNUNET_MESSAGE_TYPE_MULTICAST_FRAGMENT_ACK 759
2311
2312 /**
2313  * C<->S<->T: Replay request from a group member to another member.
2314  */
2315 #define GNUNET_MESSAGE_TYPE_MULTICAST_REPLAY_REQUEST 760
2316
2317 /**
2318  * C<->S<->T: Replay response from a group member to another member.
2319  */
2320 #define GNUNET_MESSAGE_TYPE_MULTICAST_REPLAY_RESPONSE 761
2321
2322 /**
2323  * C<->S: End of replay response.
2324  */
2325 #define GNUNET_MESSAGE_TYPE_MULTICAST_REPLAY_RESPONSE_END 762
2326
2327
2328
2329 /*******************************************************************************
2330  * SECRETSHARING message types
2331  ******************************************************************************/
2332
2333
2334 /**
2335  * Establish a new session.
2336  */
2337 #define GNUNET_MESSAGE_TYPE_SECRETSHARING_CLIENT_GENERATE 780
2338
2339 /**
2340  * Request the decryption of a ciphertext.
2341  */
2342 #define GNUNET_MESSAGE_TYPE_SECRETSHARING_CLIENT_DECRYPT 781
2343
2344 /**
2345  * The service succeeded in decrypting a ciphertext.
2346  */
2347 #define GNUNET_MESSAGE_TYPE_SECRETSHARING_CLIENT_DECRYPT_DONE 782
2348
2349 /**
2350  * The cryptosystem has been established.
2351  * Contains the peer's share.
2352  */
2353 #define GNUNET_MESSAGE_TYPE_SECRETSHARING_CLIENT_SECRET_READY 783
2354
2355
2356 /*******************************************************************************
2357  * PEERSTORE message types
2358  ******************************************************************************/
2359
2360 /**
2361  * Store request message
2362  */
2363 #define GNUNET_MESSAGE_TYPE_PEERSTORE_STORE 820
2364
2365 /**
2366  * Iteration request
2367  */
2368 #define GNUNET_MESSAGE_TYPE_PEERSTORE_ITERATE 821
2369
2370 /**
2371  * Iteration record message
2372  */
2373 #define GNUNET_MESSAGE_TYPE_PEERSTORE_ITERATE_RECORD 822
2374
2375 /**
2376  * Iteration end message
2377  */
2378 #define GNUNET_MESSAGE_TYPE_PEERSTORE_ITERATE_END 823
2379
2380 /**
2381  * Watch request
2382  */
2383 #define GNUNET_MESSAGE_TYPE_PEERSTORE_WATCH 824
2384
2385 /**
2386  * Watch response
2387  */
2388 #define GNUNET_MESSAGE_TYPE_PEERSTORE_WATCH_RECORD 825
2389
2390 /**
2391  * Watch cancel request
2392  */
2393 #define GNUNET_MESSAGE_TYPE_PEERSTORE_WATCH_CANCEL 826
2394
2395 /*******************************************************************************
2396  * SOCIAL message types
2397  ******************************************************************************/
2398
2399 /**
2400  * C: client
2401  * S: service
2402  * P: PSYC
2403  */
2404
2405 /** S->C: result of an operation */
2406 #define GNUNET_MESSAGE_TYPE_SOCIAL_RESULT_CODE 840
2407
2408 /** C->S: request to enter a place as the host */
2409 #define GNUNET_MESSAGE_TYPE_SOCIAL_HOST_ENTER 841
2410
2411 /** S->C: host enter acknowledgement */
2412 #define GNUNET_MESSAGE_TYPE_SOCIAL_HOST_ENTER_ACK 842
2413
2414 /** C->S: request to enter a place as a guest */
2415 #define GNUNET_MESSAGE_TYPE_SOCIAL_GUEST_ENTER 843
2416
2417 /** C->S: request to enter a place as a guest, using a GNS address */
2418 #define GNUNET_MESSAGE_TYPE_SOCIAL_GUEST_ENTER_BY_NAME 844
2419
2420 /** S->C: guest enter acknowledgement */
2421 #define GNUNET_MESSAGE_TYPE_SOCIAL_GUEST_ENTER_ACK 845
2422
2423 /** P->S->C: incoming entry request from PSYC */
2424 #define GNUNET_MESSAGE_TYPE_SOCIAL_ENTRY_REQUEST 846
2425
2426 /** C->S->P: decision about an entry request */
2427 #define GNUNET_MESSAGE_TYPE_SOCIAL_ENTRY_DECISION 847
2428
2429 /** C->S: request to leave a place */
2430 #define GNUNET_MESSAGE_TYPE_SOCIAL_PLACE_LEAVE 848
2431
2432 /** S->C: place leave acknowledgement */
2433 #define GNUNET_MESSAGE_TYPE_SOCIAL_PLACE_LEAVE_ACK 849
2434
2435 /** C->S: add place to GNS zone */
2436 #define GNUNET_MESSAGE_TYPE_SOCIAL_ZONE_ADD_PLACE 850
2437
2438 /** C->S: add nym to GNS zone */
2439 #define GNUNET_MESSAGE_TYPE_SOCIAL_ZONE_ADD_NYM 851
2440
2441 /** C->S: connect application */
2442 #define GNUNET_MESSAGE_TYPE_SOCIAL_APP_CONNECT 852
2443
2444 /** C->S: detach a place from application */
2445 #define GNUNET_MESSAGE_TYPE_SOCIAL_APP_DETACH 853
2446
2447 /** S->C: notify about an existing ego */
2448 #define GNUNET_MESSAGE_TYPE_SOCIAL_APP_EGO 854
2449
2450 /** S->C: end of ego list */
2451 #define GNUNET_MESSAGE_TYPE_SOCIAL_APP_EGO_END 855
2452
2453 /** S->C: notify about an existing place */
2454 #define GNUNET_MESSAGE_TYPE_SOCIAL_APP_PLACE 856
2455
2456 /** S->C: end of place list */
2457 #define GNUNET_MESSAGE_TYPE_SOCIAL_APP_PLACE_END 857
2458
2459 /** C->S: set message processing flags */
2460 #define GNUNET_MESSAGE_TYPE_SOCIAL_MSG_PROC_SET 858
2461
2462 /** C->S: clear message processing flags */
2463 #define GNUNET_MESSAGE_TYPE_SOCIAL_MSG_PROC_CLEAR 859
2464
2465 /*******************************************************************************
2466  * X-VINE DHT messages
2467  ******************************************************************************/
2468
2469 /**
2470  * Trail setup request is received by a peer.
2471  */
2472 #define GNUNET_MESSAGE_TYPE_XDHT_P2P_TRAIL_SETUP 880
2473
2474 /**
2475  * Trail to a particular peer is returned to this peer.
2476  */
2477 #define GNUNET_MESSAGE_TYPE_XDHT_P2P_TRAIL_SETUP_RESULT 881
2478
2479 /**
2480  * Verify if your immediate successor is still your immediate successor.
2481  */
2482 #define GNUNET_MESSAGE_TYPE_XDHT_P2P_VERIFY_SUCCESSOR 882
2483
2484 /**
2485  * Notify your new immediate successor that you are its new predecessor.
2486  */
2487 #define GNUNET_MESSAGE_TYPE_XDHT_P2P_NOTIFY_NEW_SUCCESSOR 883
2488
2489 /**
2490  * Message which contains the immediate predecessor of requested successor
2491  */
2492 #define GNUNET_MESSAGE_TYPE_XDHT_P2P_VERIFY_SUCCESSOR_RESULT 884
2493
2494 /**
2495  * Message which contains the get result.
2496  */
2497 #define GNUNET_MESSAGE_TYPE_XDHT_P2P_GET_RESULT 885
2498
2499 /**
2500  * Trail Rejection Message.
2501  */
2502 #define GNUNET_MESSAGE_TYPE_XDHT_P2P_TRAIL_SETUP_REJECTION 886
2503
2504 /**
2505  * Trail Tear down Message.
2506  */
2507 #define GNUNET_MESSAGE_TYPE_XDHT_P2P_TRAIL_TEARDOWN 887
2508
2509 /**
2510  * Routing table add message.
2511  */
2512 #define GNUNET_MESSAGE_TYPE_XDHT_P2P_ADD_TRAIL 888
2513
2514 /**
2515  * Peer is storing the data in DHT.
2516  */
2517 #define GNUNET_MESSAGE_TYPE_XDHT_P2P_PUT 890
2518
2519 /**
2520  * Peer tries to find data in DHT.
2521  */
2522 #define GNUNET_MESSAGE_TYPE_XDHT_P2P_GET 891
2523
2524 /**
2525  * Send back peer that considers you are its successor, a confirmation
2526  * that you got the notify successor message.
2527  */
2528 #define GNUNET_MESSAGE_TYPE_XDHT_P2P_NOTIFY_SUCCESSOR_CONFIRMATION 892
2529
2530 #if ENABLE_MALICIOUS
2531 /**
2532  * Turn X-VINE DHT service malicious
2533  */
2534 #define GNUNET_MESSAGE_TYPE_DHT_ACT_MALICIOUS 893
2535
2536 /**
2537  * Acknowledge receiving ACT MALICIOUS request
2538  */
2539 #define GNUNET_MESSAGE_TYPE_DHT_CLIENT_ACT_MALICIOUS_OK  894
2540
2541 #endif
2542
2543
2544 /*******************************************************************************
2545  * Whanau DHT messages
2546  ******************************************************************************/
2547
2548
2549 /**
2550  * This message contains the query for performing a random walk
2551  */
2552 #define GNUNET_MESSAGE_TYPE_WDHT_RANDOM_WALK 910
2553
2554 /**
2555  * This message contains the result of a random walk
2556  */
2557 #define GNUNET_MESSAGE_TYPE_WDHT_RANDOM_WALK_RESPONSE 911
2558
2559 /**
2560  * This message contains a notification for the death of a trail
2561  */
2562 #define GNUNET_MESSAGE_TYPE_WDHT_TRAIL_DESTROY 912
2563
2564 /**
2565  * This message are used to route a query to a peer
2566  */
2567 #define GNUNET_MESSAGE_TYPE_WDHT_TRAIL_ROUTE 913
2568
2569 /**
2570  * This message contains the query to transfer successor values.
2571  */
2572 #define GNUNET_MESSAGE_TYPE_WDHT_SUCCESSOR_FIND 914
2573
2574 /**
2575  * Message which contains the get query
2576  */
2577 #define GNUNET_MESSAGE_TYPE_WDHT_GET 915
2578
2579 /**
2580  * Message which contains the "put", a response to
2581  * #GNUNET_MESSAGE_TYPE_WDHT_SUCCESSOR_FIND.
2582  */
2583 #define GNUNET_MESSAGE_TYPE_WDHT_PUT 916
2584
2585 /**
2586  * Message which contains the get result, a response
2587  * to #GNUNET_MESSAGE_TYPE_WDHT_GET.
2588  */
2589 #define GNUNET_MESSAGE_TYPE_WDHT_GET_RESULT 917
2590
2591
2592 /*******************************************************************************
2593  * RPS messages
2594  ******************************************************************************/
2595
2596 /* P2P Messages */
2597
2598 /**
2599  * RPS check liveliness message to check liveliness of other peer
2600  */
2601 #define GNUNET_MESSAGE_TYPE_RPS_PP_CHECK_LIVE     950
2602
2603 /**
2604  * RPS PUSH message to push own ID to another peer
2605  */
2606 #define GNUNET_MESSAGE_TYPE_RPS_PP_PUSH           951
2607
2608 /**
2609  * RPS PULL REQUEST message to request the local view of another peer
2610  */
2611 #define GNUNET_MESSAGE_TYPE_RPS_PP_PULL_REQUEST   952
2612
2613 /**
2614  * RPS PULL REPLY message which contains the view of the other peer
2615  */
2616 #define GNUNET_MESSAGE_TYPE_RPS_PP_PULL_REPLY     953
2617
2618
2619
2620 /* Client-Service Messages */
2621
2622 /**
2623  * RPS CS REQUEST Message for the Client to request (a) random peer(s)
2624  */
2625 #define GNUNET_MESSAGE_TYPE_RPS_CS_REQUEST        954
2626
2627 /**
2628  * RPS CS REPLY Message for the Server to send (a) random peer(s)
2629  */
2630 #define GNUNET_MESSAGE_TYPE_RPS_CS_REPLY          955
2631
2632 /**
2633  * RPS CS REQUEST CANCEL Message for the Client to cancel a request
2634  */
2635 #define GNUNET_MESSAGE_TYPE_RPS_CS_REQUEST_CANCEL 956
2636
2637 /**
2638  * RPS CS SEED Message for the Client to seed peers into rps
2639  */
2640 #define GNUNET_MESSAGE_TYPE_RPS_CS_SEED           957
2641
2642 #ifdef ENABLE_MALICIOUS
2643 /**
2644  * Turn RPS service malicious
2645  */
2646 #define GNUNET_MESSAGE_TYPE_RPS_ACT_MALICIOUS     958
2647
2648 #endif /* ENABLE_MALICIOUS */
2649
2650 /* Debugging API continues at 1130 */
2651
2652 /******************************************************************************/
2653
2654
2655 /**************************************************
2656  *
2657  * IDENTITY PROVIDER MESSAGE TYPES
2658  */
2659 #define GNUNET_MESSAGE_TYPE_IDENTITY_PROVIDER_ATTRIBUTE_STORE 961
2660
2661 #define GNUNET_MESSAGE_TYPE_IDENTITY_PROVIDER_ATTRIBUTE_STORE_RESPONSE 962
2662
2663 #define GNUNET_MESSAGE_TYPE_IDENTITY_PROVIDER_ATTRIBUTE_ITERATION_START 963
2664
2665 #define GNUNET_MESSAGE_TYPE_IDENTITY_PROVIDER_ATTRIBUTE_ITERATION_STOP 964
2666
2667 #define GNUNET_MESSAGE_TYPE_IDENTITY_PROVIDER_ATTRIBUTE_ITERATION_NEXT 965
2668
2669 #define GNUNET_MESSAGE_TYPE_IDENTITY_PROVIDER_ATTRIBUTE_RESULT 966
2670
2671 #define GNUNET_MESSAGE_TYPE_IDENTITY_PROVIDER_ISSUE_TICKET 967
2672
2673 #define GNUNET_MESSAGE_TYPE_IDENTITY_PROVIDER_TICKET_RESULT 968
2674
2675 #define GNUNET_MESSAGE_TYPE_IDENTITY_PROVIDER_REVOKE_TICKET 969
2676
2677 #define GNUNET_MESSAGE_TYPE_IDENTITY_PROVIDER_REVOKE_TICKET_RESULT 970
2678
2679 #define GNUNET_MESSAGE_TYPE_IDENTITY_PROVIDER_CONSUME_TICKET 971
2680
2681 #define GNUNET_MESSAGE_TYPE_IDENTITY_PROVIDER_CONSUME_TICKET_RESULT 972
2682
2683 #define GNUNET_MESSAGE_TYPE_IDENTITY_PROVIDER_TICKET_ITERATION_START 973
2684
2685 #define GNUNET_MESSAGE_TYPE_IDENTITY_PROVIDER_TICKET_ITERATION_STOP 974
2686
2687 #define GNUNET_MESSAGE_TYPE_IDENTITY_PROVIDER_TICKET_ITERATION_NEXT 975
2688
2689 /**************************************************
2690  *
2691  * CREDENTIAL MESSAGE TYPES
2692  */
2693 #define GNUNET_MESSAGE_TYPE_CREDENTIAL_VERIFY     981
2694
2695 #define GNUNET_MESSAGE_TYPE_CREDENTIAL_VERIFY_RESULT 982
2696
2697 #define GNUNET_MESSAGE_TYPE_CREDENTIAL_COLLECT 983
2698
2699 #define GNUNET_MESSAGE_TYPE_CREDENTIAL_COLLECT_RESULT 984
2700
2701 /******************************************************************************/
2702
2703
2704 /******************************************************************************/
2705 /***********************************  CADET  **********************************/
2706 /******************************************************************************/
2707 /* CADET: message types 1000-1059
2708  * 1000-1009 Connection-level Messages
2709  * 1010-1019 Channel-level Messages
2710  * 1020-1029 Local Client-Service
2711  * 1030-1039 Local Service Monitoring
2712  * 1040-1049 Application Data
2713  * 1050-1059 Reserved
2714  */
2715
2716 /********************************  Connection  ********************************/
2717
2718 /**
2719  * Request the creation of a connection
2720  */
2721 #define GNUNET_MESSAGE_TYPE_CADET_CONNECTION_CREATE 1000
2722
2723 /**
2724  * Send origin an ACK that the connection is complete
2725  */
2726 #define GNUNET_MESSAGE_TYPE_CADET_CONNECTION_CREATE_ACK 1001
2727
2728 /**
2729  * Notify that a connection is no longer valid
2730  */
2731 #define GNUNET_MESSAGE_TYPE_CADET_CONNECTION_BROKEN 1002
2732
2733 /**
2734  * Request the destuction of a connection
2735  */
2736 #define GNUNET_MESSAGE_TYPE_CADET_CONNECTION_DESTROY 1003
2737
2738 /**
2739  * At some point, the route will spontaneously change TODO
2740  */
2741 #define GNUNET_MESSAGE_TYPE_CADET_CONNECTION_PATH_CHANGED_UNIMPLEMENTED 1004
2742
2743 /**
2744  * Hop-by-hop, connection dependent ACK.
2745  *
2746  * @deprecated
2747  */
2748 #define GNUNET_MESSAGE_TYPE_CADET_CONNECTION_HOP_BY_HOP_ENCRYPTED_ACK 1005
2749
2750 /**
2751  * We do not bother with ACKs for
2752  * #GNUNET_MESSAGE_TYPE_CADET_TUNNEL_ENCRYPTED messages, but we instead
2753  * poll for one if we got nothing for a while and start to be worried.
2754  *
2755  * @deprecated
2756  */
2757 #define GNUNET_MESSAGE_TYPE_CADET_TUNNEL_ENCRYPTED_POLL 1006
2758
2759 /**
2760  * Axolotl key exchange.
2761  */
2762 #define GNUNET_MESSAGE_TYPE_CADET_TUNNEL_KX 1007
2763
2764 /**
2765  * Axolotl encrypted data.
2766  */
2767 #define GNUNET_MESSAGE_TYPE_CADET_TUNNEL_ENCRYPTED 1008
2768
2769 /**
2770  * Axolotl key exchange response with authentication.
2771  */
2772 #define GNUNET_MESSAGE_TYPE_CADET_TUNNEL_KX_AUTH 1009
2773
2774
2775
2776 /**********************************  Channel  *********************************/
2777
2778 /**
2779  * Payload data (inside an encrypted tunnel).
2780  */
2781 #define GNUNET_MESSAGE_TYPE_CADET_CHANNEL_APP_DATA 1010
2782
2783 /**
2784  * Confirm payload data end-to-end.
2785  */
2786 #define GNUNET_MESSAGE_TYPE_CADET_CHANNEL_APP_DATA_ACK 1011
2787
2788 /**
2789  * Announce connection is still alive (direction sensitive).
2790  */
2791 #define GNUNET_MESSAGE_TYPE_CADET_CHANNEL_KEEPALIVE 1012
2792
2793 /**
2794  * Ask the cadet service to create a new channel.
2795  */
2796 #define GNUNET_MESSAGE_TYPE_CADET_CHANNEL_OPEN 1013
2797
2798 /**
2799  * Ask the cadet service to destroy a channel.
2800  */
2801 #define GNUNET_MESSAGE_TYPE_CADET_CHANNEL_DESTROY 1014
2802
2803 /**
2804  * Confirm the creation of a channel
2805  */
2806 #define GNUNET_MESSAGE_TYPE_CADET_CHANNEL_OPEN_ACK 1015
2807
2808 /**
2809  * Reject the creation of a channel
2810  *
2811  * @deprecated
2812  */
2813 #define GNUNET_MESSAGE_TYPE_CADET_CHANNEL_OPEN_NACK_DEPRECATED 1016
2814
2815 /***********************************  Local  **********************************/
2816
2817 /**
2818  * Payload client <-> service
2819  */
2820 #define GNUNET_MESSAGE_TYPE_CADET_LOCAL_DATA 1020
2821
2822 /**
2823  * Local ACK for data.
2824  */
2825 #define GNUNET_MESSAGE_TYPE_CADET_LOCAL_ACK 1021
2826
2827 /**
2828  * Start listening on a port.
2829  */
2830 #define GNUNET_MESSAGE_TYPE_CADET_LOCAL_PORT_OPEN 1022
2831
2832 /**
2833  * Stop listening on a port.
2834  */
2835 #define GNUNET_MESSAGE_TYPE_CADET_LOCAL_PORT_CLOSE 1023
2836
2837 /**
2838  * Ask the cadet service to create a new channel.
2839  */
2840 #define GNUNET_MESSAGE_TYPE_CADET_LOCAL_CHANNEL_CREATE 1024
2841
2842 /**
2843  * Tell client that a channel was destroyed.
2844  */
2845 #define GNUNET_MESSAGE_TYPE_CADET_LOCAL_CHANNEL_DESTROY 1025
2846
2847 /**********************************  Monitor  *********************************/
2848
2849
2850 /**
2851  * Local information about all channels of service.
2852  */
2853 #define GNUNET_MESSAGE_TYPE_CADET_LOCAL_INFO_CHANNELS 1030
2854
2855 /**
2856  * Local information of service about a specific channel.
2857  */
2858 #define GNUNET_MESSAGE_TYPE_CADET_LOCAL_INFO_CHANNEL 1031
2859
2860 /**
2861  * Local information about all tunnels of service.
2862  */
2863 #define GNUNET_MESSAGE_TYPE_CADET_LOCAL_INFO_TUNNELS 1032
2864
2865 /**
2866  * Local information of service about a specific tunnel.
2867  */
2868 #define GNUNET_MESSAGE_TYPE_CADET_LOCAL_INFO_TUNNEL 1033
2869
2870 /**
2871  * Local information about all connections of service.
2872  */
2873 #define GNUNET_MESSAGE_TYPE_CADET_LOCAL_INFO_CONNECTIONS 1034
2874
2875 /**
2876  * Local information of service about a specific connection.
2877  */
2878 #define GNUNET_MESSAGE_TYPE_CADET_LOCAL_INFO_CONNECTION 1035
2879
2880 /**
2881  * Local information about all peers known to the service.
2882  */
2883 #define GNUNET_MESSAGE_TYPE_CADET_LOCAL_INFO_PEERS 1036
2884
2885 /**
2886  * Local information of service about a specific peer.
2887  */
2888 #define GNUNET_MESSAGE_TYPE_CADET_LOCAL_INFO_PEER 1037
2889
2890 /**
2891  * Debug request.
2892  */
2893 #define GNUNET_MESSAGE_TYPE_CADET_LOCAL_INFO_DUMP 1038
2894
2895 /**
2896  * End of local information about all peers known to the service.
2897  */
2898 #define GNUNET_MESSAGE_TYPE_CADET_LOCAL_INFO_PEER_END 1039
2899
2900 /********************************  Application  *******************************/
2901
2902 /**
2903  * Traffic (net-cat style) used by the Command Line Interface.
2904  */
2905 #define GNUNET_MESSAGE_TYPE_CADET_CLI 1040
2906
2907 /******************************************************************************/
2908
2909
2910 /******************************************************************************/
2911 /*************************************  NAT  **********************************/
2912 /******************************************************************************/
2913
2914 /**
2915  * Message to ask NAT service to register a client.
2916  */
2917 #define GNUNET_MESSAGE_TYPE_NAT_REGISTER 1060
2918
2919 /**
2920  * Message to ask NAT service to handle a STUN packet.
2921  */
2922 #define GNUNET_MESSAGE_TYPE_NAT_HANDLE_STUN 1061
2923
2924 /**
2925  * Message to ask NAT service to request connection reversal.
2926  */
2927 #define GNUNET_MESSAGE_TYPE_NAT_REQUEST_CONNECTION_REVERSAL 1062
2928
2929 /**
2930  * Message to from NAT service notifying us that connection reversal
2931  * was requested by another peer.
2932  */
2933 #define GNUNET_MESSAGE_TYPE_NAT_CONNECTION_REVERSAL_REQUESTED 1063
2934
2935 /**
2936  * Message to from NAT service notifying us that one of our
2937  * addresses changed.
2938  */
2939 #define GNUNET_MESSAGE_TYPE_NAT_ADDRESS_CHANGE 1064
2940
2941 /**
2942  * Message to ask NAT service to request autoconfiguration.
2943  */
2944 #define GNUNET_MESSAGE_TYPE_NAT_AUTO_REQUEST_CFG 1067
2945
2946 /**
2947  * Message from NAT service with the autoconfiguration result.
2948  */
2949 #define GNUNET_MESSAGE_TYPE_NAT_AUTO_CFG_RESULT 1068
2950
2951
2952 /* 1080-1109 reserved for TMCG (Heiko Stamer, see gnunet-developers, January 2017) */
2953
2954
2955 /******************************************************************************/
2956 /***********************************  AUCTION  ********************************/
2957 /******************************************************************************/
2958
2959 /**
2960  * Client wants to create a new auction.
2961  */
2962 #define GNUNET_MESSAGE_TYPE_AUCTION_CLIENT_CREATE 1110
2963
2964 /**
2965  * Client wants to join an existing auction.
2966  */
2967 #define GNUNET_MESSAGE_TYPE_AUCTION_CLIENT_JOIN 1111
2968
2969 /**
2970  * Service reports the auction outcome to the client.
2971  */
2972 #define GNUNET_MESSAGE_TYPE_AUCTION_CLIENT_OUTCOME 1112
2973
2974
2975
2976 /******************************************************************************/
2977 /*********************************  RPS DEBUG  ********************************/
2978 /******************************************************************************/
2979
2980 /**
2981  * @brief Request updates of the view
2982  */
2983 #define GNUNET_MESSAGE_TYPE_RPS_CS_DEBUG_VIEW_REQUEST 1130
2984
2985 /**
2986  * @brief Send update of the view
2987  */
2988 #define GNUNET_MESSAGE_TYPE_RPS_CS_DEBUG_VIEW_REPLY   1131
2989
2990 /**
2991  * @brief Cancel getting updates of the view
2992  */
2993 #define GNUNET_MESSAGE_TYPE_RPS_CS_DEBUG_VIEW_CANCEL  1132
2994
2995
2996
2997 /**
2998  * Next available: 1200
2999  */
3000
3001
3002 /**
3003  * Type used to match 'all' message types.
3004  */
3005 #define GNUNET_MESSAGE_TYPE_ALL 65535
3006
3007
3008 #if 0                           /* keep Emacsens' auto-indent happy */
3009 {
3010 #endif
3011 #ifdef __cplusplus
3012 }
3013 #endif
3014
3015 /* ifndef GNUNET_PROTOCOLS_H */
3016 #endif
3017
3018 /** @} */ /* end of group protocols */
3019
3020 /* end of gnunet_protocols.h */