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