52#ifndef UDIF_CAPSTORE_H
53#define UDIF_CAPSTORE_H
71#define UDIF_CAPSTORE_CAPACITY 128U
UDIF capability token management.
udif_capstore_status
Runtime status for a stored capability token.
Definition capstore.h:77
@ udif_capstore_status_expired
Definition capstore.h:81
@ udif_capstore_status_revoked
Definition capstore.h:80
@ udif_capstore_status_active
Definition capstore.h:79
@ udif_capstore_status_unknown
Definition capstore.h:78
UDIF_EXPORT_API bool udif_capstore_set_status(udif_capstore *store, const uint8_t *digest, udif_capstore_status status)
Set the runtime status of a stored capability token.
Definition capstore.c:210
UDIF_EXPORT_API udif_errors udif_capstore_add(udif_capstore *store, const udif_capability *capability)
Add a capability token to the store without external verification.
Definition capstore.c:70
UDIF_EXPORT_API const udif_capability * udif_capstore_find_any(const udif_capstore *store, const uint8_t *digest)
Find a capability token by digest regardless of runtime status.
Definition capstore.c:173
#define UDIF_CAPSTORE_CAPACITY
Maximum number of capability tokens retained in one entity context.
Definition capstore.h:71
UDIF_EXPORT_API bool udif_capstore_remove(udif_capstore *store, const uint8_t *digest)
Remove a capability token from the store.
Definition capstore.c:227
UDIF_EXPORT_API void udif_capstore_clear(udif_capstore *store)
Clear a capability-token store.
Definition capstore.c:60
UDIF_EXPORT_API udif_errors udif_capstore_add_verified(udif_capstore *store, const udif_capability *capability, const uint8_t *issuerkey, uint64_t nowsecs)
Verify and add a capability token to the store.
Definition capstore.c:125
UDIF_EXPORT_API const udif_capability * udif_capstore_find(const udif_capstore *store, const uint8_t *digest)
Find an active capability token by digest.
Definition capstore.c:154
UDIF_EXPORT_API void udif_capstore_initialize(udif_capstore *store)
Initialize a capability-token store.
Definition capstore.c:50
UDIF_EXPORT_API udif_capstore_status udif_capstore_get_status(const udif_capstore *store, const uint8_t *digest, uint64_t nowsecs)
Get the runtime status of a stored capability token.
Definition capstore.c:189
Capability token.
Definition capability.h:574
Single stored capability-token entry.
Definition capstore.h:88
udif_capability capability
Definition capstore.h:89
udif_capstore_status status
Definition capstore.h:90
bool used
Definition capstore.h:91
Fixed-capacity capability-token table.
Definition capstore.h:98
udif_capstore_entry entries[UDIF_CAPSTORE_CAPACITY]
Definition capstore.h:99
size_t count
Definition capstore.h:100
UDIF Common Definitions and Protocol Configuration.
udif_errors
UDIF error codes.
Definition udif.h:1210
#define UDIF_EXPORT_API
The api export prefix.
Definition udifcommon.h:101