From f4675165ea4d7cf72b0905b6ef36385708b20220 Mon Sep 17 00:00:00 2001 From: Konstantinos Sideris Date: Tue, 27 Mar 2018 10:38:00 +0300 Subject: Add environment variable to allow insecure connections (self-signed certs) NHEKO_ALLOW_INSECURE_CONNECTIONS=1 ./nheko fixes #260 --- src/MatrixClient.cc | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) (limited to 'src/MatrixClient.cc') diff --git a/src/MatrixClient.cc b/src/MatrixClient.cc index 09dd0e2c..e7d04ebb 100644 --- a/src/MatrixClient.cc +++ b/src/MatrixClient.cc @@ -25,6 +25,7 @@ #include #include #include +#include #include #include #include @@ -36,11 +37,26 @@ MatrixClient::MatrixClient(QString server, QObject *parent) : QNetworkAccessManager(parent) , clientApiUrl_{"/_matrix/client/r0"} , mediaApiUrl_{"/_matrix/media/r0"} - , server_{"https://" + server} + , serverProtocol_{"https"} { QSettings settings; txn_id_ = settings.value("client/transaction_id", 1).toInt(); + auto env = QProcessEnvironment::systemEnvironment(); + + auto allowInsecureConnections = env.value("NHEKO_ALLOW_INSECURE_CONNECTIONS", "0"); + + if (allowInsecureConnections == "1") { + qWarning() << "Insecure connections are allowed: SSL errors will be ignored"; + connect( + this, + &QNetworkAccessManager::sslErrors, + this, + [](QNetworkReply *reply, const QList &) { reply->ignoreSslErrors(); }); + } + + setServer(server); + QJsonObject default_filter{ { "room", -- cgit 1.5.1