libsignal-protocol-c
master
sender_key_state.h
1
#ifndef SENDER_KEY_STATE_H
2
#define SENDER_KEY_STATE_H
3
4
#include <stdint.h>
5
#include "signal_protocol_types.h"
6
7
#ifdef __cplusplus
8
extern
"C"
{
9
#endif
10
11
int
sender_key_state_create(
sender_key_state
**state,
12
uint32_t
id
,
sender_chain_key
*chain_key,
13
ec_public_key
*signature_public_key,
ec_private_key
*signature_private_key,
14
signal_context
*global_context);
15
int
sender_key_state_serialize(
signal_buffer
**buffer,
sender_key_state
*state);
16
int
sender_key_state_deserialize(
sender_key_state
**state,
const
uint8_t *data,
size_t
len,
signal_context
*global_context);
17
int
sender_key_state_copy(
sender_key_state
**state,
sender_key_state
*other_state,
signal_context
*global_context);
18
19
uint32_t sender_key_state_get_key_id(
sender_key_state
*state);
20
sender_chain_key
*sender_key_state_get_chain_key(
sender_key_state
*state);
21
void
sender_key_state_set_chain_key(
sender_key_state
*state,
sender_chain_key
*chain_key);
22
ec_public_key
*sender_key_state_get_signing_key_public(
sender_key_state
*state);
23
ec_private_key
*sender_key_state_get_signing_key_private(
sender_key_state
*state);
24
int
sender_key_state_has_sender_message_key(
sender_key_state
*state, uint32_t iteration);
25
int
sender_key_state_add_sender_message_key(
sender_key_state
*state,
sender_message_key
*message_key);
26
sender_message_key
*sender_key_state_remove_sender_message_key(
sender_key_state
*state, uint32_t iteration);
27
28
void
sender_key_state_destroy(
signal_type_base
*type);
29
30
#ifdef __cplusplus
31
}
32
#endif
33
34
#endif
/* SENDER_KEY_STATE_H */
ec_public_key
Definition:
curve.c:19
signal_type_base
Definition:
signal_protocol_internal.h:8
sender_key_state
Definition:
sender_key_state.c:19
sender_message_key
Definition:
sender_key.c:11
signal_context
Definition:
signal_protocol_internal.h:23
signal_buffer
Definition:
signal_protocol_internal.h:18
sender_chain_key
Definition:
sender_key.c:20
ec_private_key
Definition:
curve.c:25
src
sender_key_state.h
Generated by
1.8.13