diff options
Diffstat (limited to 'Swiften/Client/CoreClient.cpp')
| -rw-r--r-- | Swiften/Client/CoreClient.cpp | 32 |
1 files changed, 16 insertions, 16 deletions
diff --git a/Swiften/Client/CoreClient.cpp b/Swiften/Client/CoreClient.cpp index ccde0c2..7579bca 100644 --- a/Swiften/Client/CoreClient.cpp +++ b/Swiften/Client/CoreClient.cpp | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * Copyright (c) 2010-2018 Isode Limited. | 2 | * Copyright (c) 2010-2019 Isode Limited. |
| 3 | * All rights reserved. | 3 | * All rights reserved. |
| 4 | * See the COPYING file for more information. | 4 | * See the COPYING file for more information. |
| 5 | */ | 5 | */ |
| @@ -69,21 +69,21 @@ void CoreClient::connect(const ClientOptions& o) { | |||
| 69 | HostAddressPort systemHTTPConnectProxy = networkFactories->getProxyProvider()->getHTTPConnectProxy(); | 69 | HostAddressPort systemHTTPConnectProxy = networkFactories->getProxyProvider()->getHTTPConnectProxy(); |
| 70 | switch (o.proxyType) { | 70 | switch (o.proxyType) { |
| 71 | case ClientOptions::NoProxy: | 71 | case ClientOptions::NoProxy: |
| 72 | SWIFT_LOG(debug) << " without a proxy" << std::endl; | 72 | SWIFT_LOG(debug) << " without a proxy"; |
| 73 | break; | 73 | break; |
| 74 | case ClientOptions::SystemConfiguredProxy: | 74 | case ClientOptions::SystemConfiguredProxy: |
| 75 | SWIFT_LOG(debug) << " with a system configured proxy" << std::endl; | 75 | SWIFT_LOG(debug) << " with a system configured proxy"; |
| 76 | if (systemSOCKS5Proxy.isValid()) { | 76 | if (systemSOCKS5Proxy.isValid()) { |
| 77 | SWIFT_LOG(debug) << "Found SOCK5 Proxy: " << systemSOCKS5Proxy.getAddress().toString() << ":" << systemSOCKS5Proxy.getPort() << std::endl; | 77 | SWIFT_LOG(debug) << "Found SOCK5 Proxy: " << systemSOCKS5Proxy.getAddress().toString() << ":" << systemSOCKS5Proxy.getPort(); |
| 78 | proxyConnectionFactories.push_back(new SOCKS5ProxiedConnectionFactory(networkFactories->getDomainNameResolver(), networkFactories->getConnectionFactory(), networkFactories->getTimerFactory(), systemSOCKS5Proxy.getAddress().toString(), systemSOCKS5Proxy.getPort())); | 78 | proxyConnectionFactories.push_back(new SOCKS5ProxiedConnectionFactory(networkFactories->getDomainNameResolver(), networkFactories->getConnectionFactory(), networkFactories->getTimerFactory(), systemSOCKS5Proxy.getAddress().toString(), systemSOCKS5Proxy.getPort())); |
| 79 | } | 79 | } |
| 80 | if (systemHTTPConnectProxy.isValid()) { | 80 | if (systemHTTPConnectProxy.isValid()) { |
| 81 | SWIFT_LOG(debug) << "Found HTTPConnect Proxy: " << systemHTTPConnectProxy.getAddress().toString() << ":" << systemHTTPConnectProxy.getPort() << std::endl; | 81 | SWIFT_LOG(debug) << "Found HTTPConnect Proxy: " << systemHTTPConnectProxy.getAddress().toString() << ":" << systemHTTPConnectProxy.getPort(); |
| 82 | proxyConnectionFactories.push_back(new HTTPConnectProxiedConnectionFactory(networkFactories->getDomainNameResolver(), networkFactories->getConnectionFactory(), networkFactories->getTimerFactory(), systemHTTPConnectProxy.getAddress().toString(), systemHTTPConnectProxy.getPort())); | 82 | proxyConnectionFactories.push_back(new HTTPConnectProxiedConnectionFactory(networkFactories->getDomainNameResolver(), networkFactories->getConnectionFactory(), networkFactories->getTimerFactory(), systemHTTPConnectProxy.getAddress().toString(), systemHTTPConnectProxy.getPort())); |
| 83 | } | 83 | } |
| 84 | break; | 84 | break; |
| 85 | case ClientOptions::SOCKS5Proxy: { | 85 | case ClientOptions::SOCKS5Proxy: { |
| 86 | SWIFT_LOG(debug) << " with manual configured SOCKS5 proxy" << std::endl; | 86 | SWIFT_LOG(debug) << " with manual configured SOCKS5 proxy"; |
| 87 | std::string proxyHostname = o.manualProxyHostname.empty() ? systemSOCKS5Proxy.getAddress().toString() : o.manualProxyHostname; | 87 | std::string proxyHostname = o.manualProxyHostname.empty() ? systemSOCKS5Proxy.getAddress().toString() : o.manualProxyHostname; |
| 88 | auto proxyPort = systemSOCKS5Proxy.getPort(); | 88 | auto proxyPort = systemSOCKS5Proxy.getPort(); |
| 89 | if (o.manualProxyPort != -1) { | 89 | if (o.manualProxyPort != -1) { |
| @@ -91,18 +91,18 @@ void CoreClient::connect(const ClientOptions& o) { | |||
| 91 | proxyPort = boost::numeric_cast<unsigned short>(o.manualProxyPort); | 91 | proxyPort = boost::numeric_cast<unsigned short>(o.manualProxyPort); |
| 92 | } | 92 | } |
| 93 | catch (const boost::numeric::bad_numeric_cast& e) { | 93 | catch (const boost::numeric::bad_numeric_cast& e) { |
| 94 | SWIFT_LOG(warning) << "Manual proxy port " << o.manualProxyPort << " is invalid: " << e.what() << std::endl; | 94 | SWIFT_LOG(warning) << "Manual proxy port " << o.manualProxyPort << " is invalid: " << e.what(); |
| 95 | onDisconnected(boost::optional<ClientError>(ClientError::ConnectionError)); | 95 | onDisconnected(boost::optional<ClientError>(ClientError::ConnectionError)); |
| 96 | return; | 96 | return; |
| 97 | } | 97 | } |
| 98 | } | 98 | } |
| 99 | SWIFT_LOG(debug) << "Proxy: " << proxyHostname << ":" << proxyPort << std::endl; | 99 | SWIFT_LOG(debug) << "Proxy: " << proxyHostname << ":" << proxyPort; |
| 100 | proxyConnectionFactories.push_back(new SOCKS5ProxiedConnectionFactory(networkFactories->getDomainNameResolver(), networkFactories->getConnectionFactory(), networkFactories->getTimerFactory(), proxyHostname, proxyPort)); | 100 | proxyConnectionFactories.push_back(new SOCKS5ProxiedConnectionFactory(networkFactories->getDomainNameResolver(), networkFactories->getConnectionFactory(), networkFactories->getTimerFactory(), proxyHostname, proxyPort)); |
| 101 | useDirectConnection = false; | 101 | useDirectConnection = false; |
| 102 | break; | 102 | break; |
| 103 | } | 103 | } |
| 104 | case ClientOptions::HTTPConnectProxy: { | 104 | case ClientOptions::HTTPConnectProxy: { |
| 105 | SWIFT_LOG(debug) << " with manual configured HTTPConnect proxy" << std::endl; | 105 | SWIFT_LOG(debug) << " with manual configured HTTPConnect proxy"; |
| 106 | std::string proxyHostname = o.manualProxyHostname.empty() ? systemHTTPConnectProxy.getAddress().toString() : o.manualProxyHostname; | 106 | std::string proxyHostname = o.manualProxyHostname.empty() ? systemHTTPConnectProxy.getAddress().toString() : o.manualProxyHostname; |
| 107 | unsigned short proxyPort = systemHTTPConnectProxy.getPort(); | 107 | unsigned short proxyPort = systemHTTPConnectProxy.getPort(); |
| 108 | if (o.manualProxyPort != -1) { | 108 | if (o.manualProxyPort != -1) { |
| @@ -110,12 +110,12 @@ void CoreClient::connect(const ClientOptions& o) { | |||
| 110 | proxyPort = boost::numeric_cast<unsigned short>(o.manualProxyPort); | 110 | proxyPort = boost::numeric_cast<unsigned short>(o.manualProxyPort); |
| 111 | } | 111 | } |
| 112 | catch (const boost::numeric::bad_numeric_cast& e) { | 112 | catch (const boost::numeric::bad_numeric_cast& e) { |
| 113 | SWIFT_LOG(warning) << "Manual proxy port " << o.manualProxyPort << " is invalid: " << e.what() << std::endl; | 113 | SWIFT_LOG(warning) << "Manual proxy port " << o.manualProxyPort << " is invalid: " << e.what(); |
| 114 | onDisconnected(boost::optional<ClientError>(ClientError::ConnectionError)); | 114 | onDisconnected(boost::optional<ClientError>(ClientError::ConnectionError)); |
| 115 | return; | 115 | return; |
| 116 | } | 116 | } |
| 117 | } | 117 | } |
| 118 | SWIFT_LOG(debug) << "Proxy: " << proxyHostname << ":" << proxyPort << std::endl; | 118 | SWIFT_LOG(debug) << "Proxy: " << proxyHostname << ":" << proxyPort; |
| 119 | proxyConnectionFactories.push_back(new HTTPConnectProxiedConnectionFactory(networkFactories->getDomainNameResolver(), networkFactories->getConnectionFactory(), networkFactories->getTimerFactory(), proxyHostname, proxyPort, o.httpTrafficFilter)); | 119 | proxyConnectionFactories.push_back(new HTTPConnectProxiedConnectionFactory(networkFactories->getDomainNameResolver(), networkFactories->getConnectionFactory(), networkFactories->getTimerFactory(), proxyHostname, proxyPort, o.httpTrafficFilter)); |
| 120 | useDirectConnection = false; | 120 | useDirectConnection = false; |
| 121 | break; | 121 | break; |
| @@ -134,7 +134,7 @@ void CoreClient::connect(const ClientOptions& o) { | |||
| 134 | port = boost::numeric_cast<unsigned short>(o.manualPort); | 134 | port = boost::numeric_cast<unsigned short>(o.manualPort); |
| 135 | } | 135 | } |
| 136 | catch (const boost::numeric::bad_numeric_cast& e) { | 136 | catch (const boost::numeric::bad_numeric_cast& e) { |
| 137 | SWIFT_LOG(warning) << "Invalid manual port " << o.manualPort << ": " << e.what() << std::endl; | 137 | SWIFT_LOG(warning) << "Invalid manual port " << o.manualPort << ": " << e.what(); |
| 138 | onDisconnected(boost::optional<ClientError>(ClientError::ConnectionError)); | 138 | onDisconnected(boost::optional<ClientError>(ClientError::ConnectionError)); |
| 139 | return; | 139 | return; |
| 140 | } | 140 | } |
| @@ -174,7 +174,7 @@ void CoreClient::connect(const ClientOptions& o) { | |||
| 174 | sessionStream_->onDataRead.connect(boost::bind(&CoreClient::handleDataRead, this, _1)); | 174 | sessionStream_->onDataRead.connect(boost::bind(&CoreClient::handleDataRead, this, _1)); |
| 175 | sessionStream_->onDataWritten.connect(boost::bind(&CoreClient::handleDataWritten, this, _1)); | 175 | sessionStream_->onDataWritten.connect(boost::bind(&CoreClient::handleDataWritten, this, _1)); |
| 176 | if (certificate_ && !certificate_->isNull()) { | 176 | if (certificate_ && !certificate_->isNull()) { |
| 177 | SWIFT_LOG(debug) << "set certificate" << std::endl; | 177 | SWIFT_LOG(debug) << "set certificate"; |
| 178 | sessionStream_->setTLSCertificate(certificate_); | 178 | sessionStream_->setTLSCertificate(certificate_); |
| 179 | } | 179 | } |
| 180 | boshSessionStream_->open(); | 180 | boshSessionStream_->open(); |
| @@ -423,7 +423,7 @@ void CoreClient::sendPresence(std::shared_ptr<Presence> presence) { | |||
| 423 | 423 | ||
| 424 | void CoreClient::sendData(const std::string& data) { | 424 | void CoreClient::sendData(const std::string& data) { |
| 425 | if (!sessionStream_) { | 425 | if (!sessionStream_) { |
| 426 | SWIFT_LOG(warning) << "Client: Trying to send data while disconnected." << std::endl; | 426 | SWIFT_LOG(warning) << "Client: Trying to send data while disconnected."; |
| 427 | return; | 427 | return; |
| 428 | } | 428 | } |
| 429 | sessionStream_->writeData(data); | 429 | sessionStream_->writeData(data); |
| @@ -507,11 +507,11 @@ void CoreClient::resetSession() { | |||
| 507 | 507 | ||
| 508 | void CoreClient::forceReset() { | 508 | void CoreClient::forceReset() { |
| 509 | if (connector_) { | 509 | if (connector_) { |
| 510 | SWIFT_LOG(warning) << "Client not disconnected properly: Connector still active" << std::endl; | 510 | SWIFT_LOG(warning) << "Client not disconnected properly: Connector still active"; |
| 511 | resetConnector(); | 511 | resetConnector(); |
| 512 | } | 512 | } |
| 513 | if (sessionStream_ || connection_) { | 513 | if (sessionStream_ || connection_) { |
| 514 | SWIFT_LOG(warning) << "Client not disconnected properly: Session still active" << std::endl; | 514 | SWIFT_LOG(warning) << "Client not disconnected properly: Session still active"; |
| 515 | resetSession(); | 515 | resetSession(); |
| 516 | } | 516 | } |
| 517 | } | 517 | } |
Swift