fix(HTTPSClientSession): There is no way to resolve host in advance and connect to HTTPS server with SNI. #4395 (#4751)

This commit is contained in:
Aleksandar Fabijanic
2024-11-05 13:46:42 -06:00
committed by GitHub
parent ca63bf0db9
commit c156f0b357
6 changed files with 53 additions and 4 deletions

View File

@@ -78,10 +78,12 @@ public:
HTTPSClientSession();
/// Creates an unconnected HTTPSClientSession.
explicit HTTPSClientSession(const SecureStreamSocket& socket);
explicit HTTPSClientSession(const SecureStreamSocket& socket, const std::string& host, Poco::UInt16 port = HTTPS_PORT);
/// Creates a HTTPSClientSession using the given socket.
/// The socket must not be connected. The session
/// takes ownership of the socket.
///
/// The given host name is used for certificate verification.
HTTPSClientSession(const SecureStreamSocket& socket, Session::Ptr pSession);
/// Creates a HTTPSClientSession using the given socket.

View File

@@ -108,6 +108,12 @@ public:
///
/// The given host name is used for certificate verification.
SecureStreamSocket(const std::string& hostName);
/// Creates a secure stream socket using the default
/// client SSL context. The created socket is not connected.
///
/// The given host name is used for certificate verification.
SecureStreamSocket(const SocketAddress& address, const std::string& hostName, Context::Ptr pContext);
/// Creates a secure stream socket using the given
/// client SSL context and connects it to
@@ -115,6 +121,12 @@ public:
///
/// The given host name is used for certificate verification.
SecureStreamSocket(const std::string& hostName, Context::Ptr pContext);
/// Creates a secure stream socket using the given
/// client SSL context. The created socket is not connected.
///
/// The given host name is used for certificate verification.
SecureStreamSocket(const SocketAddress& address, const std::string& hostName, Context::Ptr pContext, Session::Ptr pSession);
/// Creates a secure stream socket using the given
/// client SSL context and connects it to