mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-17 10:55:32 +08:00
committed by
Mathew Sutcliffe
parent
578a092b0c
commit
7be604741c
@@ -1,5 +1,7 @@
|
|||||||
<RCC>
|
<RCC>
|
||||||
<qresource prefix="/blackmisc">
|
<qresource prefix="/blackmisc">
|
||||||
|
<file>ssl/swiftclient.crt</file>
|
||||||
|
<file>ssl/swiftclient.key</file>
|
||||||
<file>translations/blackmisc_i18n_de.qm</file>
|
<file>translations/blackmisc_i18n_de.qm</file>
|
||||||
<file>translations/blackmisc_i18n_fr.qm</file>
|
<file>translations/blackmisc_i18n_fr.qm</file>
|
||||||
<file>translations/blackmisc_i18n_en.qm</file>
|
<file>translations/blackmisc_i18n_en.qm</file>
|
||||||
|
|||||||
@@ -20,7 +20,9 @@
|
|||||||
#include <QNetworkInterface>
|
#include <QNetworkInterface>
|
||||||
#include <QNetworkReply>
|
#include <QNetworkReply>
|
||||||
#include <QObject>
|
#include <QObject>
|
||||||
|
#include <QSslCertificate>
|
||||||
#include <QSslConfiguration>
|
#include <QSslConfiguration>
|
||||||
|
#include <QSslKey>
|
||||||
#include <QSslSocket>
|
#include <QSslSocket>
|
||||||
#include <QTcpSocket>
|
#include <QTcpSocket>
|
||||||
#include <QTextStream>
|
#include <QTextStream>
|
||||||
@@ -222,6 +224,36 @@ namespace BlackMisc
|
|||||||
request.setRawHeader("User-Agent", userAgent.toLatin1());
|
request.setRawHeader("User-Agent", userAgent.toLatin1());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//! \cond PRIVATE
|
||||||
|
QSslKey loadPrivateSslKey()
|
||||||
|
{
|
||||||
|
QFile privateKeyFile(":/blackmisc/ssl/swiftclient.key");
|
||||||
|
privateKeyFile.open(QIODevice::ReadOnly);
|
||||||
|
QSslKey privateKey(&privateKeyFile, QSsl::Rsa, QSsl::Pem, QSsl::PrivateKey, QByteArrayLiteral("ead811e4474a29539a37ff766ca18330"));
|
||||||
|
Q_ASSERT(!privateKey.isNull());
|
||||||
|
return privateKey;
|
||||||
|
}
|
||||||
|
|
||||||
|
QSslCertificate loadSslCertifcate()
|
||||||
|
{
|
||||||
|
QFile certificateFile(":/blackmisc/ssl/swiftclient.crt");
|
||||||
|
certificateFile.open(QIODevice::ReadOnly);
|
||||||
|
QSslCertificate certificate(&certificateFile);
|
||||||
|
Q_ASSERT(!certificate.isNull());
|
||||||
|
return certificate;
|
||||||
|
}
|
||||||
|
//! \endcond
|
||||||
|
|
||||||
|
void CNetworkUtils::setSwiftClientSslCertificate(QNetworkRequest &request)
|
||||||
|
{
|
||||||
|
static const QSslKey privateKey(loadPrivateSslKey());
|
||||||
|
static const QSslCertificate certificate(loadSslCertifcate());
|
||||||
|
QSslConfiguration sslConfiguration = request.sslConfiguration();
|
||||||
|
sslConfiguration.setPrivateKey(privateKey);
|
||||||
|
sslConfiguration.setLocalCertificate(certificate);
|
||||||
|
request.setSslConfiguration(sslConfiguration);
|
||||||
|
}
|
||||||
|
|
||||||
QHttpPart CNetworkUtils::getMultipartWithDebugFlag()
|
QHttpPart CNetworkUtils::getMultipartWithDebugFlag()
|
||||||
{
|
{
|
||||||
QHttpPart textPartDebug;
|
QHttpPart textPartDebug;
|
||||||
|
|||||||
@@ -106,6 +106,9 @@ namespace BlackMisc
|
|||||||
//! Set user agent for request
|
//! Set user agent for request
|
||||||
static void setSwiftUserAgent(QNetworkRequest &request);
|
static void setSwiftUserAgent(QNetworkRequest &request);
|
||||||
|
|
||||||
|
//! Set swift client ssl certificate
|
||||||
|
static void setSwiftClientSslCertificate(QNetworkRequest &request);
|
||||||
|
|
||||||
//! Multipart with DEBUG FLAG for server
|
//! Multipart with DEBUG FLAG for server
|
||||||
static QHttpPart getMultipartWithDebugFlag();
|
static QHttpPart getMultipartWithDebugFlag();
|
||||||
|
|
||||||
|
|||||||
22
src/blackmisc/ssl/swiftclient.crt
Normal file
22
src/blackmisc/ssl/swiftclient.crt
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
-----BEGIN CERTIFICATE-----
|
||||||
|
MIIDujCCAaICCQDnRkKU8GJDQjANBgkqhkiG9w0BAQsFADBpMQswCQYDVQQGEwJE
|
||||||
|
RTEPMA0GA1UECAwGQmF5ZXJuMREwDwYDVQQHDAhQdWNoaGVpbTEWMBQGA1UECgwN
|
||||||
|
c3dpZnQgcHJvamVjdDEeMBwGA1UEAwwVc3dpZnQgUHJvamVjdCBSb290IENBMB4X
|
||||||
|
DTE3MDEyNDE5MjcwMVoXDTIwMDEyNDE5MjcwMVowWTELMAkGA1UEBhMCREUxDzAN
|
||||||
|
BgNVBAgMBkJheWVybjEWMBQGA1UECgwNc3dpZnQgcHJvamVjdDEhMB8GA1UEAwwY
|
||||||
|
Y2xpZW50LnN3aWZ0LXByb2plY3Qub3JnMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCB
|
||||||
|
iQKBgQC3e4JMQJvbdaZReuFQ1kx8JQfuPktcuurowp3QdbFMBRah4vJMnl9Nm5ja
|
||||||
|
YHbQnJ1HUDNY/oMnS1RC6fPIu3BdWFSf5QjQitBxR9gT/F+7B4I+7O3o5fpaJBUy
|
||||||
|
2aLkZV7o8dd4ZMtDj1nIqmDn0oLexU9mC8PehD9kXeNrkv7D4wIDAQABMA0GCSqG
|
||||||
|
SIb3DQEBCwUAA4ICAQBjkh4rVWTd9Q3rFugQdjfDOOLuQPQyd7RBBXvqa4vOzWTe
|
||||||
|
Vxpo494AJlA+RyCSp2pcxsCrJYd4LKUg3LiB4E8fMid/k2rV0UPTPST556zfjNSG
|
||||||
|
Linjol0DzntXTp9ukINKWjCq23HPNioAl9NS9E/TfTwee8ygzipJr5n00OKb+MNR
|
||||||
|
rYzOpOPSLd4Pb3erRvFj8ov+DbabNfcW9yDH+EVMuLKxTiXvPKlEcTbuRqglU+/8
|
||||||
|
WGOJs2dd4eoDs/E3Fd00XDrSp+Ib1QnpLBJKNJS4mxYVb4wqaTs64tjzqmhvThSt
|
||||||
|
iLz3xRRPsNRK9PWfkCtpTfcZfcTR67NKOqbUwy0IZvROC0idQjnWYdcn6D9nJ5Lf
|
||||||
|
ezLOnaB69/5fkiD6rL+24R0m7iQfoEC/UydMpk+k+IOMgpvBaXY+dB8y2/6Fok46
|
||||||
|
5QsRB9NB132i4wA/HlfyiQQJjZTAACLp4wUv2dDUcdiXpuBFpbPmmh3vFzVDLUjH
|
||||||
|
PoV1sFU8x3z1K5+ZyYgiKayScgEP+96HpOrVT6cGPyRJKgAYPeOMwgiTCxx7qZbZ
|
||||||
|
Ib4PwEIX3FwuzVR6gPIbj5o1ERqRrw++ntUKjrVK/yEk6N/BKkZeF7Nkfmc/FYQJ
|
||||||
|
xHSPwLwoT/9csaf6I+o+N0U8SY/BeBDCLJNLYXxa7/Fp/1Hxm4TMEsN3Mti3rg==
|
||||||
|
-----END CERTIFICATE-----
|
||||||
18
src/blackmisc/ssl/swiftclient.key
Normal file
18
src/blackmisc/ssl/swiftclient.key
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
-----BEGIN RSA PRIVATE KEY-----
|
||||||
|
Proc-Type: 4,ENCRYPTED
|
||||||
|
DEK-Info: DES-EDE3-CBC,49D1BC755A1D23B3
|
||||||
|
|
||||||
|
3DVjf+GxDZIAlf0NFIg6AGcu1qTLe4K0iRhUqmoV2PAV0cra+2kMqq9B7GGGJXLA
|
||||||
|
mmyU+WgBItJU+NDfet/0bRfQaaFDB4Ake4A7AlP1eHfvM6UP5N4Qz44HolzJmw9Z
|
||||||
|
KX0vYDFKkABeblJMEPijIrXAG7LU3FFlzCy//3bqBnEyQaQ51j5AVvhUp2EMaYnT
|
||||||
|
nHsWRdJqHRSILUVL1KrlMwOgde3N6/zBvkL/+nhwipteGH9LGWfHT+qdIEuu7Keo
|
||||||
|
vO2owiep6G9FO95iMwsbExjg2nPr9qbEkLtJi2OuBveWhrGFgdUPreShmWC2MEwb
|
||||||
|
PFUAzoM0jzJMU32rWDqIkYnGbBPEapZcgx6j4QYsTwdBgBzVeeMJd37iezjL/uPI
|
||||||
|
yc+MHaDO7Z6WhykH6seWAmA5T9OFg0unmQttRsJrXYhjLC5Qw9KTG7PAOL/SGs6n
|
||||||
|
JMOF5J7Q3ljLNbFjGqnqlPQj2JTf+Bvs1mWi2m/GnTuhT9YNr766e9/wQjtSolMC
|
||||||
|
ATJEK5QkzMWtR8fDfol7aBjiYlptZOmOzRoBDaxlpsS8Huv5leevjY/8Il07+Qkw
|
||||||
|
LGClxTCda5JXN8q0E8xDGhiQBVYJqBpjtyDt2lZM4opx6wqYBiNkXrfTzLij5EkM
|
||||||
|
Rp1MpTZEK/wWZ982yC5ymUChaMP8BKDJT4I7kNzIqqVoi2WvRDtF4X5qeE30Y+uz
|
||||||
|
VSqnrFrvrEAz0ZWN0aCEv5aTnUwgPm+2qxTgTwT4u+sY3u5k3M5LAhzs4jBx0sqL
|
||||||
|
IU/4/YWNju0YsN+RXhKUpg4kFP2/bXLJOFYJ4yFPkAeXSwZJ0lF3Kg==
|
||||||
|
-----END RSA PRIVATE KEY-----
|
||||||
Reference in New Issue
Block a user