activemq-cpp-3.9.5
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
24
25namespace decaf {
26namespace internal {
27namespace net {
28namespace ssl {
29namespace openssl {
30
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
51
53
58
62 virtual decaf::net::Socket* createSocket( const decaf::net::InetAddress* host, int port );
63
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_ */
Provides an SSLContext that wraps the OpenSSL API.
Definition OpenSSLContextSpi.h:38
virtual decaf::net::Socket * createSocket(decaf::net::Socket *socket, std::string host, int port, bool autoClose)
Returns a socket layered over an existing socket connected to the named host, at the given port....
virtual decaf::net::Socket * createSocket()
Creates an unconnected Socket object.a new Socket object, caller must free this object when done.
virtual decaf::net::Socket * createSocket(const std::string &hostname, int port)
Creates a new Socket object and connects it to the specified remote host and port using the configura...
virtual decaf::net::Socket * createSocket(const decaf::net::InetAddress *host, int port, const decaf::net::InetAddress *ifAddress, int localPort)
Creates a new Socket object and connects it to the specified remote host and port using the configura...
virtual decaf::net::Socket * createSocket(const decaf::net::InetAddress *host, int port)
Creates a new Socket object and connects it to the specified remote host and port using the configura...
virtual std::vector< std::string > getSupportedCipherSuites()
Returns the names of the cipher suites which could be enabled for use on an SSL connection....
virtual std::vector< std::string > getDefaultCipherSuites()
Returns the list of cipher suites which are enabled by default.Unless a different list is enabled,...
virtual decaf::net::Socket * createSocket(const std::string &name, int port, const decaf::net::InetAddress *ifAddress, int localPort)
Creates a new Socket object and connects it to the specified remote host and port using the configura...
Represents an IP address.
Definition InetAddress.h:33
Definition Socket.h:44
Factory class interface for a SocketFactory that can create SSLSocket objects.
Definition SSLSocketFactory.h:37
#define DECAF_API
Definition Config.h:29
Definition OpenSSLContextSpi.h:29
Definition DefaultSSLContext.h:28
Definition DefaultServerSocketFactory.h:27
Definition AprPool.h:26
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.
Definition AprPool.h:25