libsignal-protocol-c  master
device_consistency.h
1 #ifndef DEVICE_CONSISTENCY_H
2 #define DEVICE_CONSISTENCY_H
3 
4 #include "signal_protocol_types.h"
5 
6 #ifdef __cplusplus
7 extern "C" {
8 #endif
9 
10 int device_consistency_signature_create(device_consistency_signature **signature,
11  const uint8_t *signature_data, size_t signature_len,
12  const uint8_t *vrf_output_data, size_t vrf_output_len);
13 
14 signal_buffer *device_consistency_signature_get_signature(const device_consistency_signature *signature);
15 signal_buffer *device_consistency_signature_get_vrf_output(const device_consistency_signature *signature);
16 
17 void device_consistency_signature_destroy(signal_type_base *type);
18 
19 int device_consistency_commitment_create(device_consistency_commitment **commitment,
20  uint32_t generation, ec_public_key_list *identity_key_list,
21  signal_context *global_context);
22 
23 uint32_t device_consistency_commitment_get_generation(const device_consistency_commitment *commitment);
24 signal_buffer *device_consistency_commitment_get_serialized(const device_consistency_commitment *commitment);
25 
26 void device_consistency_commitment_destroy(signal_type_base *type);
27 
28 int device_consistency_message_create_from_pair(device_consistency_message **message,
30  ec_key_pair *identity_key_pair,
31  signal_context *global_context);
32 int device_consistency_message_create_from_serialized(device_consistency_message **message,
34  const uint8_t *serialized_data, size_t serialized_len,
35  ec_public_key *identity_key,
36  signal_context *global_context);
37 
38 signal_buffer *device_consistency_message_get_serialized(const device_consistency_message *message);
39 device_consistency_signature *device_consistency_message_get_signature(const device_consistency_message *message);
40 uint32_t device_consistency_signature_get_generation(const device_consistency_message *message);
41 
42 void device_consistency_message_destroy(signal_type_base *type);
43 
44 int device_consistency_code_generate_for(device_consistency_commitment *commitment,
46  char **code_string,
47  signal_context *global_context);
48 
49 device_consistency_signature_list *device_consistency_signature_list_alloc(void);
50 device_consistency_signature_list *device_consistency_signature_list_copy(const device_consistency_signature_list *list);
51 int device_consistency_signature_list_push_back(device_consistency_signature_list *list, device_consistency_signature *value);
52 unsigned int device_consistency_signature_list_size(const device_consistency_signature_list *list);
53 device_consistency_signature *device_consistency_signature_list_at(const device_consistency_signature_list *list, unsigned int index);
54 void device_consistency_signature_list_free(device_consistency_signature_list *list);
55 
56 #ifdef __cplusplus
57 }
58 #endif
59 
60 #endif /* DEVICE_CONSISTENCY_H */
Definition: curve.c:19
Definition: signal_protocol_internal.h:8
Definition: device_consistency.c:13
Definition: signal_protocol_internal.h:23
Definition: signal_protocol_internal.h:18
Definition: device_consistency.c:35
Definition: device_consistency.c:20
Definition: curve.c:38
Definition: curve.c:31
Definition: device_consistency.c:27