crypto.h

All headers

crypto.h contains functions for initializing the crypto library.

  1. CRYPTO_library_init
  2. CRYPTO_is_confidential_build
  3. CRYPTO_has_asm
  4. FIPS_mode
  5. Deprecated functions
  6. OPENSSL_VERSION_TEXT
  7. SSLEAY_VERSION
  8. SSLeay_version
  9. OPENSSL_VERSION
  10. OpenSSL_version
  11. SSLeay
  12. OpenSSL_version_num
  13. CRYPTO_malloc_init
  14. ENGINE_load_builtin_engines
  15. ENGINE_register_all_complete
  16. OPENSSL_load_builtin_modules
  17. OPENSSL_INIT_NO_LOAD_CRYPTO_STRINGS
  18. OPENSSL_INIT_LOAD_CRYPTO_STRINGS
  19. OPENSSL_INIT_ADD_ALL_CIPHERS
  20. OPENSSL_INIT_ADD_ALL_DIGESTS
  21. OPENSSL_INIT_NO_ADD_ALL_CIPHERS
  22. OPENSSL_INIT_NO_ADD_ALL_DIGESTS
  23. OPENSSL_INIT_LOAD_CONFIG
  24. OPENSSL_INIT_NO_LOAD_CONFIG
  25. OPENSSL_init_crypto

CRYPTO_library_init initializes the crypto library. It must be called if the library is built with BORINGSSL_NO_STATIC_INITIALIZER. Otherwise, it does nothing and a static initializer is used instead. It is safe to call this function multiple times and concurrently from multiple threads.

On some ARM configurations, this function may require filesystem access and should be called before entering a sandbox.

OPENSSL_EXPORT void CRYPTO_library_init(void);

CRYPTO_is_confidential_build returns one if the linked version of BoringSSL has been built with the BORINGSSL_CONFIDENTIAL define and zero otherwise.

This is used by some consumers to identify whether they are using an internal version of BoringSSL.

OPENSSL_EXPORT int CRYPTO_is_confidential_build(void);

CRYPTO_has_asm returns one unless BoringSSL was built with OPENSSL_NO_ASM, in which case it returns zero.

OPENSSL_EXPORT int CRYPTO_has_asm(void);

FIPS_mode returns zero unless BoringSSL is built with BORINGSSL_FIPS, in which case it returns one.

OPENSSL_EXPORT int FIPS_mode(void);

Deprecated functions.

OPENSSL_VERSION_TEXT contains a string the identifies the version of “OpenSSL”. node.js requires a version number in this text.

#define OPENSSL_VERSION_TEXT "OpenSSL 1.1.0 (compatible; BoringSSL)"
#define SSLEAY_VERSION 0

SSLeay_version is a compatibility function that returns the string "BoringSSL".

OPENSSL_EXPORT const char *SSLeay_version(int unused);
#define OPENSSL_VERSION 0

OpenSSL_version is a compatibility function that returns the string "BoringSSL".

OPENSSL_EXPORT const char *OpenSSL_version(int unused);

SSLeay is a compatibility function that returns OPENSSL_VERSION_NUMBER from base.h.

OPENSSL_EXPORT unsigned long SSLeay(void);

OpenSSL_version_num is a compatibility function that returns OPENSSL_VERSION_NUMBER from base.h.

OPENSSL_EXPORT unsigned long OpenSSL_version_num(void);

CRYPTO_malloc_init returns one.

OPENSSL_EXPORT int CRYPTO_malloc_init(void);

ENGINE_load_builtin_engines does nothing.

OPENSSL_EXPORT void ENGINE_load_builtin_engines(void);

ENGINE_register_all_complete returns one.

OPENSSL_EXPORT int ENGINE_register_all_complete(void);

OPENSSL_load_builtin_modules does nothing.

OPENSSL_EXPORT void OPENSSL_load_builtin_modules(void);
#define OPENSSL_INIT_NO_LOAD_CRYPTO_STRINGS 0
#define OPENSSL_INIT_LOAD_CRYPTO_STRINGS 0
#define OPENSSL_INIT_ADD_ALL_CIPHERS 0
#define OPENSSL_INIT_ADD_ALL_DIGESTS 0
#define OPENSSL_INIT_NO_ADD_ALL_CIPHERS 0
#define OPENSSL_INIT_NO_ADD_ALL_DIGESTS 0
#define OPENSSL_INIT_LOAD_CONFIG 0
#define OPENSSL_INIT_NO_LOAD_CONFIG 0

OPENSSL_init_crypto calls CRYPTO_library_init and returns one.

OPENSSL_EXPORT int OPENSSL_init_crypto(uint64_t opts,
                                       const OPENSSL_INIT_SETTINGS *settings);