libsignal-protocol-c
master
session_cipher.h
1
#ifndef SESSION_CIPHER_H
2
#define SESSION_CIPHER_H
3
4
#include <stdint.h>
5
#include <stddef.h>
6
#include "signal_protocol_types.h"
7
8
#ifdef __cplusplus
9
extern
"C"
{
10
#endif
11
36
int
session_cipher_create(
session_cipher
**cipher,
37
signal_protocol_store_context
*store,
const
signal_protocol_address
*remote_address,
38
signal_context
*global_context);
39
46
void
session_cipher_set_user_data(
session_cipher
*cipher,
void
*user_data);
47
54
void
*session_cipher_get_user_data(
session_cipher
*cipher);
55
73
void
session_cipher_set_decryption_callback(
session_cipher
*cipher,
74
int
(*callback)(
session_cipher
*cipher,
signal_buffer
*plaintext,
void
*decrypt_context));
75
85
int
session_cipher_encrypt(
session_cipher
*cipher,
86
const
uint8_t *padded_message,
size_t
padded_message_len,
87
ciphertext_message
**encrypted_message);
88
107
int
session_cipher_decrypt_pre_key_signal_message(
session_cipher
*cipher,
108
pre_key_signal_message
*ciphertext,
void
*decrypt_context,
109
signal_buffer
**plaintext);
110
126
int
session_cipher_decrypt_signal_message(
session_cipher
*cipher,
127
signal_message
*ciphertext,
void
*decrypt_context,
128
signal_buffer
**plaintext);
129
137
int
session_cipher_get_remote_registration_id(
session_cipher
*cipher, uint32_t *remote_id);
138
147
int
session_cipher_get_session_version(
session_cipher
*cipher, uint32_t *version);
148
149
void
session_cipher_free(
session_cipher
*cipher);
150
151
#ifdef __cplusplus
152
}
153
#endif
154
155
#endif
/* SESSION_CIPHER_H */
signal_protocol_store_context
Definition:
signal_protocol.c:25
signal_context
Definition:
signal_protocol_internal.h:23
signal_buffer
Definition:
signal_protocol_internal.h:18
signal_message
Definition:
protocol.c:21
ciphertext_message
Definition:
protocol.c:13
signal_protocol_address
Definition:
signal_protocol_types.h:39
pre_key_signal_message
Definition:
protocol.c:31
session_cipher
Definition:
session_cipher.c:13
src
session_cipher.h
Generated by
1.8.13