gnunet-android

GNUnet for Android
Log | Files | Refs | README

gnunet_protocols.h (93205B)


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