glitch in the license text detected by hyazinthe, thank you!
[oweals/gnunet.git] / src / include / gnunet_applications.h
1 /*
2      This file is part of GNUnet.
3      Copyright (C) 2011, 2016 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
16 /**
17  * @author Christian Grothoff
18  *
19  * @file
20  * Constants for network applications operating on top of the CADET service
21  *
22  * @defgroup applications  CADET application definitions
23  * Constants for network applications operating on top of the CADET service.
24  * @{
25  */
26
27 #ifndef GNUNET_APPLICATIONS_H
28 #define GNUNET_APPLICATIONS_H
29
30 #ifdef __cplusplus
31 extern "C"
32 {
33 #if 0                           /* keep Emacsens' auto-indent happy */
34 }
35 #endif
36 #endif
37
38 /**
39  * End of list marker.
40  */
41 #define GNUNET_APPLICATION_TYPE_END 0
42
43 /**
44  * Test.
45  */
46 #define GNUNET_APPLICATION_TYPE_TEST 1
47
48 /**
49  * Transfer of blocks for non-anonymmous file-sharing.
50  */
51 #define GNUNET_APPLICATION_PORT_FS_BLOCK_TRANSFER "fs-block"
52
53 /**
54  * Transfer of blocks for random peer sampling.
55  */
56 #define GNUNET_APPLICATION_PORT_RPS "rps"
57
58 /**
59  * Internet DNS resolution (external DNS gateway).  This is a "well-known"
60  * service a peer may offer over CADET where the port is the hash of this
61  * string.
62  */
63 #define GNUNET_APPLICATION_PORT_INTERNET_RESOLVER "exit-dns"
64
65 /**
66  * Internet IPv4 gateway (any TCP/UDP/ICMP).
67  */
68 #define GNUNET_APPLICATION_PORT_IPV4_GATEWAY "exit-ipv4"
69
70 /**
71  * Internet IPv6 gateway (any TCP/UDP/ICMP).
72  */
73 #define GNUNET_APPLICATION_PORT_IPV6_GATEWAY "exit-ipv6"
74
75 /**
76  * Internet exit regex prefix. Consisting of application ID, followed
77  * by version and padding.
78  */
79 #define GNUNET_APPLICATION_TYPE_EXIT_REGEX_PREFIX "GNUNET-VPN-VER-0001-"
80
81 /**
82  * Consensus.
83  *
84  * @deprecated
85  */
86 #define GNUNET_APPLICATION_TYPE_CONSENSUS 18
87
88 /**
89  * Set. Used for two-peer set operations implemented using stream.
90  * @deprecated
91  */
92 #define GNUNET_APPLICATION_TYPE_SET 19
93
94 /**
95  * Conversation control data.
96  * @deprecated
97  */
98 #define GNUNET_APPLICATION_TYPE_CONVERSATION_CONTROL 21
99
100 /**
101  * Conversation audio data.
102  * @deprecated
103  */
104 #define GNUNET_APPLICATION_TYPE_CONVERSATION_AUDIO 22
105
106 /**
107  * MQTT publish-subscribe.
108  * @deprecated
109  */
110 #define GNUNET_APPLICATION_TYPE_MQTT 23
111
112 /**
113  * Multicast data.
114  * @deprecated
115  */
116 #define GNUNET_APPLICATION_TYPE_MULTICAST 26
117
118
119 #if 0                           /* keep Emacsens' auto-indent happy */
120 {
121 #endif
122 #ifdef __cplusplus
123 }
124 #endif
125
126 /* ifndef GNUNET_APPLICATIONS_H */
127 #endif
128
129 /** @} */  /* end of group */
130
131 /* end of gnunet_applications.h */