| 
    OpenVPN 3 Core Library
    
   | 
 
#include <sslctx.hpp>
Public Types | |
| typedef RCPtr< Config > | Ptr | 
  Public Types inherited from openvpn::SSLConfigAPI | |
| enum | LoadFlags { LF_PARSE_MODE = (1 << 0) , LF_ALLOW_CLIENT_CERT_NOT_REQUIRED = (1 << 1) , LF_RELAY_MODE = (1 << 2) } | 
| typedef RCPtr< SSLConfigAPI > | Ptr | 
  Public Types inherited from openvpn::RC< thread_unsafe_refcount > | |
| typedef RCPtr< RC > | Ptr | 
Public Member Functions | |
| Config () | |
| SSLFactoryAPI::Ptr | new_factory () override | 
| void | set_mode (const Mode &mode_arg) override | 
| const Mode & | get_mode () const override | 
| void | set_external_pki_callback (ExternalPKIBase *external_pki_arg, const std::string &alias) override | 
| void | set_session_ticket_handler (TLSSessionTicketBase *session_ticket_handler_arg) override | 
| void | set_client_session_tickets (const bool v) override | 
| void | enable_legacy_algorithms (const bool v) override | 
| void | set_sni_handler (SNI::HandlerBase *sni_handler) override | 
| void | set_sni_name (const std::string &sni_name_arg) override | 
| void | set_cn_reject_handler (CommonNameReject *cn_reject_handler_arg) override | 
| void | set_private_key_password (const std::string &pwd) override | 
| void | load_ca (const std::string &ca_txt, bool strict) override | 
| void | load_crl (const std::string &crl_txt) override | 
| void | load_cert (const std::string &cert_txt) override | 
| void | load_cert (const std::string &cert_txt, const std::string &extra_certs_txt) override | 
| void | load_private_key (const std::string &key_txt) override | 
| void | load_dh (const std::string &dh_txt) override | 
| std::string | extract_ca () const override | 
| std::string | extract_crl () const override | 
| std::string | extract_cert () const override | 
| std::vector< std::string > | extract_extra_certs () const override | 
| std::string | extract_private_key () const override | 
| std::string | extract_dh () const override | 
| PKType::Type | private_key_type () const override | 
| size_t | private_key_length () const override | 
| void | set_frame (const Frame::Ptr &frame_arg) override | 
| void | set_debug_level (const int debug_level) override | 
| void | set_flags (const unsigned int flags_arg) override | 
| void | set_ns_cert_type (const NSCert::Type ns_cert_type_arg) override | 
| void | set_remote_cert_tls (const KUParse::TLSWebType wt) override | 
| void | set_tls_remote (const std::string &tls_remote_arg) override | 
| void | set_tls_version_min (const TLSVersion::Type tvm) override | 
| void | set_tls_version_max (const TLSVersion::Type tvm) override | 
| void | set_tls_version_min_override (const std::string &override) override | 
| void | set_tls_cert_profile (const TLSCertProfile::Type type) override | 
| virtual void | set_tls_cipher_list (const std::string &override) | 
| virtual void | set_tls_ciphersuite_list (const std::string &override) | 
| virtual void | set_tls_groups (const std::string &groups) | 
| void | set_tls_cert_profile_override (const std::string &override) override | 
| void | set_local_cert_enabled (const bool v) override | 
| void | set_x509_track (X509Track::ConfigSet x509_track_config_arg) override | 
| void | set_rng (const StrongRandomAPI::Ptr &rng_arg) override | 
| std::string | validate_cert (const std::string &cert_txt) const override | 
| std::string | validate_cert_list (const std::string &certs_txt) const override | 
| std::string | validate_private_key (const std::string &key_txt) const override | 
| std::string | validate_dh (const std::string &dh_txt) const override | 
| std::string | validate_crl (const std::string &crl_txt) const override | 
| void | load (const OptionList &opt, const unsigned int lflags) override | 
| bool | is_server () const | 
  Public Member Functions inherited from openvpn::SSLConfigAPI | |
| std::string | private_key_type_string () const | 
  Public Member Functions inherited from openvpn::RC< thread_unsafe_refcount > | |
| RC () noexcept=default | |
| RC (const RC &)=delete | |
| virtual | ~RC ()=default | 
| RC & | operator= (const RC &)=delete | 
| olong | use_count () const noexcept | 
| Delegates call to RCImpl and returns the result.   | |
Protected Attributes | |
| MbedTLSPKI::X509Cert::Ptr | crt_chain | 
| MbedTLSPKI::X509Cert::Ptr | ca_chain | 
Private Member Functions | |
| MbedTLSRandom * | get_mbed_random_class () const | 
| const mbedtls_x509_crt_profile * | select_crt_profile () const | 
Private Attributes | |
| Mode | mode | 
| MbedTLSPKI::X509CRL::Ptr | crl_chain | 
| MbedTLSPKI::PKContext::Ptr | priv_key | 
| std::string | priv_key_pwd | 
| MbedTLSPKI::DH::Ptr | dh | 
| ExternalPKIBase * | external_pki | 
| std::string | external_pki_alias | 
| Frame::Ptr | frame | 
| int | ssl_debug_level | 
| unsigned int | flags | 
| NSCert::Type | ns_cert_type | 
| std::vector< unsigned int > | ku | 
| std::string | eku | 
| std::string | tls_remote | 
| VerifyX509Name | verify_x509_name | 
| TLSVersion::Type | tls_version_min | 
| TLSCertProfile::Type | tls_cert_profile | 
| std::string | tls_cipher_list | 
| std::string | tls_groups | 
| X509Track::ConfigSet | x509_track_config | 
| bool | local_cert_enabled | 
| StrongRandomAPI::Ptr | rng | 
Friends | |
| class | MbedTLSContext | 
Additional Inherited Members | |
  Static Public Member Functions inherited from openvpn::RC< thread_unsafe_refcount > | |
| static constexpr bool | is_thread_safe () | 
| Delegates call to RCImpl and returns the result.   | |
Definition at line 219 of file sslctx.hpp.
Definition at line 224 of file sslctx.hpp.
      
  | 
  inline | 
Definition at line 226 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 271 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 344 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 358 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 351 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 379 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 365 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 372 of file sslctx.hpp.
      
  | 
  inlineprivate | 
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 247 of file sslctx.hpp.
      
  | 
  inline | 
Definition at line 628 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 517 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 299 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 313 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 320 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 306 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 337 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 329 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 237 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 393 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 386 of file sslctx.hpp.
      
  | 
  inlineprivate | 
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 265 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 289 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 405 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 253 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 410 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 400 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 471 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 242 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 415 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 294 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 420 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 481 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 259 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 277 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 283 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 444 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 466 of file sslctx.hpp.
      
  | 
  inlinevirtual | 
Definition at line 449 of file sslctx.hpp.
      
  | 
  inlinevirtual | 
Definition at line 455 of file sslctx.hpp.
      
  | 
  inlinevirtual | 
Definition at line 460 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 425 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 435 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 430 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 439 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 476 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 486 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 492 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 511 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 505 of file sslctx.hpp.
      
  | 
  inlineoverridevirtual | 
Implements openvpn::SSLConfigAPI.
Definition at line 498 of file sslctx.hpp.
      
  | 
  friend | 
Definition at line 221 of file sslctx.hpp.
      
  | 
  protected | 
Definition at line 672 of file sslctx.hpp.
      
  | 
  private | 
Definition at line 675 of file sslctx.hpp.
      
  | 
  protected | 
Definition at line 671 of file sslctx.hpp.
      
  | 
  private | 
Definition at line 678 of file sslctx.hpp.
      
  | 
  private | 
Definition at line 686 of file sslctx.hpp.
      
  | 
  private | 
Definition at line 679 of file sslctx.hpp.
      
  | 
  private | 
Definition at line 680 of file sslctx.hpp.
      
  | 
  private | 
Definition at line 683 of file sslctx.hpp.
      
  | 
  private | 
Definition at line 681 of file sslctx.hpp.
      
  | 
  private | 
Definition at line 685 of file sslctx.hpp.
      
  | 
  private | 
Definition at line 694 of file sslctx.hpp.
      
  | 
  private | 
Definition at line 668 of file sslctx.hpp.
      
  | 
  private | 
Definition at line 684 of file sslctx.hpp.
      
  | 
  private | 
Definition at line 676 of file sslctx.hpp.
      
  | 
  private | 
Definition at line 677 of file sslctx.hpp.
      
  | 
  private | 
Definition at line 695 of file sslctx.hpp.
      
  | 
  private | 
Definition at line 682 of file sslctx.hpp.
      
  | 
  private | 
Definition at line 690 of file sslctx.hpp.
      
  | 
  private | 
Definition at line 691 of file sslctx.hpp.
      
  | 
  private | 
Definition at line 692 of file sslctx.hpp.
      
  | 
  private | 
Definition at line 687 of file sslctx.hpp.
      
  | 
  private | 
Definition at line 689 of file sslctx.hpp.
      
  | 
  private | 
Definition at line 688 of file sslctx.hpp.
      
  | 
  private | 
Definition at line 693 of file sslctx.hpp.