aws-crt-cpp
C++ wrapper around the aws-c-* libraries. Provides Cross-Platform Transport Protocols and SSL/TLS implementations for C++.
|
#include <Api.h>
Public Member Functions | |
ApiHandle (Allocator *allocator) noexcept | |
ApiHandle () noexcept | |
~ApiHandle () | |
ApiHandle (const ApiHandle &)=delete | |
ApiHandle (ApiHandle &&)=delete | |
ApiHandle & | operator= (const ApiHandle &)=delete |
ApiHandle & | operator= (ApiHandle &&)=delete |
void | InitializeLogging (LogLevel level, const char *filename) |
void | InitializeLogging (LogLevel level, FILE *fp) |
void | SetShutdownBehavior (ApiHandleShutdownBehavior behavior) |
void | SetBYOCryptoNewMD5Callback (Crypto::CreateHashCallback &&callback) |
void | SetBYOCryptoNewSHA256Callback (Crypto::CreateHashCallback &&callback) |
void | SetBYOCryptoNewSHA256HMACCallback (Crypto::CreateHMACCallback &&callback) |
void | SetBYOCryptoClientTlsCallback (Io::NewClientTlsHandlerCallback &&callback) |
void | SetBYOCryptoTlsContextCallbacks (Io::NewTlsContextImplCallback &&newCallback, Io::DeleteTlsContextImplCallback &&deleteCallback, Io::IsTlsAlpnSupportedCallback &&alpnCallback) |
A singleton object representing the init/cleanup state of the entire CRT. It's invalid to have more than one active simultaneously and it's also invalid to use CRT functionality without one active.
|
noexcept |
|
noexcept |
Aws::Crt::ApiHandle::~ApiHandle | ( | ) |
|
delete |
|
delete |
void Aws::Crt::ApiHandle::InitializeLogging | ( | LogLevel | level, |
const char * | filename | ||
) |
Initialize logging in awscrt.
level | Display messages of this importance and higher. LogLevel.NoLogs will disable logging. |
filename | Logging destination, a file path from the disk. |
void Aws::Crt::ApiHandle::InitializeLogging | ( | LogLevel | level, |
FILE * | fp | ||
) |
Initialize logging in awscrt.
level | Display messages of this importance and higher. LogLevel.NoLogs will disable logging. |
fp | The FILE object for logging destination. |
void Aws::Crt::ApiHandle::SetBYOCryptoClientTlsCallback | ( | Io::NewClientTlsHandlerCallback && | callback | ) |
BYO_CRYPTO: set callback for creating a ClientTlsChannelHandler. If using BYO_CRYPTO, you must call this prior to creating any client channels in the application.
void Aws::Crt::ApiHandle::SetBYOCryptoNewMD5Callback | ( | Crypto::CreateHashCallback && | callback | ) |
BYO_CRYPTO: set callback for creating MD5 hashes. If using BYO_CRYPTO, you must call this.
void Aws::Crt::ApiHandle::SetBYOCryptoNewSHA256Callback | ( | Crypto::CreateHashCallback && | callback | ) |
BYO_CRYPTO: set callback for creating SHA256 hashes. If using BYO_CRYPTO, you must call this.
void Aws::Crt::ApiHandle::SetBYOCryptoNewSHA256HMACCallback | ( | Crypto::CreateHMACCallback && | callback | ) |
BYO_CRYPTO: set callback for creating Streaming SHA256 HMAC objects. If using BYO_CRYPTO, you must call this.
void Aws::Crt::ApiHandle::SetBYOCryptoTlsContextCallbacks | ( | Io::NewTlsContextImplCallback && | newCallback, |
Io::DeleteTlsContextImplCallback && | deleteCallback, | ||
Io::IsTlsAlpnSupportedCallback && | alpnCallback | ||
) |
BYO_CRYPTO: set callbacks for the TlsContext. If using BYO_CRYPTO, you need to call this function prior to creating a TlsContext.
newCallback | Create custom implementation object, to be stored inside TlsContext. Return nullptr if failure occurs. |
deleteCallback | Destroy object that was created by newCallback. |
alpnCallback | Return whether ALPN is supported. |
void Aws::Crt::ApiHandle::SetShutdownBehavior | ( | ApiHandleShutdownBehavior | behavior | ) |
Configures the shutdown behavior of the api handle instance
shutdownBehavior | desired shutdown behavior |