Provided by: libcaes-dev_0~20240413-1build1_amd64 bug

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(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

BUGS

       Please report bugs of any kind on the project issue tracker: https://github.com/libyal/libcaes/issues

AUTHOR

       These man pages are generated from "libcaes.h".

COPYRIGHT

       Copyright (C) 2011-2024, 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.

SEE ALSO

       the libcaes.h include file

libcaes                                          March 18, 2019                                       libcaes(3)