![]() |
GNUnet
0.11.x
|
Data Structures | |
struct | GNUNET_RECLAIM_Ticket |
The authorization ticket. More... | |
Macros | |
#define | GNUNET_RECLAIM_VERSION 0x00000001 |
Version number of the re:claimID API. More... | |
Typedefs | |
typedef void(* | GNUNET_RECLAIM_TicketCallback) (void *cls, const struct GNUNET_RECLAIM_Ticket *ticket) |
Method called when a token has been issued. More... | |
typedef void(* | GNUNET_RECLAIM_IssueTicketCallback) (void *cls, const struct GNUNET_RECLAIM_Ticket *ticket, const struct GNUNET_RECLAIM_PresentationList *presentations) |
Method called when a token has been issued. More... | |
typedef void(* | GNUNET_RECLAIM_ContinuationWithStatus) (void *cls, int32_t success, const char *emsg) |
Continuation called to notify client about result of the operation. More... | |
typedef void(* | GNUNET_RECLAIM_AttributeResult) (void *cls, const struct GNUNET_IDENTITY_PublicKey *identity, const struct GNUNET_RECLAIM_Attribute *attr) |
Callback used to notify the client of attribute results. More... | |
typedef void(* | GNUNET_RECLAIM_AttributeTicketResult) (void *cls, const struct GNUNET_IDENTITY_PublicKey *identity, const struct GNUNET_RECLAIM_Attribute *attr, const struct GNUNET_RECLAIM_Presentation *presentation) |
Callback used to notify the client of attribute results. More... | |
typedef void(* | GNUNET_RECLAIM_CredentialResult) (void *cls, const struct GNUNET_IDENTITY_PublicKey *identity, const struct GNUNET_RECLAIM_Credential *credential) |
Callback used to notify the client of credential results. More... | |
#define GNUNET_RECLAIM_VERSION 0x00000001 |
Version number of the re:claimID API.
Definition at line 48 of file gnunet_reclaim_service.h.
typedef void(* GNUNET_RECLAIM_TicketCallback) (void *cls, const struct GNUNET_RECLAIM_Ticket *ticket) |
Method called when a token has been issued.
On success returns a ticket that can be given to a relying party in order for it retrieve identity attributes
cls | closure |
ticket | the ticket |
Definition at line 95 of file gnunet_reclaim_service.h.
typedef void(* GNUNET_RECLAIM_IssueTicketCallback) (void *cls, const struct GNUNET_RECLAIM_Ticket *ticket, const struct GNUNET_RECLAIM_PresentationList *presentations) |
Method called when a token has been issued.
On success returns a ticket that can be given to a relying party in order for it retrieve identity attributes
cls | closure |
ticket | the ticket |
Definition at line 107 of file gnunet_reclaim_service.h.
typedef void(* GNUNET_RECLAIM_ContinuationWithStatus) (void *cls, int32_t success, const char *emsg) |
Continuation called to notify client about result of the operation.
cls | The callback closure |
success | GNUNET_SYSERR on failure |
emsg | NULL on success, otherwise an error message |
Definition at line 121 of file gnunet_reclaim_service.h.
typedef void(* GNUNET_RECLAIM_AttributeResult) (void *cls, const struct GNUNET_IDENTITY_PublicKey *identity, const struct GNUNET_RECLAIM_Attribute *attr) |
Callback used to notify the client of attribute results.
cls | The callback closure |
identity | The identity authoritative over the attributes |
attr | The attribute |
Definition at line 132 of file gnunet_reclaim_service.h.
typedef void(* GNUNET_RECLAIM_AttributeTicketResult) (void *cls, const struct GNUNET_IDENTITY_PublicKey *identity, const struct GNUNET_RECLAIM_Attribute *attr, const struct GNUNET_RECLAIM_Presentation *presentation) |
Callback used to notify the client of attribute results.
cls | The callback closure |
identity | The identity authoritative over the attributes |
attr | The attribute |
presentation | The presentation for the credential (may be NULL) |
Definition at line 144 of file gnunet_reclaim_service.h.
typedef void(* GNUNET_RECLAIM_CredentialResult) (void *cls, const struct GNUNET_IDENTITY_PublicKey *identity, const struct GNUNET_RECLAIM_Credential *credential) |
Callback used to notify the client of credential results.
cls | The callback closure |
identity | The identity authoritative over the attributes |
credential | The credential |
attributes | the parsed attributes |
Definition at line 158 of file gnunet_reclaim_service.h.
struct GNUNET_RECLAIM_Handle* GNUNET_RECLAIM_connect | ( | const struct GNUNET_CONFIGURATION_Handle * | cfg | ) |
Connect to the re:claimID service.
cfg | Configuration to contact the re:claimID service. |
Connect to the re:claimID service.
cfg | the configuration to use |
Definition at line 1064 of file reclaim_api.c.
References cfg, GNUNET_RECLAIM_Handle::cfg, GNUNET_free, GNUNET_new, GNUNET_RECLAIM_Operation::h, GNUNET_RECLAIM_Handle::mq, and reconnect().
Referenced by libgnunet_plugin_rest_openid_connect_init(), libgnunet_plugin_rest_reclaim_init(), and run().
struct GNUNET_RECLAIM_Operation* GNUNET_RECLAIM_attribute_store | ( | struct GNUNET_RECLAIM_Handle * | h, |
const struct GNUNET_IDENTITY_PrivateKey * | pkey, | ||
const struct GNUNET_RECLAIM_Attribute * | attr, | ||
const struct GNUNET_TIME_Relative * | exp_interval, | ||
GNUNET_RECLAIM_ContinuationWithStatus | cont, | ||
void * | cont_cls | ||
) |
Store an attribute.
If the attribute is already present, it is replaced with the new attribute.
h | handle to the reclaim service |
pkey | Private key of the identity to add an attribute to |
attr | The attribute |
exp_interval | The relative expiration interval for the attribute |
cont | Continuation to call when done |
cont_cls | Closure for cont |
If the attribute is already present, it is replaced with the new attribute.
h | handle to the re:claimID service |
pkey | private key of the identity |
attr | the attribute value |
exp_interval | the relative expiration interval for the attribute |
cont | continuation to call when done |
cont_cls | closure for cont |
Definition at line 1135 of file reclaim_api.c.
References GNUNET_RECLAIM_Operation::as_cb, AttributeStoreMessage::attr_len, GNUNET_RECLAIM_Operation::cls, GNUNET_RECLAIM_Operation::env, AttributeStoreMessage::exp, GNUNET_CONTAINER_DLL_insert_tail, GNUNET_htonll(), GNUNET_MESSAGE_TYPE_RECLAIM_ATTRIBUTE_STORE, GNUNET_MQ_msg_extra, GNUNET_MQ_send_copy(), GNUNET_new, GNUNET_RECLAIM_attribute_serialize(), GNUNET_RECLAIM_attribute_serialize_get_size(), GNUNET_RECLAIM_Operation::h, AttributeStoreMessage::id, AttributeStoreMessage::identity, GNUNET_RECLAIM_Handle::mq, op, GNUNET_RECLAIM_Handle::op_head, GNUNET_RECLAIM_Handle::op_tail, pkey, GNUNET_RECLAIM_Operation::r_id, GNUNET_RECLAIM_Handle::r_id_gen, and GNUNET_TIME_Relative::rel_value_us.
Referenced by add_attribute_cont(), and iter_finished().
struct GNUNET_RECLAIM_Operation* GNUNET_RECLAIM_credential_store | ( | struct GNUNET_RECLAIM_Handle * | h, |
const struct GNUNET_IDENTITY_PrivateKey * | pkey, | ||
const struct GNUNET_RECLAIM_Credential * | attr, | ||
const struct GNUNET_TIME_Relative * | exp_interval, | ||
GNUNET_RECLAIM_ContinuationWithStatus | cont, | ||
void * | cont_cls | ||
) |
Store a credential.
If the credential is already present, it is replaced with the new credential.
h | handle to the re:claimID service |
pkey | private key of the identity |
attr | the credential value |
exp_interval | the relative expiration interval for the credential |
cont | continuation to call when done |
cont_cls | closure for cont |
Store a credential.
If the credential is already present, it is replaced with the new credential.
h | handle to the re:claimID service |
pkey | private key of the identity |
attr | the credential value |
exp_interval | the relative expiration interval for the credential |
cont | continuation to call when done |
cont_cls | closure for cont |
Definition at line 1227 of file reclaim_api.c.
References GNUNET_RECLAIM_Operation::as_cb, AttributeStoreMessage::attr_len, GNUNET_RECLAIM_Operation::cls, GNUNET_RECLAIM_Operation::env, AttributeStoreMessage::exp, GNUNET_CONTAINER_DLL_insert_tail, GNUNET_htonll(), GNUNET_MESSAGE_TYPE_RECLAIM_CREDENTIAL_STORE, GNUNET_MQ_msg_extra, GNUNET_MQ_send_copy(), GNUNET_new, GNUNET_RECLAIM_credential_serialize(), GNUNET_RECLAIM_credential_serialize_get_size(), GNUNET_RECLAIM_Operation::h, AttributeStoreMessage::id, AttributeStoreMessage::identity, GNUNET_RECLAIM_Handle::mq, op, GNUNET_RECLAIM_Handle::op_head, GNUNET_RECLAIM_Handle::op_tail, pkey, GNUNET_RECLAIM_Operation::r_id, GNUNET_RECLAIM_Handle::r_id_gen, and GNUNET_TIME_Relative::rel_value_us.
Referenced by add_credential_cont(), and cred_iter_finished().
struct GNUNET_RECLAIM_Operation* GNUNET_RECLAIM_attribute_delete | ( | struct GNUNET_RECLAIM_Handle * | h, |
const struct GNUNET_IDENTITY_PrivateKey * | pkey, | ||
const struct GNUNET_RECLAIM_Attribute * | attr, | ||
GNUNET_RECLAIM_ContinuationWithStatus | cont, | ||
void * | cont_cls | ||
) |
Delete an attribute.
Tickets used to share this attribute are updated accordingly.
h | handle to the re:claimID service |
pkey | Private key of the identity to add an attribute to |
attr | The attribute |
cont | Continuation to call when done |
cont_cls | Closure for cont |
Definition at line 1182 of file reclaim_api.c.
References GNUNET_RECLAIM_Operation::as_cb, AttributeDeleteMessage::attr_len, GNUNET_RECLAIM_Operation::cls, GNUNET_RECLAIM_Operation::env, GNUNET_CONTAINER_DLL_insert_tail, GNUNET_MESSAGE_TYPE_RECLAIM_ATTRIBUTE_DELETE, GNUNET_MQ_msg_extra, GNUNET_MQ_send_copy(), GNUNET_new, GNUNET_RECLAIM_attribute_serialize(), GNUNET_RECLAIM_attribute_serialize_get_size(), GNUNET_RECLAIM_Operation::h, AttributeDeleteMessage::id, AttributeDeleteMessage::identity, GNUNET_RECLAIM_Handle::mq, op, GNUNET_RECLAIM_Handle::op_head, GNUNET_RECLAIM_Handle::op_tail, pkey, GNUNET_RECLAIM_Operation::r_id, and GNUNET_RECLAIM_Handle::r_id_gen.
Referenced by delete_attribute_cont(), and iter_finished().
struct GNUNET_RECLAIM_Operation* GNUNET_RECLAIM_credential_delete | ( | struct GNUNET_RECLAIM_Handle * | h, |
const struct GNUNET_IDENTITY_PrivateKey * | pkey, | ||
const struct GNUNET_RECLAIM_Credential * | attr, | ||
GNUNET_RECLAIM_ContinuationWithStatus | cont, | ||
void * | cont_cls | ||
) |
Delete a credential.
Tickets used to share use a presentation of this credential are updated accordingly.
h | handle to the re:claimID service |
pkey | Private key of the identity to add an attribute to |
cred | The credential |
cont | Continuation to call when done |
cont_cls | Closure for cont |
Delete a credential.
Tickets used to share this credential are updated accordingly.
h | handle to the re:claimID service |
pkey | Private key of the identity to add an attribute to |
attr | The credential |
cont | Continuation to call when done |
cont_cls | Closure for cont |
Definition at line 1274 of file reclaim_api.c.
References GNUNET_RECLAIM_Operation::as_cb, AttributeDeleteMessage::attr_len, GNUNET_RECLAIM_Operation::cls, GNUNET_RECLAIM_Operation::env, GNUNET_CONTAINER_DLL_insert_tail, GNUNET_MESSAGE_TYPE_RECLAIM_CREDENTIAL_DELETE, GNUNET_MQ_msg_extra, GNUNET_MQ_send_copy(), GNUNET_new, GNUNET_RECLAIM_credential_serialize(), GNUNET_RECLAIM_credential_serialize_get_size(), GNUNET_RECLAIM_Operation::h, AttributeDeleteMessage::id, AttributeDeleteMessage::identity, GNUNET_RECLAIM_Handle::mq, op, GNUNET_RECLAIM_Handle::op_head, GNUNET_RECLAIM_Handle::op_tail, pkey, GNUNET_RECLAIM_Operation::r_id, and GNUNET_RECLAIM_Handle::r_id_gen.
Referenced by delete_credential_cont().
struct GNUNET_RECLAIM_AttributeIterator* GNUNET_RECLAIM_get_attributes_start | ( | struct GNUNET_RECLAIM_Handle * | h, |
const struct GNUNET_IDENTITY_PrivateKey * | identity, | ||
GNUNET_SCHEDULER_TaskCallback | error_cb, | ||
void * | error_cb_cls, | ||
GNUNET_RECLAIM_AttributeResult | proc, | ||
void * | proc_cls, | ||
GNUNET_SCHEDULER_TaskCallback | finish_cb, | ||
void * | finish_cb_cls | ||
) |
List all attributes for a local identity.
This MUST lock the struct GNUNET_RECLAIM_Handle
for any other calls than GNUNET_RECLAIM_get_attributes_next() and GNUNET_RECLAIM_get_attributes_stop. proc will be called once immediately, and then again after GNUNET_RECLAIM_get_attributes_next() is invoked.
On error (disconnect), error_cb will be invoked. On normal completion, finish_cb proc will be invoked.
h | Handle to the re:claimID service |
identity | Identity to iterate over |
error_cb | Function to call on error (i.e. disconnect), the handle is afterwards invalid |
error_cb_cls | Closure for error_cb |
proc | Function to call on each attribute |
proc_cls | Closure for proc |
finish_cb | Function to call on completion the handle is afterwards invalid |
finish_cb_cls | Closure for finish_cb |
Definition at line 1331 of file reclaim_api.c.
References GNUNET_RECLAIM_Operation::env, GNUNET_RECLAIM_AttributeIterator::env, GNUNET_RECLAIM_AttributeIterator::error_cb, error_cb(), GNUNET_RECLAIM_AttributeIterator::error_cb_cls, GNUNET_RECLAIM_AttributeIterator::finish_cb, GNUNET_RECLAIM_AttributeIterator::finish_cb_cls, GNUNET_CONTAINER_DLL_insert_tail, GNUNET_MESSAGE_TYPE_RECLAIM_ATTRIBUTE_ITERATION_START, GNUNET_MQ_msg, GNUNET_MQ_send(), GNUNET_new, GNUNET_RECLAIM_Operation::h, GNUNET_RECLAIM_AttributeIterator::h, AttributeIterationStartMessage::id, identity, AttributeIterationStartMessage::identity, GNUNET_RECLAIM_AttributeIterator::identity, GNUNET_RECLAIM_Handle::it_head, GNUNET_RECLAIM_Handle::it_tail, GNUNET_RECLAIM_Handle::mq, GNUNET_RECLAIM_Operation::msg, GNUNET_RECLAIM_AttributeIterator::proc, GNUNET_RECLAIM_AttributeIterator::proc_cls, GNUNET_RECLAIM_AttributeIterator::r_id, and GNUNET_RECLAIM_Handle::r_id_gen.
Referenced by code_redirect(), cred_iter_finished(), and list_attribute_cont().
void GNUNET_RECLAIM_get_attributes_next | ( | struct GNUNET_RECLAIM_AttributeIterator * | it | ) |
Calls the record processor specified in GNUNET_RECLAIM_get_attributes_start for the next record.
it | The iterator |
it | the iterator |
Definition at line 1377 of file reclaim_api.c.
References GNUNET_RECLAIM_Operation::env, GNUNET_MESSAGE_TYPE_RECLAIM_ATTRIBUTE_ITERATION_NEXT, GNUNET_MQ_msg, GNUNET_MQ_send(), GNUNET_RECLAIM_Operation::h, GNUNET_RECLAIM_AttributeIterator::h, AttributeIterationNextMessage::id, GNUNET_RECLAIM_Handle::mq, GNUNET_RECLAIM_Operation::msg, and GNUNET_RECLAIM_AttributeIterator::r_id.
Referenced by attr_collect(), iter_cb(), and oidc_attr_collect().
void GNUNET_RECLAIM_get_attributes_stop | ( | struct GNUNET_RECLAIM_AttributeIterator * | it | ) |
Stops iteration and releases the handle for further calls.
Must be called on any iteration that has not yet completed prior to calling GNUNET_RECLAIM_disconnect.
it | the iterator |
Definition at line 1398 of file reclaim_api.c.
References GNUNET_RECLAIM_Operation::env, free_it(), GNUNET_MESSAGE_TYPE_RECLAIM_ATTRIBUTE_ITERATION_STOP, GNUNET_MQ_msg, GNUNET_MQ_send(), GNUNET_RECLAIM_Operation::h, GNUNET_RECLAIM_AttributeIterator::h, AttributeIterationStopMessage::id, GNUNET_RECLAIM_Handle::mq, GNUNET_RECLAIM_Operation::msg, and GNUNET_RECLAIM_AttributeIterator::r_id.
Referenced by cleanup_handle(), and do_cleanup().
struct GNUNET_RECLAIM_CredentialIterator* GNUNET_RECLAIM_get_credentials_start | ( | struct GNUNET_RECLAIM_Handle * | h, |
const struct GNUNET_IDENTITY_PrivateKey * | identity, | ||
GNUNET_SCHEDULER_TaskCallback | error_cb, | ||
void * | error_cb_cls, | ||
GNUNET_RECLAIM_CredentialResult | proc, | ||
void * | proc_cls, | ||
GNUNET_SCHEDULER_TaskCallback | finish_cb, | ||
void * | finish_cb_cls | ||
) |
List all credentials for a local identity.
This MUST lock the struct GNUNET_RECLAIM_Handle
for any other calls than GNUNET_RECLAIM_get_credentials_next() and GNUNET_RECLAIM_get_credentials_stop. proc will be called once immediately, and then again after GNUNET_RECLAIM_get_credentials_next() is invoked.
On error (disconnect), error_cb will be invoked. On normal completion, finish_cb proc will be invoked.
h | Handle to the re:claimID service |
identity | Identity to iterate over |
error_cb | Function to call on error (i.e. disconnect), the handle is afterwards invalid |
error_cb_cls | Closure for error_cb |
proc | Function to call on each credential |
proc_cls | Closure for proc |
finish_cb | Function to call on completion the handle is afterwards invalid |
finish_cb_cls | Closure for finish_cb |
Definition at line 1440 of file reclaim_api.c.
References GNUNET_RECLAIM_Handle::ait_head, GNUNET_RECLAIM_Handle::ait_tail, GNUNET_RECLAIM_Operation::env, GNUNET_RECLAIM_CredentialIterator::env, GNUNET_RECLAIM_CredentialIterator::error_cb, error_cb(), GNUNET_RECLAIM_CredentialIterator::error_cb_cls, GNUNET_RECLAIM_CredentialIterator::finish_cb, GNUNET_RECLAIM_CredentialIterator::finish_cb_cls, GNUNET_CONTAINER_DLL_insert_tail, GNUNET_MESSAGE_TYPE_RECLAIM_CREDENTIAL_ITERATION_START, GNUNET_MQ_msg, GNUNET_MQ_send(), GNUNET_new, GNUNET_RECLAIM_Operation::h, GNUNET_RECLAIM_CredentialIterator::h, CredentialIterationStartMessage::id, identity, CredentialIterationStartMessage::identity, GNUNET_RECLAIM_CredentialIterator::identity, GNUNET_RECLAIM_Handle::mq, GNUNET_RECLAIM_Operation::msg, GNUNET_RECLAIM_CredentialIterator::proc, GNUNET_RECLAIM_CredentialIterator::proc_cls, GNUNET_RECLAIM_CredentialIterator::r_id, and GNUNET_RECLAIM_Handle::r_id_gen.
Referenced by list_credential_cont(), oidc_attr_collect_finished_cb(), and start_process().
void GNUNET_RECLAIM_get_credentials_next | ( | struct GNUNET_RECLAIM_CredentialIterator * | ait | ) |
Calls the record processor specified in GNUNET_RECLAIM_get_credentials_start for the next record.
it | the iterator |
Calls the record processor specified in GNUNET_RECLAIM_get_credentials_start for the next record.
it | the iterator |
Definition at line 1487 of file reclaim_api.c.
References GNUNET_RECLAIM_Operation::env, GNUNET_MESSAGE_TYPE_RECLAIM_CREDENTIAL_ITERATION_NEXT, GNUNET_MQ_msg, GNUNET_MQ_send(), GNUNET_RECLAIM_Operation::h, GNUNET_RECLAIM_CredentialIterator::h, CredentialIterationNextMessage::id, GNUNET_RECLAIM_Handle::mq, GNUNET_RECLAIM_Operation::msg, and GNUNET_RECLAIM_CredentialIterator::r_id.
Referenced by cred_collect(), cred_iter_cb(), and oidc_cred_collect().
void GNUNET_RECLAIM_get_credentials_stop | ( | struct GNUNET_RECLAIM_CredentialIterator * | ait | ) |
Stops iteration and releases the handle for further calls.
Must be called on any iteration that has not yet completed prior to calling GNUNET_RECLAIM_disconnect.
it | the iterator |
Definition at line 1509 of file reclaim_api.c.
References GNUNET_RECLAIM_Operation::env, free_ait(), GNUNET_MESSAGE_TYPE_RECLAIM_CREDENTIAL_ITERATION_STOP, GNUNET_MQ_msg, GNUNET_MQ_send(), GNUNET_RECLAIM_Operation::h, GNUNET_RECLAIM_CredentialIterator::h, CredentialIterationStopMessage::id, GNUNET_RECLAIM_Handle::mq, GNUNET_RECLAIM_Operation::msg, and GNUNET_RECLAIM_CredentialIterator::r_id.
Referenced by cleanup_handle(), and do_cleanup().
struct GNUNET_RECLAIM_Operation* GNUNET_RECLAIM_ticket_issue | ( | struct GNUNET_RECLAIM_Handle * | h, |
const struct GNUNET_IDENTITY_PrivateKey * | iss, | ||
const struct GNUNET_IDENTITY_PublicKey * | rp, | ||
const struct GNUNET_RECLAIM_AttributeList * | attrs, | ||
GNUNET_RECLAIM_IssueTicketCallback | cb, | ||
void * | cb_cls | ||
) |
Issues a ticket to a relying party.
The identity may use GNUNET_RECLAIM_ticket_consume to consume the ticket and retrieve the attributes specified in the attribute list.
h | the identity provider to use |
iss | the issuing identity (= the user) |
rp | the subject of the ticket (= the relying party) |
attrs | the attributes that the relying party is given access to |
cb | the callback |
cb_cls | the callback closure |
Issues a ticket to a relying party.
The identity may use to consume the ticket and retrieve the attributes specified in the attribute list.
h | the reclaim to use |
iss | the issuing identity (= the user) |
rp | the subject of the ticket (= the relying party) |
attrs | the attributes that the relying party is given access to |
cb | the callback |
cb_cls | the callback closure |
Definition at line 1542 of file reclaim_api.c.
References IssueTicketMessage::attr_len, GNUNET_RECLAIM_Operation::cls, GNUNET_RECLAIM_Operation::env, GNUNET_CONTAINER_DLL_insert_tail, GNUNET_MESSAGE_TYPE_RECLAIM_ISSUE_TICKET, GNUNET_MQ_msg_extra, GNUNET_MQ_send_copy(), GNUNET_new, GNUNET_RECLAIM_attribute_list_serialize(), GNUNET_RECLAIM_attribute_list_serialize_get_size(), GNUNET_RECLAIM_Operation::h, IssueTicketMessage::id, IssueTicketMessage::identity, GNUNET_RECLAIM_Handle::mq, op, GNUNET_RECLAIM_Handle::op_head, GNUNET_RECLAIM_Handle::op_tail, GNUNET_RECLAIM_Operation::r_id, GNUNET_RECLAIM_Handle::r_id_gen, rp, IssueTicketMessage::rp, and GNUNET_RECLAIM_Operation::ti_cb.
Referenced by iter_finished(), and oidc_cred_collect_finished_cb().
struct GNUNET_RECLAIM_Operation* GNUNET_RECLAIM_ticket_revoke | ( | struct GNUNET_RECLAIM_Handle * | h, |
const struct GNUNET_IDENTITY_PrivateKey * | identity, | ||
const struct GNUNET_RECLAIM_Ticket * | ticket, | ||
GNUNET_RECLAIM_ContinuationWithStatus | cb, | ||
void * | cb_cls | ||
) |
Revoked an issued ticket.
The relying party will be unable to retrieve attributes. Other issued tickets remain unaffected. This includes tickets issued to other relying parties as well as to other tickets issued to the audience specified in this ticket.
h | the identity provider to use |
identity | the issuing identity |
ticket | the ticket to revoke |
cb | the callback |
cb_cls | the callback closure |
Definition at line 1732 of file reclaim_api.c.
References GNUNET_RECLAIM_Operation::cls, GNUNET_RECLAIM_Operation::env, GNUNET_CONTAINER_DLL_insert_tail, GNUNET_MESSAGE_TYPE_RECLAIM_REVOKE_TICKET, GNUNET_MQ_msg, GNUNET_MQ_send(), GNUNET_new, GNUNET_RECLAIM_Operation::h, RevokeTicketMessage::id, identity, RevokeTicketMessage::identity, GNUNET_RECLAIM_Handle::mq, GNUNET_RECLAIM_Operation::msg, op, GNUNET_RECLAIM_Handle::op_head, GNUNET_RECLAIM_Handle::op_tail, GNUNET_RECLAIM_Operation::r_id, GNUNET_RECLAIM_Handle::r_id_gen, GNUNET_RECLAIM_Operation::rvk_cb, ticket, and RevokeTicketMessage::ticket.
Referenced by iter_finished(), and revoke_ticket_cont().
struct GNUNET_RECLAIM_Operation* GNUNET_RECLAIM_ticket_consume | ( | struct GNUNET_RECLAIM_Handle * | h, |
const struct GNUNET_IDENTITY_PrivateKey * | identity, | ||
const struct GNUNET_RECLAIM_Ticket * | ticket, | ||
GNUNET_RECLAIM_AttributeTicketResult | cb, | ||
void * | cb_cls | ||
) |
Consumes an issued ticket.
The ticket is used to retrieve identity information from the issuer
h | the identity provider to use |
identity | the identity that is the subject of the issued ticket (the relying party) |
ticket | the issued ticket to consume |
cb | the callback to call |
cb_cls | the callback closure |
The ticket is persisted and used to retrieve identity information from the issuer
h | the reclaim to use |
identity | the identity that is the subject of the issued ticket (the relying party) |
ticket | the issued ticket to consume |
cb | the callback to call |
cb_cls | the callback closure |
Definition at line 1591 of file reclaim_api.c.
References GNUNET_RECLAIM_Operation::atr_cb, GNUNET_RECLAIM_Operation::cls, GNUNET_RECLAIM_Operation::env, GNUNET_CONTAINER_DLL_insert_tail, GNUNET_MESSAGE_TYPE_RECLAIM_CONSUME_TICKET, GNUNET_MQ_msg, GNUNET_MQ_send_copy(), GNUNET_new, GNUNET_RECLAIM_Operation::h, ConsumeTicketMessage::id, identity, ConsumeTicketMessage::identity, GNUNET_RECLAIM_Handle::mq, op, GNUNET_RECLAIM_Handle::op_head, GNUNET_RECLAIM_Handle::op_tail, GNUNET_RECLAIM_Operation::r_id, GNUNET_RECLAIM_Handle::r_id_gen, reconnect(), ticket, and ConsumeTicketMessage::ticket.
Referenced by consume_ticket_cont(), iter_finished(), and userinfo_endpoint().
struct GNUNET_RECLAIM_TicketIterator* GNUNET_RECLAIM_ticket_iteration_start | ( | struct GNUNET_RECLAIM_Handle * | h, |
const struct GNUNET_IDENTITY_PrivateKey * | identity, | ||
GNUNET_SCHEDULER_TaskCallback | error_cb, | ||
void * | error_cb_cls, | ||
GNUNET_RECLAIM_TicketCallback | proc, | ||
void * | proc_cls, | ||
GNUNET_SCHEDULER_TaskCallback | finish_cb, | ||
void * | finish_cb_cls | ||
) |
Lists all tickets that have been issued to remote identites (relying parties)
h | the identity provider to use |
identity | the issuing identity |
error_cb | function to call on error (i.e. disconnect), the handle is afterwards invalid |
error_cb_cls | closure for error_cb |
proc | function to call on each ticket; it will be called repeatedly with a value (if available) |
proc_cls | closure for proc |
finish_cb | function to call on completion the handle is afterwards invalid |
finish_cb_cls | closure for finish_cb |
h | the reclaim to use |
identity | the issuing identity |
error_cb | function to call on error (i.e. disconnect), the handle is afterwards invalid |
error_cb_cls | closure for error_cb |
proc | function to call on each ticket; it will be called repeatedly with a value (if available) |
proc_cls | closure for proc |
finish_cb | function to call on completion the handle is afterwards invalid |
finish_cb_cls | closure for finish_cb |
Definition at line 1637 of file reclaim_api.c.
References GNUNET_RECLAIM_TicketIterator::cls, GNUNET_RECLAIM_Operation::env, GNUNET_RECLAIM_TicketIterator::env, GNUNET_RECLAIM_TicketIterator::error_cb, error_cb(), GNUNET_RECLAIM_TicketIterator::error_cb_cls, GNUNET_RECLAIM_TicketIterator::finish_cb, GNUNET_RECLAIM_TicketIterator::finish_cb_cls, GNUNET_CONTAINER_DLL_insert_tail, GNUNET_MESSAGE_TYPE_RECLAIM_TICKET_ITERATION_START, GNUNET_MQ_msg, GNUNET_MQ_send(), GNUNET_new, GNUNET_RECLAIM_Operation::h, GNUNET_RECLAIM_TicketIterator::h, TicketIterationStartMessage::id, identity, TicketIterationStartMessage::identity, GNUNET_RECLAIM_Handle::mq, GNUNET_RECLAIM_Operation::msg, GNUNET_RECLAIM_TicketIterator::r_id, GNUNET_RECLAIM_Handle::r_id_gen, GNUNET_RECLAIM_Handle::ticket_it_head, GNUNET_RECLAIM_Handle::ticket_it_tail, and GNUNET_RECLAIM_TicketIterator::tr_cb.
Referenced by list_tickets_cont(), and start_process().
void GNUNET_RECLAIM_ticket_iteration_next | ( | struct GNUNET_RECLAIM_TicketIterator * | it | ) |
Calls the ticket processor specified in GNUNET_RECLAIM_ticket_iteration_start for the next record.
it | the iterator |
Definition at line 1681 of file reclaim_api.c.
References GNUNET_RECLAIM_Operation::env, GNUNET_MESSAGE_TYPE_RECLAIM_TICKET_ITERATION_NEXT, GNUNET_MQ_msg, GNUNET_MQ_send(), GNUNET_RECLAIM_Operation::h, GNUNET_RECLAIM_TicketIterator::h, TicketIterationNextMessage::id, GNUNET_RECLAIM_Handle::mq, GNUNET_RECLAIM_Operation::msg, and GNUNET_RECLAIM_TicketIterator::r_id.
Referenced by ticket_collect(), and ticket_iter().
void GNUNET_RECLAIM_ticket_iteration_stop | ( | struct GNUNET_RECLAIM_TicketIterator * | it | ) |
Stops iteration and releases the handle for further calls.
Must be called on any iteration that has not yet completed prior to calling GNUNET_RECLAIM_disconnect.
it | the iterator |
Definition at line 1701 of file reclaim_api.c.
References GNUNET_RECLAIM_Operation::env, GNUNET_free, GNUNET_MESSAGE_TYPE_RECLAIM_TICKET_ITERATION_STOP, GNUNET_MQ_msg, GNUNET_MQ_send(), GNUNET_RECLAIM_Operation::h, GNUNET_RECLAIM_TicketIterator::h, TicketIterationStopMessage::id, GNUNET_RECLAIM_Handle::mq, GNUNET_RECLAIM_Operation::msg, and GNUNET_RECLAIM_TicketIterator::r_id.
Referenced by cleanup_handle(), and do_cleanup().
void GNUNET_RECLAIM_disconnect | ( | struct GNUNET_RECLAIM_Handle * | h | ) |
Disconnect from identity provider service.
h | identity provider service to disconnect |
Disconnect from identity provider service.
h | handle to destroy |
Definition at line 1104 of file reclaim_api.c.
References GNUNET_assert, GNUNET_free, GNUNET_MQ_destroy(), GNUNET_SCHEDULER_cancel(), GNUNET_RECLAIM_Handle::mq, GNUNET_RECLAIM_Handle::op_head, and GNUNET_RECLAIM_Handle::reconnect_task.
Referenced by do_cleanup(), libgnunet_plugin_rest_openid_connect_done(), and libgnunet_plugin_rest_reclaim_done().
void GNUNET_RECLAIM_cancel | ( | struct GNUNET_RECLAIM_Operation * | op | ) |
Cancel an identity provider operation.
Note that the operation MAY still be executed; this merely cancels the continuation; if the request was already transmitted, the service may still choose to complete the operation.
op | operation to cancel |
Cancel an identity provider operation.
Note that the operation MAY still be executed; this merely cancels the continuation; if the request was already transmitted, the service may still choose to complete the operation.
op | operation to cancel |
Definition at line 1089 of file reclaim_api.c.
References free_op(), GNUNET_CONTAINER_DLL_remove, GNUNET_RECLAIM_Operation::h, GNUNET_RECLAIM_Handle::op_head, and GNUNET_RECLAIM_Handle::op_tail.
Referenced by cleanup_handle(), consume_timeout(), and do_cleanup().