activemq-cpp-3.8.2
OpenSSLSocketFactory.h
Go to the documentation of this file.
1
/*
2
* Licensed to the Apache Software Foundation (ASF) under one or more
3
* contributor license agreements. See the NOTICE file distributed with
4
* this work for additional information regarding copyright ownership.
5
* The ASF licenses this file to You under the Apache License, Version 2.0
6
* (the "License"); you may not use this file except in compliance with
7
* the License. You may obtain a copy of the License at
8
*
9
* http://www.apache.org/licenses/LICENSE-2.0
10
*
11
* Unless required by applicable law or agreed to in writing, software
12
* distributed under the License is distributed on an "AS IS" BASIS,
13
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
* See the License for the specific language governing permissions and
15
* limitations under the License.
16
*/
17
18
#ifndef _DECAF_INTERNAL_NET_SSL_OPENSSL_OPENSSLSOCKETFACTORY_H_
19
#define _DECAF_INTERNAL_NET_SSL_OPENSSL_OPENSSLSOCKETFACTORY_H_
20
21
#include <
decaf/util/Config.h
>
22
23
#include <
decaf/net/ssl/SSLSocketFactory.h
>
24
25
namespace
decaf
{
26
namespace
internal {
27
namespace
net {
28
namespace
ssl {
29
namespace
openssl {
30
31
class
OpenSSLContextSpi;
32
38
class
DECAF_API
OpenSSLSocketFactory
:
public
decaf::net::ssl::SSLSocketFactory
{
39
private
:
40
41
OpenSSLContextSpi
* parent;
42
43
private
:
44
45
OpenSSLSocketFactory
(
const
OpenSSLSocketFactory
& );
46
OpenSSLSocketFactory
& operator= (
const
OpenSSLSocketFactory
& );
47
48
public
:
49
50
OpenSSLSocketFactory
(
OpenSSLContextSpi
* parent );
51
52
virtual
~
OpenSSLSocketFactory
();
53
57
virtual
decaf::net::Socket
* createSocket();
58
62
virtual
decaf::net::Socket
* createSocket(
const
decaf::net::InetAddress
* host,
int
port );
63
67
virtual
decaf::net::Socket
* createSocket(
const
decaf::net::InetAddress
* host,
int
port,
68
const
decaf::net::InetAddress
* ifAddress,
int
localPort );
69
73
virtual
decaf::net::Socket
* createSocket(
const
std::string& hostname,
int
port );
74
78
virtual
decaf::net::Socket
* createSocket(
const
std::string& name,
int
port,
79
const
decaf::net::InetAddress
* ifAddress,
int
localPort );
80
84
virtual
std::vector<std::string> getDefaultCipherSuites();
85
89
virtual
std::vector<std::string> getSupportedCipherSuites();
90
94
virtual
decaf::net::Socket
* createSocket(
decaf::net::Socket
* socket, std::string host,
95
int
port,
bool
autoClose );
96
97
};
98
99
}}}}}
100
101
#endif
/* _DECAF_INTERNAL_NET_SSL_OPENSSL_OPENSSLSOCKETFACTORY_H_ */
decaf::internal::net::ssl::openssl::OpenSSLSocketFactory
Client Socket Factory that creates SSL based client sockets using the OpenSSL library.
Definition:
OpenSSLSocketFactory.h:38
Config.h
decaf::net::ssl::SSLSocketFactory
Factory class interface for a SocketFactory that can create SSLSocket objects.
Definition:
SSLSocketFactory.h:37
decaf::net::Socket
Definition:
Socket.h:44
decaf::net::InetAddress
Represents an IP address.
Definition:
InetAddress.h:33
decaf::internal::net::ssl::openssl::OpenSSLContextSpi
Provides an SSLContext that wraps the OpenSSL API.
Definition:
OpenSSLContextSpi.h:38
DECAF_API
#define DECAF_API
Definition:
Config.h:29
decaf
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements...
Definition:
AprPool.h:25
SSLSocketFactory.h
src
main
decaf
internal
net
ssl
openssl
OpenSSLSocketFactory.h
Generated by
1.8.13