18#ifndef _DECAF_INTERNAL_NET_SSL_OPENSSL_OPENSSLPARAMETERS_H_
19#define _DECAF_INTERNAL_NET_SSL_OPENSSL_OPENSSLPARAMETERS_H_
27#include <openssl/ssl.h>
41 class OpenSSLParameters {
53 std::vector<std::string> enabledCipherSuites;
54 std::vector<std::string> enabledProtocols;
55 std::vector<std::string> serverNames;
59 OpenSSLParameters(
const OpenSSLParameters&);
60 OpenSSLParameters& operator=(
const OpenSSLParameters&);
65 OpenSSLParameters(SSL_CTX* context);
71 return this->needClientAuth;
75 this->needClientAuth = value;
76 this->wantClientAuth =
false;
80 return this->wantClientAuth;
84 this->wantClientAuth = value;
85 this->needClientAuth =
false;
89 return this->useClientMode;
93 this->useClientMode = value;
114 SSL_CTX* getSSLContext()
const {
115 return this->context;
118 SSL* getSSL()
const {
std::vector< std::string > getEnabledProtocols() const
void setEnabledProtocols(const std::vector< std::string > &protocols)
std::vector< std::string > getServerNames() const
bool getWantClientAuth() const
Definition OpenSSLParameters.h:79
void setEnabledCipherSuites(const std::vector< std::string > &suites)
void setWantClientAuth(bool value)
Definition OpenSSLParameters.h:83
std::vector< std::string > getSupportedCipherSuites() const
void setNeedClientAuth(bool value)
Definition OpenSSLParameters.h:74
bool getUseClientMode() const
Definition OpenSSLParameters.h:88
OpenSSLParameters * clone() const
Creates a clone of this object such that all settings are transferred to a new instance of an SSL obj...
std::vector< std::string > getEnabledCipherSuites() const
void setUseClientMode(bool value)
Definition OpenSSLParameters.h:92
void setServerNames(const std::vector< std::string > &serverNames)
bool getNeedClientAuth() const
Definition OpenSSLParameters.h:70
std::vector< std::string > getSupportedProtocols() const
virtual ~OpenSSLParameters()
Definition OpenSSLContextSpi.h:29
Definition DefaultSSLContext.h:28
Definition DefaultServerSocketFactory.h:27
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.
Definition AprPool.h:25