GNUnet  0.10.x
identity.h
Go to the documentation of this file.
1 /*
2  This file is part of GNUnet.
3  Copyright (C) 2013 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 
28 #ifndef IDENTITY_H
29 #define IDENTITY_H
30 
31 #include "gnunet_common.h"
32 
33 
35 
36 
43 {
48 
54 
55  /* followed by 0-terminated error message (on error) */
56 };
57 
58 
62 struct LookupMessage
63 {
68  struct GNUNET_MessageHeader header;
69 
70  /* followed by 0-terminated ego name */
71 };
72 
73 
78 {
82  struct GNUNET_MessageHeader header;
83 
88  uint16_t name_len GNUNET_PACKED;
89 
93  uint16_t end_of_list GNUNET_PACKED;
94 
98  struct GNUNET_CRYPTO_EcdsaPrivateKey private_key;
99 
100  /* followed by 0-terminated ego name */
101 };
102 
103 
109 {
113  struct GNUNET_MessageHeader header;
114 
118  uint16_t name_len GNUNET_PACKED;
119 
124 
125 
126  /* followed by 0-terminated service name */
127 };
128 
129 
135 {
139  struct GNUNET_MessageHeader header;
140 
144  uint16_t name_len GNUNET_PACKED;
145 
150 
154  struct GNUNET_CRYPTO_EcdsaPrivateKey private_key;
155 
156  /* followed by 0-terminated service name */
157 };
158 
159 
165 {
169  struct GNUNET_MessageHeader header;
170 
174  uint16_t name_len GNUNET_PACKED;
175 
180 
184  struct GNUNET_CRYPTO_EcdsaPrivateKey private_key;
185 
186  /* followed by 0-terminated identity name */
187 };
188 
189 
195 {
199  struct GNUNET_MessageHeader header;
200 
204  uint16_t old_name_len GNUNET_PACKED;
205 
209  uint16_t new_name_len GNUNET_PACKED;
210 
211  /* followed by 0-terminated old name */
212  /* followed by 0-terminated new name */
213 };
214 
215 
221 {
225  struct GNUNET_MessageHeader header;
226 
230  uint16_t name_len GNUNET_PACKED;
231 
236 
237  /* followed by 0-terminated name */
238 };
239 
241 
246 {
251 
255  char *name;
256 
260  void *ctx;
261 
266 };
267 
268 
269 #endif
Message from client to GNS service to lookup records.
Definition: gns.h:36
Used from service to client as a result to the GET_DEFAULT message, used from client to service to SE...
Definition: identity.h:134
struct GNUNET_MessageHeader header
Type: GNUNET_MESSAGE_TYPE_IDENTITY_RESULT_CODE.
Definition: identity.h:47
Client requests renaming of an identity.
Definition: identity.h:194
static struct GNUNET_IDENTITY_Handle * id
Handle to identity service.
Private ECC key encoded for transmission.
char * name
Current name associated with this ego.
Definition: identity.h:255
#define GNUNET_NETWORK_STRUCT_BEGIN
Define as empty, GNUNET_PACKED should suffice, but this won&#39;t work on W32.
Handle for an ego.
Definition: identity.h:245
Client requests creation of an identity.
Definition: identity.h:164
A 512-bit hashcode.
Client requests deletion of an identity.
Definition: identity.h:220
void * ctx
Client context associated with this ego.
Definition: identity.h:260
uint32_t result_code
Status code for the last operation, in NBO.
Definition: identity.h:53
#define GNUNET_NETWORK_STRUCT_END
Define as empty, GNUNET_PACKED should suffice, but this won&#39;t work on W32;.
#define GNUNET_PACKED
gcc-ism to get packed structs.
Header for all communications.
Client requests knowledge about default identity for a subsystem from identity service.
Definition: identity.h:108
commonly used definitions; globals in this file are exempt from the rule that the module name ("commo...
static unsigned long long reserved
How much space have we currently reserved?
struct GNUNET_CRYPTO_EcdsaPrivateKey * pk
Private key associated with this ego.
Definition: identity.h:250
Answer from service to client about last operation; GET_DEFAULT maybe answered with this message on f...
Definition: identity.h:42
Service informs client about status of a pseudonym.
Definition: identity.h:77