Factory class interface for a SocketFactory that can create SSLSocket objects.
More...
#include <src/main/decaf/net/ssl/SSLSocketFactory.h>
|
| virtual | ~SSLSocketFactory () |
| virtual std::vector< std::string > | getDefaultCipherSuites ()=0 |
| | Returns the list of cipher suites which are enabled by default.
|
| virtual std::vector< std::string > | getSupportedCipherSuites ()=0 |
| | Returns the names of the cipher suites which could be enabled for use on an SSL connection.
|
| virtual Socket * | createSocket (Socket *socket, std::string host, int port, bool autoClose)=0 |
| | Returns a socket layered over an existing socket connected to the named host, at the given port.
|
| virtual Socket * | createSocket () |
| | Creates an unconnected Socket object.
|
| virtual Socket * | createSocket (const InetAddress *host, int port)=0 |
| | Creates a new Socket object and connects it to the specified remote host and port using the configuration of this SocketFactory.
|
| virtual Socket * | createSocket (const InetAddress *host, int port, const InetAddress *ifAddress, int localPort)=0 |
| | Creates a new Socket object and connects it to the specified remote host and port using the configuration of this SocketFactory.
|
| virtual Socket * | createSocket (const std::string &host, int port)=0 |
| | Creates a new Socket object and connects it to the specified remote host and port using the configuration of this SocketFactory.
|
| virtual Socket * | createSocket (const std::string &host, int port, const InetAddress *ifAddress, int localPort)=0 |
| | Creates a new Socket object and connects it to the specified remote host and port using the configuration of this SocketFactory.
|
| virtual | ~SocketFactory () |
|
| static SocketFactory * | getDefault () |
| | Returns the current default SSL SocketFactory, the factory is returned as a pointer however the caller does not own this pointer and should not delete it.
|
| static SocketFactory * | getDefault () |
| | Returns an pointer to the default SocketFactory for this Application, there is only one default SocketFactory per application, the pointer returned by this method is owned by the SocketFactory class and in not to be deleted by the caller.
|
Factory class interface for a SocketFactory that can create SSLSocket objects.
- Since
- 1.0
◆ SSLSocketFactory()
| decaf::net::ssl::SSLSocketFactory::SSLSocketFactory |
( |
| ) |
|
|
protected |
◆ ~SSLSocketFactory()
| virtual decaf::net::ssl::SSLSocketFactory::~SSLSocketFactory |
( |
| ) |
|
|
virtual |
◆ createSocket() [1/6]
◆ createSocket() [2/6]
Creates a new Socket object and connects it to the specified remote host and port using the configuration of this SocketFactory.
- Parameters
-
| host | The host to connect the socket to. |
| port | The port on the remote host to connect to. |
- Returns
- a new Socket object, caller must free this object when done.
- Exceptions
-
| IOException | if an I/O error occurs while creating the Socket object. |
| UnknownHostException | if the host name is not known. |
Implements decaf::net::SocketFactory.
◆ createSocket() [3/6]
Creates a new Socket object and connects it to the specified remote host and port using the configuration of this SocketFactory.
The Socket will be bound to the specified local address and port.
- Parameters
-
| host | The host to connect the socket to. |
| port | The port on the remote host to connect to. |
| ifAddress | The address on the local machine to bind the Socket to. |
| localPort | The local port to bind the Socket to. |
- Returns
- a new Socket object, caller must free this object when done.
- Exceptions
-
| IOException | if an I/O error occurs while creating the Socket object. |
| UnknownHostException | if the host name is not known. |
Implements decaf::net::SocketFactory.
◆ createSocket() [4/6]
Creates a new Socket object and connects it to the specified remote host and port using the configuration of this SocketFactory.
- Parameters
-
| host | The host name or IP address to connect the socket to. |
| port | The port on the remote host to connect to. |
- Returns
- a new Socket object, caller must free this object when done.
- Exceptions
-
| IOException | if an I/O error occurs while creating the Socket object. |
| UnknownHostException | if the host name is not known. |
Implements decaf::net::SocketFactory.
◆ createSocket() [5/6]
Creates a new Socket object and connects it to the specified remote host and port using the configuration of this SocketFactory.
- Parameters
-
| host | The host name or IP address to connect the socket to. |
| port | The port on the remote host to connect to. |
| ifAddress | The address on the local machine to bind the Socket to. |
| localPort | The local port to bind the Socket to. |
- Returns
- a new Socket object, caller must free this object when done.
- Exceptions
-
| IOException | if an I/O error occurs while creating the Socket object. |
| UnknownHostException | if the host name is not known. |
Implements decaf::net::SocketFactory.
◆ createSocket() [6/6]
| virtual Socket * decaf::net::ssl::SSLSocketFactory::createSocket |
( |
Socket * | socket, |
|
|
std::string | host, |
|
|
int | port, |
|
|
bool | autoClose ) |
|
pure virtual |
Returns a socket layered over an existing socket connected to the named host, at the given port.
This constructor can be used when tunneling SSL through a proxy or when negotiating the use of SSL over an existing socket. The host and port refer to the logical peer destination. This socket is configured using the socket options established for this factory.
- Parameters
-
| socket | The existing socket to layer over. |
| host | The server host the original Socket is connected to. |
| port | The server port the original Socket is connected to. |
| autoClose | Should the layered over Socket be closed when the topmost socket is closed. |
- Returns
- a new Socket instance that wraps the given Socket.
- Exceptions
-
| IOException | if an I/O exception occurs while performing this operation. |
| UnknownHostException | if the host is unknown. |
Implemented in decaf::internal::net::ssl::DefaultSSLSocketFactory, and decaf::internal::net::ssl::openssl::OpenSSLSocketFactory.
References decaf::net::SocketFactory::createSocket().
◆ getDefault()
| SocketFactory * decaf::net::ssl::SSLSocketFactory::getDefault |
( |
| ) |
|
|
static |
◆ getDefaultCipherSuites()
| virtual std::vector< std::string > decaf::net::ssl::SSLSocketFactory::getDefaultCipherSuites |
( |
| ) |
|
|
pure virtual |
◆ getSupportedCipherSuites()
| virtual std::vector< std::string > decaf::net::ssl::SSLSocketFactory::getSupportedCipherSuites |
( |
| ) |
|
|
pure virtual |
The documentation for this class was generated from the following file: