rodbus (C++ API) 1.3.1
Loading...
Searching...
No Matches
rodbus::TlsClientConfig Struct Reference

TLS client configuration. More...

#include <rodbus.hpp>

Public Member Functions

 TlsClientConfig (const std::string &dns_name, const std::string &peer_cert_path, const std::string &local_cert_path, const std::string &private_key_path, const std::string &password)
 Initialize a TLS client configuration. More...
 

Public Attributes

std::string dns_name
 Name expected to be in the presented certificate (only in CertificateMode::authority_based) More...
 
std::string peer_cert_path
 Path to the PEM-encoded certificate of the peer. More...
 
std::string local_cert_path
 Path to the PEM-encoded local certificate. More...
 
std::string private_key_path
 Path to the the PEM-encoded private key. More...
 
std::string password
 Optional password if the private key file is encrypted. More...
 
MinTlsVersion min_tls_version
 Minimum TLS version allowed. More...
 
CertificateMode certificate_mode
 Certificate validation mode. More...
 
bool allow_server_name_wildcard
 If set to true, a '*' may be used for TlsClientConfig::dns_name to bypass server name validation. More...
 

Friends

class CppTlsClientConfigFriend
 

Detailed Description

TLS client configuration.

Constructor & Destructor Documentation

◆ TlsClientConfig()

rodbus::TlsClientConfig::TlsClientConfig ( const std::string &  dns_name,
const std::string &  peer_cert_path,
const std::string &  local_cert_path,
const std::string &  private_key_path,
const std::string &  password 
)

Initialize a TLS client configuration.

Note
Values are initialized to:
Parameters
dns_nameName expected to be in the presented certificate (only in CertificateMode::authority_based)
peer_cert_pathPath to the PEM-encoded certificate of the peer
local_cert_pathPath to the PEM-encoded local certificate
private_key_pathPath to the the PEM-encoded private key
passwordOptional password if the private key file is encrypted
Returns
New instance of TlsClientConfig

Member Data Documentation

◆ allow_server_name_wildcard

bool rodbus::TlsClientConfig::allow_server_name_wildcard

If set to true, a '*' may be used for TlsClientConfig::dns_name to bypass server name validation.

◆ certificate_mode

CertificateMode rodbus::TlsClientConfig::certificate_mode

Certificate validation mode.

◆ dns_name

std::string rodbus::TlsClientConfig::dns_name

Name expected to be in the presented certificate (only in CertificateMode::authority_based)

◆ local_cert_path

std::string rodbus::TlsClientConfig::local_cert_path

Path to the PEM-encoded local certificate.

◆ min_tls_version

MinTlsVersion rodbus::TlsClientConfig::min_tls_version

Minimum TLS version allowed.

◆ password

std::string rodbus::TlsClientConfig::password

Optional password if the private key file is encrypted.

Only PKCS#8 encrypted files are supported.

Pass empty string if the file is not encrypted.

◆ peer_cert_path

std::string rodbus::TlsClientConfig::peer_cert_path

Path to the PEM-encoded certificate of the peer.

◆ private_key_path

std::string rodbus::TlsClientConfig::private_key_path

Path to the the PEM-encoded private key.


The documentation for this struct was generated from the following file: