Aranya
Loading...
Searching...
No Matches
aranya-client.h
Go to the documentation of this file.
1/*
2 * Copyright (c) SpiderOak, Inc. All rights reserved.
3 */
11#ifndef ARANYA_H
12#define ARANYA_H
13
14#pragma once
15
16/* Code generated by `capi`. DO NOT EDIT. */
17
18#include <stdint.h>
19#include <stdbool.h>
20#include <stddef.h>
21#include <sys/socket.h>
22
23#ifndef __has_attribute
24 #define __has_attribute(x) 0
25#endif /* __has_attribute */
26
27#if !defined(ARANYA_ALIGNED)
28 #if __has_attribute(aligned)
29 #define ARANYA_ALIGNED(n) __attribute__((aligned(n)))
30 #else
31 #error "compiler must support `aligned` attribute"
32 #endif
33#endif /* ARANYA_ALIGNED */
34
35#if !defined(ARANYA_DESIGNATED_INIT)
36 #if __has_attribute(designated_init)
37 #define ARANYA_DESIGNATED_INIT __attribute__((designated_init))
38 #else
39 #define ARANYA_DESIGNATED_INIT
40 #endif
41#endif /* ARANYA_DESIGNATED_INIT */
42
43#if !defined(ARANYA_MUST_USE)
44 #if __has_attribute(warn_unused_result)
45 #define ARANYA_MUST_USE __attribute__((warn_unused_result))
46 #else
47 #define ARANYA_MUST_USE
48 #endif
49#endif /* ARANYA_MUST_USE */
50
51#if !defined(ARANYA_NO_RETURN)
52 #if __has_attribute(noreturn)
53 #define ARANYA_NO_RETURN __attribute__((noreturn))
54 #else
55 #define ARANYA_NO_RETURN
56 #endif
57#endif /* ARANYA_NO_RETURN */
58
59#if !defined(ARANYA_NON_NULL)
60 #if defined(__gnu__)
61 #if __has_attribute(nonnull)
62 #define ARANYA_NON_NULL __attribute__((nonnull))
63 #endif
64 #elif defined(__clang__)
65 #define ARANYA_NON_NULL _Nonnull
66 #else
67 #define ARANYA_NON_NULL
68 #endif
69#endif /* ARANYA_NON_NULL */
70
71#if !defined(ARANYA_PACKED)
72 #if __has_attribute(packed)
73 #define ARANYA_PACKED __attribute__((packed))
74 #else
75 #define ARANYA_PACKED
76 #endif
77#endif /* ARANYA_PACKED */
78
79
80#define ARANYA_DURATION_SECONDS (1000 * ARANYA_DURATION_MILLISECONDS)
81
82#define ARANYA_DURATION_MILLISECONDS (1000 * ARANYA_DURATION_MICROSECONDS)
83
84#define ARANYA_DURATION_MICROSECONDS (1000 * ARANYA_DURATION_NANOSECONDS)
85
86#define ARANYA_DURATION_NANOSECONDS 1
87
156#ifndef __cplusplus
157typedef uint32_t AranyaError;
158#endif // __cplusplus
159
164#ifdef __cplusplus
165 : uint8_t
166#endif // __cplusplus
167 {
184};
185#ifndef __cplusplus
186typedef uint8_t AranyaRole;
187#endif // __cplusplus
188
192typedef struct ARANYA_ALIGNED(8) AranyaExtError {
198 uint8_t __for_size_only[72];
200
204typedef struct ARANYA_ALIGNED(16) AranyaClient {
210 uint8_t __for_size_only[2624];
212
216typedef struct ARANYA_DESIGNATED_INIT AranyaAfcConfig {
220 const char *shm_path;
228 const char *addr;
230
234typedef struct ARANYA_DESIGNATED_INIT AranyaClientConfig {
238 const char *daemon_sock;
242 struct AranyaAfcConfig afc;
244
248typedef struct ARANYA_DESIGNATED_INIT AranyaKeyBundle {
252 const uint8_t *ident_key;
260 const uint8_t *sign_key;
268 const uint8_t *enc_key;
274
278typedef struct ARANYA_ALIGNED(1) AranyaDeviceId {
284 uint8_t __for_size_only[64];
286
290typedef struct ARANYA_ALIGNED(1) AranyaTeamId {
296 uint8_t __for_size_only[64];
298
304typedef const char *AranyaAddr;
305
309typedef uint64_t AranyaDuration;
310
316typedef const char *AranyaNetIdentifier;
317
321typedef uint32_t AranyaLabel;
322
326typedef struct ARANYA_ALIGNED(1) AranyaChannelId {
332 uint8_t __for_size_only[16];
334
338typedef struct sockaddr_storage AranyaSocketAddr;
339
357
358#ifdef __cplusplus
359extern "C" {
360#endif // __cplusplus
361
371const char *aranya_error_to_str(uint32_t err);
372
382
392 struct AranyaExtError *__ext_err);
393
402
411 struct AranyaExtError *__ext_err);
412
433 char *msg,
434 size_t *msg_len);
435
456 char *msg,
457 size_t *msg_len,
458 struct AranyaExtError *__ext_err);
459
467
475
484
493 struct AranyaExtError *__ext_err);
494
504 const struct AranyaClientConfig *config);
505
515 const struct AranyaClientConfig *config,
516 struct AranyaExtError *__ext_err);
517
527 struct AranyaKeyBundle *__output);
528
538 struct AranyaKeyBundle *__output,
539 struct AranyaExtError *__ext_err);
540
550 struct AranyaDeviceId *__output);
551
561 struct AranyaDeviceId *__output,
562 struct AranyaExtError *__ext_err);
563
573 struct AranyaTeamId *__output);
574
584 struct AranyaTeamId *__output,
585 struct AranyaExtError *__ext_err);
586
596 const struct AranyaTeamId *team);
597
607 const struct AranyaTeamId *team,
608 struct AranyaExtError *__ext_err);
609
619 const struct AranyaTeamId *team);
620
630 const struct AranyaTeamId *team,
631 struct AranyaExtError *__ext_err);
632
648 const struct AranyaTeamId *team,
649 AranyaAddr addr,
650 AranyaDuration interval);
651
667 const struct AranyaTeamId *team,
668 AranyaAddr addr,
669 AranyaDuration interval,
670 struct AranyaExtError *__ext_err);
671
682 const struct AranyaTeamId *team,
683 AranyaAddr addr);
684
695 const struct AranyaTeamId *team,
696 AranyaAddr addr,
697 struct AranyaExtError *__ext_err);
698
708 const struct AranyaTeamId *team);
709
719 const struct AranyaTeamId *team,
720 struct AranyaExtError *__ext_err);
721
734 const struct AranyaTeamId *team,
735 const struct AranyaKeyBundle *keys);
736
749 const struct AranyaTeamId *team,
750 const struct AranyaKeyBundle *keys,
751 struct AranyaExtError *__ext_err);
752
765 const struct AranyaTeamId *team,
766 const struct AranyaDeviceId *device);
767
780 const struct AranyaTeamId *team,
781 const struct AranyaDeviceId *device,
782 struct AranyaExtError *__ext_err);
783
799 const struct AranyaTeamId *team,
800 const struct AranyaDeviceId *device,
801 AranyaRole role);
802
818 const struct AranyaTeamId *team,
819 const struct AranyaDeviceId *device,
820 AranyaRole role,
821 struct AranyaExtError *__ext_err);
822
836 const struct AranyaTeamId *team,
837 const struct AranyaDeviceId *device,
838 AranyaRole role);
839
853 const struct AranyaTeamId *team,
854 const struct AranyaDeviceId *device,
855 AranyaRole role,
856 struct AranyaExtError *__ext_err);
857
875 const struct AranyaTeamId *team,
876 const struct AranyaDeviceId *device,
877 AranyaNetIdentifier net_identifier);
878
896 const struct AranyaTeamId *team,
897 const struct AranyaDeviceId *device,
898 AranyaNetIdentifier net_identifier,
899 struct AranyaExtError *__ext_err);
900
914 const struct AranyaTeamId *team,
915 const struct AranyaDeviceId *device,
916 AranyaNetIdentifier net_identifier);
917
931 const struct AranyaTeamId *team,
932 const struct AranyaDeviceId *device,
933 AranyaNetIdentifier net_identifier,
934 struct AranyaExtError *__ext_err);
935
948 const struct AranyaTeamId *team,
949 AranyaLabel label);
950
963 const struct AranyaTeamId *team,
964 AranyaLabel label,
965 struct AranyaExtError *__ext_err);
966
979 const struct AranyaTeamId *team,
980 AranyaLabel label);
981
994 const struct AranyaTeamId *team,
995 AranyaLabel label,
996 struct AranyaExtError *__ext_err);
997
1011 const struct AranyaTeamId *team,
1012 const struct AranyaDeviceId *device,
1013 AranyaLabel label);
1014
1028 const struct AranyaTeamId *team,
1029 const struct AranyaDeviceId *device,
1030 AranyaLabel label,
1031 struct AranyaExtError *__ext_err);
1032
1046 const struct AranyaTeamId *team,
1047 const struct AranyaDeviceId *device,
1048 AranyaLabel label);
1049
1063 const struct AranyaTeamId *team,
1064 const struct AranyaDeviceId *device,
1065 AranyaLabel label,
1066 struct AranyaExtError *__ext_err);
1067
1085 const struct AranyaTeamId *team,
1087 AranyaLabel label,
1088 struct AranyaChannelId *__output);
1089
1107 const struct AranyaTeamId *team,
1109 AranyaLabel label,
1110 struct AranyaChannelId *__output,
1111 struct AranyaExtError *__ext_err);
1112
1122 struct AranyaChannelId chan);
1123
1133 struct AranyaChannelId chan,
1134 struct AranyaExtError *__ext_err);
1135
1147 AranyaDuration timeout);
1148
1160 AranyaDuration timeout,
1161 struct AranyaExtError *__ext_err);
1162
1174 struct AranyaChannelId chan,
1175 const uint8_t *data,
1176 size_t data_len);
1177
1189 struct AranyaChannelId chan,
1190 const uint8_t *data,
1191 size_t data_len,
1192 struct AranyaExtError *__ext_err);
1193
1205 uint8_t *buf,
1206 size_t *buf_len,
1207 struct AranyaAfcMsgInfo *info);
1208
1220 uint8_t *buf,
1221 size_t *buf_len,
1222 struct AranyaAfcMsgInfo *info,
1223 struct AranyaExtError *__ext_err);
1224
1225#ifdef __cplusplus
1226} // extern "C"
1227#endif // __cplusplus
1228
1229#endif /* ARANYA_H */
1230
1231
struct AranyaAfcConfig AranyaAfcConfig
Aranya Fast Channels (AFC) config.
struct AranyaClientConfig AranyaClientConfig
Aranya client configuration.
struct AranyaTeamId AranyaTeamId
Team ID.
uint64_t AranyaDuration
A type to represent a span of time.
Definition aranya-client.h:309
const char * AranyaAddr
A network socket address for an Aranya client.
Definition aranya-client.h:304
AranyaError aranya_init_logging(void)
Initializes logging.
uint32_t AranyaLabel
Label is an Aranya Fast Channel label.
Definition aranya-client.h:321
struct AranyaAfcMsgInfo AranyaAfcMsgInfo
Aranya Fast Channels (AFC) message info.
const char * AranyaNetIdentifier
A network identifier for an Aranya client.
Definition aranya-client.h:316
AranyaError aranya_init_logging_ext(struct AranyaExtError *__ext_err)
Initializes logging.
struct AranyaChannelId AranyaChannelId
Channel ID for a fast channel.
struct AranyaKeyBundle AranyaKeyBundle
Public Key bundle for a device.
struct AranyaExtError AranyaExtError
Extended error information.
AranyaError
An error code.
Definition aranya-client.h:97
@ ARANYA_ERROR_INVALID_ARGUMENT
Invalid argument.
Definition aranya-client.h:117
@ ARANYA_ERROR_AFC_SHM
AFC shared memory error.
Definition aranya-client.h:149
@ ARANYA_ERROR_DAEMON
Daemon reported error.
Definition aranya-client.h:145
@ ARANYA_ERROR_INVALID_UTF8
Invalid UTF-8.
Definition aranya-client.h:125
@ ARANYA_ERROR_TIMEOUT
Timed out.
Definition aranya-client.h:109
@ ARANYA_ERROR_BUFFER_TOO_SMALL
Buffer is too small.
Definition aranya-client.h:121
@ ARANYA_ERROR_BUG
Internal bug discovered.
Definition aranya-client.h:105
@ ARANYA_ERROR_CONNECTING
Error connecting to daemon.
Definition aranya-client.h:133
@ ARANYA_ERROR_INVALID_ADDR
Invalid Address.
Definition aranya-client.h:129
@ ARANYA_ERROR_LOG_INIT
Logging initialization failure.
Definition aranya-client.h:113
@ ARANYA_ERROR_SUCCESS
Success.
Definition aranya-client.h:101
@ ARANYA_ERROR_AFC
AFC library error.
Definition aranya-client.h:153
@ ARANYA_ERROR_AFC_ROUTER
AFC router error.
Definition aranya-client.h:137
@ ARANYA_ERROR_RPC
Could not send request to daemon.
Definition aranya-client.h:141
struct AranyaDeviceId AranyaDeviceId
Device ID.
struct sockaddr_storage AranyaSocketAddr
Network socket address.
Definition aranya-client.h:338
struct AranyaClient AranyaClient
A handle to an Aranya Client.
AranyaRole
An enum containing team roles defined in the Aranya policy.
Definition aranya-client.h:167
@ ARANYA_ROLE_ADMIN
Admin role.
Definition aranya-client.h:175
@ ARANYA_ROLE_OWNER
Owner role.
Definition aranya-client.h:171
@ ARANYA_ROLE_MEMBER
Member role.
Definition aranya-client.h:183
@ ARANYA_ROLE_OPERATOR
Operator role.
Definition aranya-client.h:179
Aranya Fast Channels (AFC) config.
Definition aranya-client.h:216
const char * shm_path
Shared memory path.
Definition aranya-client.h:220
size_t max_channels
Maximum number of channels to store in shared-memory.
Definition aranya-client.h:224
const char * addr
Address to bind AFC server to.
Definition aranya-client.h:228
Aranya Fast Channels (AFC) message info.
Definition aranya-client.h:343
AranyaSocketAddr addr
Peer's network socket address.
Definition aranya-client.h:355
struct AranyaChannelId channel
AFC channel ID.
Definition aranya-client.h:347
AranyaLabel label
AFC channel label.
Definition aranya-client.h:351
Channel ID for a fast channel.
Definition aranya-client.h:326
Aranya client configuration.
Definition aranya-client.h:234
const char * daemon_sock
Daemon API unix domain socket path.
Definition aranya-client.h:238
A handle to an Aranya Client.
Definition aranya-client.h:204
AranyaError aranya_client_cleanup_ext(struct AranyaClient *ptr, struct AranyaExtError *__ext_err)
Releases any resources associated with ptr.
AranyaError aranya_revoke_label(struct AranyaClient *client, const struct AranyaTeamId *team, const struct AranyaDeviceId *device, AranyaLabel label)
Revoke an AFC label from a device.
AranyaError aranya_send_data(struct AranyaClient *client, struct AranyaChannelId chan, const uint8_t *data, size_t data_len)
Send Aranya Fast Channels (AFC) data.
AranyaError aranya_poll_data_ext(struct AranyaClient *client, AranyaDuration timeout, struct AranyaExtError *__ext_err)
Poll for new Aranya Fast Channels (AFC) data.
AranyaError aranya_revoke_role_ext(struct AranyaClient *client, const struct AranyaTeamId *team, const struct AranyaDeviceId *device, AranyaRole role, struct AranyaExtError *__ext_err)
Revoke a role from a device.
AranyaError aranya_recv_data(struct AranyaClient *client, uint8_t *buf, size_t *buf_len, struct AranyaAfcMsgInfo *info)
Receive Aranya Fast Channels (AFC) data.
AranyaError aranya_remove_net_identifier_ext(struct AranyaClient *client, const struct AranyaTeamId *team, const struct AranyaDeviceId *device, AranyaNetIdentifier net_identifier, struct AranyaExtError *__ext_err)
Disassociate a network identifier from a device.
AranyaError aranya_delete_label_ext(struct AranyaClient *client, const struct AranyaTeamId *team, AranyaLabel label, struct AranyaExtError *__ext_err)
Delete an AFC label.
AranyaError aranya_add_device_to_team(struct AranyaClient *client, const struct AranyaTeamId *team, const struct AranyaKeyBundle *keys)
Add a device to the team with the default role.
AranyaError aranya_recv_data_ext(struct AranyaClient *client, uint8_t *buf, size_t *buf_len, struct AranyaAfcMsgInfo *info, struct AranyaExtError *__ext_err)
Receive Aranya Fast Channels (AFC) data.
AranyaError aranya_close_team(struct AranyaClient *client, const struct AranyaTeamId *team)
Close the team and stop all operations on the graph.
AranyaError aranya_create_label(struct AranyaClient *client, const struct AranyaTeamId *team, AranyaLabel label)
Create an AFC label.
AranyaError aranya_delete_channel(struct AranyaClient *client, struct AranyaChannelId chan)
Delete an Aranya Fast Channel (AFC).
AranyaError aranya_close_team_ext(struct AranyaClient *client, const struct AranyaTeamId *team, struct AranyaExtError *__ext_err)
Close the team and stop all operations on the graph.
AranyaError aranya_assign_role_ext(struct AranyaClient *client, const struct AranyaTeamId *team, const struct AranyaDeviceId *device, AranyaRole role, struct AranyaExtError *__ext_err)
Assign a role to a device.
AranyaError aranya_remove_team(struct AranyaClient *client, const struct AranyaTeamId *team)
Remove a team from the local device store.
AranyaError aranya_client_cleanup(struct AranyaClient *ptr)
Releases any resources associated with ptr.
AranyaError aranya_assign_net_identifier(struct AranyaClient *client, const struct AranyaTeamId *team, const struct AranyaDeviceId *device, AranyaNetIdentifier net_identifier)
Associate a network identifier to a device for use with AFC.
AranyaError aranya_create_team_ext(struct AranyaClient *client, struct AranyaTeamId *__output, struct AranyaExtError *__ext_err)
Create a new graph/team with the current device as the owner.
AranyaError aranya_send_data_ext(struct AranyaClient *client, struct AranyaChannelId chan, const uint8_t *data, size_t data_len, struct AranyaExtError *__ext_err)
Send Aranya Fast Channels (AFC) data.
AranyaError aranya_remove_team_ext(struct AranyaClient *client, const struct AranyaTeamId *team, struct AranyaExtError *__ext_err)
Remove a team from the local device store.
AranyaError aranya_get_key_bundle_ext(struct AranyaClient *client, struct AranyaKeyBundle *__output, struct AranyaExtError *__ext_err)
Gets the public key bundle for this device.
AranyaError aranya_add_device_to_team_ext(struct AranyaClient *client, const struct AranyaTeamId *team, const struct AranyaKeyBundle *keys, struct AranyaExtError *__ext_err)
Add a device to the team with the default role.
AranyaError aranya_create_team(struct AranyaClient *client, struct AranyaTeamId *__output)
Create a new graph/team with the current device as the owner.
AranyaError aranya_client_init(struct AranyaClient *client, const struct AranyaClientConfig *config)
Initializes a new client instance.
AranyaError aranya_add_team(struct AranyaClient *client, const struct AranyaTeamId *team)
Add a team to the local device store.
AranyaError aranya_get_key_bundle(struct AranyaClient *client, struct AranyaKeyBundle *__output)
Gets the public key bundle for this device.
AranyaError aranya_create_bidi_channel_ext(struct AranyaClient *client, const struct AranyaTeamId *team, AranyaNetIdentifier peer, AranyaLabel label, struct AranyaChannelId *__output, struct AranyaExtError *__ext_err)
Create an Aranya Fast Channel (AFC).
AranyaError aranya_delete_label(struct AranyaClient *client, const struct AranyaTeamId *team, AranyaLabel label)
Delete an AFC label.
AranyaError aranya_remove_net_identifier(struct AranyaClient *client, const struct AranyaTeamId *team, const struct AranyaDeviceId *device, AranyaNetIdentifier net_identifier)
Disassociate a network identifier from a device.
AranyaError aranya_revoke_role(struct AranyaClient *client, const struct AranyaTeamId *team, const struct AranyaDeviceId *device, AranyaRole role)
Revoke a role from a device.
AranyaError aranya_assign_role(struct AranyaClient *client, const struct AranyaTeamId *team, const struct AranyaDeviceId *device, AranyaRole role)
Assign a role to a device.
AranyaError aranya_assign_net_identifier_ext(struct AranyaClient *client, const struct AranyaTeamId *team, const struct AranyaDeviceId *device, AranyaNetIdentifier net_identifier, struct AranyaExtError *__ext_err)
Associate a network identifier to a device for use with AFC.
AranyaError aranya_poll_data(struct AranyaClient *client, AranyaDuration timeout)
Poll for new Aranya Fast Channels (AFC) data.
AranyaError aranya_delete_channel_ext(struct AranyaClient *client, struct AranyaChannelId chan, struct AranyaExtError *__ext_err)
Delete an Aranya Fast Channel (AFC).
AranyaError aranya_revoke_label_ext(struct AranyaClient *client, const struct AranyaTeamId *team, const struct AranyaDeviceId *device, AranyaLabel label, struct AranyaExtError *__ext_err)
Revoke an AFC label from a device.
AranyaError aranya_assign_label(struct AranyaClient *client, const struct AranyaTeamId *team, const struct AranyaDeviceId *device, AranyaLabel label)
Assign an AFC label to a device so that it can be used for an AFC channel.
AranyaError aranya_remove_device_from_team(struct AranyaClient *client, const struct AranyaTeamId *team, const struct AranyaDeviceId *device)
Remove a device from the team.
AranyaError aranya_remove_device_from_team_ext(struct AranyaClient *client, const struct AranyaTeamId *team, const struct AranyaDeviceId *device, struct AranyaExtError *__ext_err)
Remove a device from the team.
AranyaError aranya_remove_sync_peer(struct AranyaClient *client, const struct AranyaTeamId *team, AranyaAddr addr)
Remove the peer from automatic Aranya state syncing.
AranyaError aranya_add_sync_peer_ext(struct AranyaClient *client, const struct AranyaTeamId *team, AranyaAddr addr, AranyaDuration interval, struct AranyaExtError *__ext_err)
Add the peer for automatic periodic Aranya state syncing.
AranyaError aranya_create_label_ext(struct AranyaClient *client, const struct AranyaTeamId *team, AranyaLabel label, struct AranyaExtError *__ext_err)
Create an AFC label.
AranyaError aranya_add_team_ext(struct AranyaClient *client, const struct AranyaTeamId *team, struct AranyaExtError *__ext_err)
Add a team to the local device store.
AranyaError aranya_get_device_id_ext(struct AranyaClient *client, struct AranyaDeviceId *__output, struct AranyaExtError *__ext_err)
Gets the public device ID.
AranyaError aranya_client_init_ext(struct AranyaClient *client, const struct AranyaClientConfig *config, struct AranyaExtError *__ext_err)
Initializes a new client instance.
AranyaError aranya_get_device_id(struct AranyaClient *client, struct AranyaDeviceId *__output)
Gets the public device ID.
AranyaError aranya_remove_sync_peer_ext(struct AranyaClient *client, const struct AranyaTeamId *team, AranyaAddr addr, struct AranyaExtError *__ext_err)
Remove the peer from automatic Aranya state syncing.
AranyaError aranya_create_bidi_channel(struct AranyaClient *client, const struct AranyaTeamId *team, AranyaNetIdentifier peer, AranyaLabel label, struct AranyaChannelId *__output)
Create an Aranya Fast Channel (AFC).
AranyaError aranya_assign_label_ext(struct AranyaClient *client, const struct AranyaTeamId *team, const struct AranyaDeviceId *device, AranyaLabel label, struct AranyaExtError *__ext_err)
Assign an AFC label to a device so that it can be used for an AFC channel.
AranyaError aranya_add_sync_peer(struct AranyaClient *client, const struct AranyaTeamId *team, AranyaAddr addr, AranyaDuration interval)
Add the peer for automatic periodic Aranya state syncing.
Device ID.
Definition aranya-client.h:278
Extended error information.
Definition aranya-client.h:192
AranyaError aranya_ext_error_msg_ext(const struct AranyaExtError *err, char *msg, size_t *msg_len, struct AranyaExtError *__ext_err)
Copies the extended error's message into msg.
AranyaError aranya_ext_error_init(struct AranyaExtError *out)
Initializes AranyaExtError.
AranyaError aranya_ext_error_msg(const struct AranyaExtError *err, char *msg, size_t *msg_len)
Copies the extended error's message into msg.
AranyaError aranya_ext_error_init_ext(struct AranyaExtError *out, struct AranyaExtError *__ext_err)
Initializes AranyaExtError.
AranyaError aranya_ext_error_cleanup(struct AranyaExtError *ptr)
Releases any resources associated with ptr.
AranyaError aranya_ext_error_cleanup_ext(struct AranyaExtError *ptr, struct AranyaExtError *__ext_err)
Releases any resources associated with ptr.
Public Key bundle for a device.
Definition aranya-client.h:248
size_t ident_key_len
Public identity key length.
Definition aranya-client.h:256
size_t enc_key_len
Public encryption key length.
Definition aranya-client.h:272
const uint8_t * enc_key
Public encryption key.
Definition aranya-client.h:268
size_t sign_key_len
Public signing key length.
Definition aranya-client.h:264
const uint8_t * sign_key
Public signing key.
Definition aranya-client.h:260
const uint8_t * ident_key
Public identity key.
Definition aranya-client.h:252
Team ID.
Definition aranya-client.h:290