aboutsummaryrefslogtreecommitdiff
path: root/src/client/QXmppOutgoingClient.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/client/QXmppOutgoingClient.cpp')
-rw-r--r--src/client/QXmppOutgoingClient.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/client/QXmppOutgoingClient.cpp b/src/client/QXmppOutgoingClient.cpp
index 0ee1d1af..666b0365 100644
--- a/src/client/QXmppOutgoingClient.cpp
+++ b/src/client/QXmppOutgoingClient.cpp
@@ -129,7 +129,16 @@ void QXmppOutgoingClientPrivate::connectToHost(const QString &host, quint16 port
#endif
// connect to host
- q->socket()->connectToHost(host, port);
+ const QXmppConfiguration::StreamSecurityMode localSecurity = q->configuration().streamSecurityMode();
+ if (localSecurity == QXmppConfiguration::LegacySSL) {
+ if (!q->socket()->supportsSsl()) {
+ q->warning("Not connecting as legacy SSL was requested, but SSL support is not available");
+ return;
+ }
+ q->socket()->connectToHostEncrypted(host, port);
+ } else {
+ q->socket()->connectToHost(host, port);
+ }
}
/// Constructs an outgoing client stream.