table of contents
- Tumbleweed 20260905-1.1
- Leap-16.0
- Leap-15.6
| LIBCAES(3) | Library Functions Manual | LIBCAES(3) |
NAME¶
libcaes.h —
Library to support cross-platform AES encryption
SYNOPSIS¶
#include
<libcaes.h>
Support functions
const char *
libcaes_get_version( void);
Error functions
void
libcaes_error_free( libcaes_error_t **error);
int
libcaes_error_fprint( libcaes_error_t *error, FILE *stream);
int
libcaes_error_sprint( libcaes_error_t *error, char *string, size_t size);
int
libcaes_error_backtrace_fprint( libcaes_error_t *error, FILE *stream);
int
libcaes_error_backtrace_sprint( libcaes_error_t *error, char *string, size_t size);
Context functions
int
libcaes_context_initialize( libcaes_context_t **context, libcaes_error_t **error);
int
libcaes_context_free( libcaes_context_t **context, libcaes_error_t **error);
int
libcaes_context_set_key( libcaes_context_t *context, int mode, const uint8_t *key, size_t key_bit_size, libcaes_error_t **error);
int
libcaes_crypt_cbc( libcaes_context_t *context, int mode, const uint8_t *initialization_vector, size_t initialization_vector_size, const uint8_t *input_data, size_t input_data_size, uint8_t *output_data, size_t output_data_size, libcaes_error_t **error);
int
libcaes_crypt_ccm_ctr_only( libcaes_context_t *context, int mode, const uint8_t *nonce, size_t nonce_size, const uint8_t *input_data, size_t input_data_size, uint8_t *output_data, size_t output_data_size, libcaes_error_t **error);
int
libcaes_crypt_ecb( libcaes_context_t *context, int mode, const uint8_t *input_data, size_t input_data_size, uint8_t *output_data, size_t output_data_size, libcaes_error_t **error);
Tweaked context functions
int
libcaes_tweaked_context_initialize( libcaes_tweaked_context_t **tweaked_context, libcaes_error_t **error);
int
libcaes_tweaked_context_free( libcaes_tweaked_context_t **tweaked_context, libcaes_error_t **error);
int
libcaes_tweaked_context_set_keys( libcaes_tweaked_context_t *tweaked_context, int mode, const uint8_t *key, size_t key_bit_size, const uint8_t *tweak_key, size_t tweak_key_bit_size, libcaes_error_t **error);
int
libcaes_crypt_xts( libcaes_tweaked_context_t *tweaked_context, int mode, const uint8_t *tweak_value, size_t tweak_value_size, const uint8_t *input_data, size_t input_data_size, uint8_t *output_data, size_t output_data_size, libcaes_error_t **error);
DESCRIPTION¶
The
libcaes_get_version()
function is used to retrieve the library version.
RETURN VALUES¶
Most of the functions return NULL or -1 on error, dependent on the
return type. For the actual return values see
<libcaes.h>.
ENVIRONMENT¶
None
FILES¶
None
SEE ALSO¶
AUTHORS¶
Joachim Metz <joachim.metz@gmail.com>
BUGS¶
Please report bugs of any kind on the project issue tracker: https://github.com/libyal/libcaes/issues
COPYRIGHT¶
Copyright (C) 2011-2026, Joachim Metz <joachim.metz@gmail.com>.
This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
| September 5, 2026 | Linux 6.12.0-160000.37-default |