activemq-cpp-3.9.5
DefaultSSLSocketFactory.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_DEFAULTSSLSOCKETFACTORY_H_
19#define _DECAF_INTERNAL_NET_SSL_DEFAULTSSLSOCKETFACTORY_H_
20
21#include <decaf/util/Config.h>
22
24
25#include <string>
26#include <vector>
27
28namespace decaf {
29namespace internal {
30namespace net {
31namespace ssl {
32
41 private:
42
43 std::string errorMessage;
44
45 public:
46
47 DefaultSSLSocketFactory( const std::string& errorMessage );
48
50
55
59 virtual decaf::net::Socket* createSocket( const decaf::net::InetAddress* host, int port );
60
65 const decaf::net::InetAddress* ifAddress, int localPort );
66
70 virtual decaf::net::Socket* createSocket( const std::string& name, int port );
71
75 virtual decaf::net::Socket* createSocket( const std::string& name, int port,
76 const decaf::net::InetAddress* ifAddress, int localPort );
77
81 virtual std::vector<std::string> getDefaultCipherSuites();
82
86 virtual std::vector<std::string> getSupportedCipherSuites();
87
91 virtual decaf::net::Socket* createSocket( decaf::net::Socket* socket, std::string host, int port, bool autoClose );
92
93 };
94
95}}}}
96
97#endif /* _DECAF_INTERNAL_NET_SSL_DEFAULTSSLSOCKETFACTORY_H_ */
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(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(const std::string &name, int port)
Creates a new Socket object and connects it to the specified remote host and port using the configura...
DefaultSSLSocketFactory(const std::string &errorMessage)
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 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 &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 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