Macros | Typedefs | Functions | Variables
crypto_openssl.h File Reference
#include <openssl/evp.h>
#include <openssl/hmac.h>
#include <openssl/md5.h>
#include <openssl/sha.h>
Include dependency graph for crypto_openssl.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.


 Maximum length of an IV. More...
 Cipher is in CBC mode. More...
 Cipher is in OFB mode. More...
 Cipher is in CFB mode. More...
 Cipher is in GCM mode. More...
 Cipher should encrypt. More...
 Cipher should decrypt. More...
#define DES_KEY_LENGTH   8
#define MD4_DIGEST_LENGTH   16
#define crypto_msg(flags, ...)
 Retrieve any OpenSSL errors, then print the supplied error message. More...


typedef EVP_CIPHER_CTX cipher_ctx_t
 Generic cipher context. More...
typedef EVP_MD_CTX md_ctx_t
 Generic message digest context. More...
typedef HMAC_CTX hmac_ctx_t
 Generic HMAC context. More...
typedef void provider_t


void crypto_print_openssl_errors (const unsigned int flags)
 Retrieve any occurred OpenSSL errors and print those errors. More...


const typedef EVP_CIPHER evp_cipher_type
const typedef EVP_MD evp_md_type

Macro Definition Documentation

◆ crypto_msg

#define crypto_msg (   flags,
do { \
crypto_print_openssl_errors(nonfatal(flags)); \
msg((flags), __VA_ARGS__); \
} while (false)

Retrieve any OpenSSL errors, then print the supplied error message.

This is just a convenience wrapper for often occurring situations.

flagsFlags to indicate error type and priority.
formatFormat string to print.
formatargs (optional) arguments for the format string.

Definition at line 115 of file crypto_openssl.h.


#define DES_KEY_LENGTH   8

Definition at line 94 of file crypto_openssl.h.


#define MD4_DIGEST_LENGTH   16

Definition at line 95 of file crypto_openssl.h.



Maximum length of an IV.

Definition at line 74 of file crypto_openssl.h.



Cipher is in CBC mode.

Definition at line 77 of file crypto_openssl.h.



Cipher is in CFB mode.

Definition at line 83 of file crypto_openssl.h.



Cipher is in GCM mode.

Definition at line 86 of file crypto_openssl.h.



Cipher is in OFB mode.

Definition at line 80 of file crypto_openssl.h.



Cipher should decrypt.

Definition at line 92 of file crypto_openssl.h.



Cipher should encrypt.

Definition at line 89 of file crypto_openssl.h.

Typedef Documentation

◆ cipher_ctx_t

typedef EVP_CIPHER_CTX cipher_ctx_t

Generic cipher context.

Definition at line 41 of file crypto_openssl.h.

◆ hmac_ctx_t

typedef HMAC_CTX hmac_ctx_t

Generic HMAC context.

Definition at line 48 of file crypto_openssl.h.

◆ md_ctx_t

typedef EVP_MD_CTX md_ctx_t

Generic message digest context.

Definition at line 44 of file crypto_openssl.h.

◆ provider_t

typedef void provider_t

Definition at line 51 of file crypto_openssl.h.

Function Documentation

◆ crypto_print_openssl_errors()

void crypto_print_openssl_errors ( const unsigned int  flags)

Retrieve any occurred OpenSSL errors and print those errors.

Note that this function uses the not thread-safe OpenSSL error API.

flagsFlags to indicate error type and priority.

Definition at line 238 of file crypto_openssl.c.

References check_debug_level(), D_CRYPT_ERRORS, D_TLS_DEBUG_MED, ERR_get_error_all(), and msg.

Referenced by tls_ctx_load_cert_file(), and tls_ctx_load_pkcs12().

Variable Documentation

◆ evp_cipher_type

const typedef EVP_CIPHER evp_cipher_type

◆ evp_md_type

const typedef EVP_MD evp_md_type
static unsigned int nonfatal(const unsigned int err)
Convert fatal errors to nonfatal, don't touch other errors.
Definition: error.h:379