Poco::Crypto

class OpenSSLInitializer

File Information

Library: Crypto
Package: CryptoCore
Header: Poco/Crypto/OpenSSLInitializer.h

Description

Initalizes the OpenSSL library.

The class ensures the earliest initialization and the latest shutdown of the OpenSSL library.

Member Summary

Member Functions: dynlock, dynlockCreate, dynlockDestroy, enableFIPSMode, haveLegacyProvider, id, initialize, isFIPSEnabled, lock, uninitialize

Enumerations

Anonymous protected

SEEDSIZE = 256

Constructors

OpenSSLInitializer

OpenSSLInitializer();

Automatically initialize OpenSSL on startup.

Destructor

~OpenSSLInitializer

~OpenSSLInitializer();

Automatically shut down OpenSSL on exit.

Member Functions

enableFIPSMode static inline

static void enableFIPSMode(
    bool enabled
);

Enable or disable FIPS mode. If FIPS is not available, this method doesn't do anything.

haveLegacyProvider static inline

static bool haveLegacyProvider();

Returns true if the OpenSSL 3.x legacy provider is available, otherwise false.

initialize static

static void initialize();

Initializes the OpenSSL machinery.

isFIPSEnabled static inline

static bool isFIPSEnabled();

Returns true if FIPS mode is enabled, false otherwise.

uninitialize static

static void uninitialize();

Shuts down the OpenSSL machinery.

dynlock protected static

static void dynlock(
    int mode,
    struct CRYPTO_dynlock_value * lock,
    const char * file,
    int line
);

dynlockCreate protected static

static struct CRYPTO_dynlock_value * dynlockCreate(
    const char * file,
    int line
);

dynlockDestroy protected static

static void dynlockDestroy(
    struct CRYPTO_dynlock_value * lock,
    const char * file,
    int line
);

id protected static

static unsigned long id();

lock protected static

static void lock(
    int mode,
    int n,
    const char * file,
    int line
);

Securely control IoT edge devices from anywhere   Connect a Device