GNUnet  0.17.6
reclaim.h
Go to the documentation of this file.
1 /*
2  This file is part of GNUnet.
3  Copyright (C) 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  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 RECLAIM_H
29 #define RECLAIM_H
30 
31 #include "gnunet_common.h"
33 
35 
36 
41 {
46 
50  uint32_t id GNUNET_PACKED;
51 
56 
60  uint64_t exp GNUNET_PACKED;
61 
66 
67  /* followed by the serialized attribute */
68 };
69 
70 
75 {
80 
84  uint32_t id GNUNET_PACKED;
85 
90 
95 
96  /* followed by the serialized attribute */
97 };
98 
99 
104 {
109 
113  uint32_t id GNUNET_PACKED;
114 
119 };
120 
125 {
130 
134  uint32_t id GNUNET_PACKED;
135 
140 
145 
150 
155 
156  /* followed by:
157  * serialized attribute data
158  */
159 };
160 
165 {
170 
174  uint32_t id GNUNET_PACKED;
175 
180 
185 
190 
191  /* followed by:
192  * serialized credential data
193  */
194 };
195 
196 
201 {
206 
210  uint32_t id GNUNET_PACKED;
211 
216 };
217 
218 
223 {
228 
232  uint32_t id GNUNET_PACKED;
233 };
234 
235 
240 {
245 
249  uint32_t id GNUNET_PACKED;
250 
255 };
256 
257 
262 {
267 
271  uint32_t id GNUNET_PACKED;
272 };
273 
274 
279 {
284 
288  uint32_t id GNUNET_PACKED;
289 };
290 
291 
296 {
301 
305  uint32_t id GNUNET_PACKED;
306 };
307 
312 {
317 
321  uint32_t id GNUNET_PACKED;
322 
327 };
328 
329 
334 {
339 
343  uint32_t id GNUNET_PACKED;
344 };
345 
346 
351 {
356 
360  uint32_t id GNUNET_PACKED;
361 };
362 
363 
368 {
373 
377  uint32_t id GNUNET_PACKED;
378 
383 
388 
393 
394  // Followed by a serialized attribute list
395 };
396 
401 {
406 
410  uint32_t id GNUNET_PACKED;
411 
416 
421 
426 };
427 
432 {
437 
441  uint32_t id GNUNET_PACKED;
442 
447 };
448 
449 
454 {
459 
463  uint32_t id GNUNET_PACKED;
464 
469 
474 
475  /* Followed by the serialized GNUNET_RECLAIM_PresentationList */
476 };
477 
482 {
487 
491  uint32_t id GNUNET_PACKED;
492 
497 
502 };
503 
508 {
513 
517  uint32_t id GNUNET_PACKED;
518 
523 
528 
533 
538 
543 
544  /* followed by:
545  * serialized attributes data
546  */
547 };
548 
549 
551 
552 #endif
commonly used definitions; globals in this file are exempt from the rule that the module name ("commo...
Identity service; implements identity management for GNUnet.
#define GNUNET_NETWORK_STRUCT_BEGIN
Define as empty, GNUNET_PACKED should suffice, but this won't work on W32.
#define GNUNET_NETWORK_STRUCT_END
Define as empty, GNUNET_PACKED should suffice, but this won't work on W32;.
#define GNUNET_PACKED
gcc-ism to get packed structs.
Use to delete an identity attribute.
Definition: reclaim.h:75
struct GNUNET_MessageHeader header
Type: GNUNET_MESSAGE_TYPE_IDENTITY_SET_DEFAULT.
Definition: reclaim.h:79
uint32_t attr_len
The length of the attribute.
Definition: reclaim.h:89
struct GNUNET_IDENTITY_PrivateKey identity
Identity.
Definition: reclaim.h:94
Ask for next result of attribute iteration for the given operation.
Definition: reclaim.h:223
struct GNUNET_MessageHeader header
Type will be GNUNET_MESSAGE_TYPE_RECLAIM_ATTRIBUTE_ITERATION_NEXT.
Definition: reclaim.h:227
Start a attribute iteration for the given identity.
Definition: reclaim.h:201
struct GNUNET_IDENTITY_PrivateKey identity
Identity.
Definition: reclaim.h:215
struct GNUNET_MessageHeader header
Message.
Definition: reclaim.h:205
Stop attribute iteration for the given operation.
Definition: reclaim.h:296
struct GNUNET_MessageHeader header
Type will be GNUNET_MESSAGE_TYPE_RECLAIM_ATTRIBUTE_ITERATION_STOP.
Definition: reclaim.h:300
Attribute is returned from the idp.
Definition: reclaim.h:125
struct GNUNET_IDENTITY_PublicKey identity
The public key of the identity.
Definition: reclaim.h:154
uint16_t reserved
always zero (for alignment)
Definition: reclaim.h:149
uint16_t attr_len
Length of serialized attribute data.
Definition: reclaim.h:139
uint16_t credential_len
Length of serialized credential data.
Definition: reclaim.h:144
struct GNUNET_MessageHeader header
Message header.
Definition: reclaim.h:129
Use to store an identity attribute.
Definition: reclaim.h:41
struct GNUNET_MessageHeader header
Type: GNUNET_MESSAGE_TYPE_IDENTITY_SET_DEFAULT.
Definition: reclaim.h:45
uint32_t attr_len
The length of the attribute.
Definition: reclaim.h:55
uint64_t exp
The expiration interval of the attribute.
Definition: reclaim.h:60
struct GNUNET_IDENTITY_PrivateKey identity
Identity.
Definition: reclaim.h:65
Ticket consume message.
Definition: reclaim.h:482
struct GNUNET_RECLAIM_Ticket ticket
The ticket to consume.
Definition: reclaim.h:501
struct GNUNET_MessageHeader header
Type will be GNUNET_MESSAGE_TYPE_RECLAIM_CONSUME_TICKET.
Definition: reclaim.h:486
struct GNUNET_IDENTITY_PrivateKey identity
Identity.
Definition: reclaim.h:496
Attribute list is returned from the idp.
Definition: reclaim.h:508
uint16_t reserved
always zero (for alignment)
Definition: reclaim.h:537
uint16_t attrs_len
Length of serialized attribute data.
Definition: reclaim.h:527
struct GNUNET_MessageHeader header
Message header.
Definition: reclaim.h:512
uint16_t presentations_len
Length of presentation data.
Definition: reclaim.h:532
uint32_t result
Result.
Definition: reclaim.h:522
struct GNUNET_IDENTITY_PublicKey identity
The public key of the identity.
Definition: reclaim.h:542
Ask for next result of credential iteration for the given operation.
Definition: reclaim.h:262
struct GNUNET_MessageHeader header
Type will be GNUNET_MESSAGE_TYPE_RECLAIM_ATTRIBUTE_ITERATION_NEXT.
Definition: reclaim.h:266
Start a credential iteration for the given identity.
Definition: reclaim.h:240
struct GNUNET_MessageHeader header
Message.
Definition: reclaim.h:244
struct GNUNET_IDENTITY_PrivateKey identity
Identity.
Definition: reclaim.h:254
Stop credential iteration for the given operation.
Definition: reclaim.h:279
struct GNUNET_MessageHeader header
Type will be GNUNET_MESSAGE_TYPE_RECLAIM_ATTRIBUTE_ITERATION_STOP.
Definition: reclaim.h:283
Credential is returned from the idp.
Definition: reclaim.h:165
uint16_t credential_len
Length of serialized attribute data.
Definition: reclaim.h:179
struct GNUNET_MessageHeader header
Message header.
Definition: reclaim.h:169
uint16_t reserved
always zero (for alignment)
Definition: reclaim.h:184
struct GNUNET_IDENTITY_PublicKey identity
The public key of the identity.
Definition: reclaim.h:189
A private key for an identity as per LSD0001.
An identity key as per LSD0001.
Header for all communications.
The authorization ticket.
Ticket issue message.
Definition: reclaim.h:368
uint32_t attr_len
length of serialized attribute list
Definition: reclaim.h:392
struct GNUNET_MessageHeader header
Type will be GNUNET_MESSAGE_TYPE_RECLAIM_ISSUE_TICKET.
Definition: reclaim.h:372
struct GNUNET_IDENTITY_PublicKey rp
Requesting party.
Definition: reclaim.h:387
struct GNUNET_IDENTITY_PrivateKey identity
Identity.
Definition: reclaim.h:382
Ticket revoke message.
Definition: reclaim.h:401
struct GNUNET_IDENTITY_PrivateKey identity
Identity.
Definition: reclaim.h:415
struct GNUNET_RECLAIM_Ticket ticket
The ticket to revoke.
Definition: reclaim.h:425
struct GNUNET_MessageHeader header
Type will be GNUNET_MESSAGE_TYPE_RECLAIM_REVOKE_TICKET.
Definition: reclaim.h:405
uint32_t attrs_len
length of serialized attribute list
Definition: reclaim.h:420
Ticket revoke message.
Definition: reclaim.h:432
struct GNUNET_MessageHeader header
Type will be GNUNET_MESSAGE_TYPE_RECLAIM_REVOKE_TICKET_RESULT.
Definition: reclaim.h:436
uint32_t success
Revocation result.
Definition: reclaim.h:446
Attribute store/delete response message.
Definition: reclaim.h:104
struct GNUNET_MessageHeader header
Message header.
Definition: reclaim.h:108
int32_t op_result
GNUNET_SYSERR on failure, GNUNET_OK on success
Definition: reclaim.h:118
Ask for next result of ticket iteration for the given operation.
Definition: reclaim.h:334
struct GNUNET_MessageHeader header
Type will be GNUNET_MESSAGE_TYPE_RECLAIM_TICKET_ITERATION_NEXT.
Definition: reclaim.h:338
Start a ticket iteration for the given identity.
Definition: reclaim.h:312
struct GNUNET_IDENTITY_PrivateKey identity
Identity.
Definition: reclaim.h:326
struct GNUNET_MessageHeader header
Message.
Definition: reclaim.h:316
Stop ticket iteration for the given operation.
Definition: reclaim.h:351
struct GNUNET_MessageHeader header
Type will be GNUNET_MESSAGE_TYPE_RECLAIM_TICKET_ITERATION_STOP.
Definition: reclaim.h:355
Ticket result message.
Definition: reclaim.h:454
struct GNUNET_MessageHeader header
Type will be GNUNET_MESSAGE_TYPE_RECLAIM_TICKET_RESULT.
Definition: reclaim.h:458
struct GNUNET_RECLAIM_Ticket ticket
The new ticket.
Definition: reclaim.h:473
uint32_t presentations_len
Length of new presentations created.
Definition: reclaim.h:468