Skip to content

Commit

Permalink
Ignoring SSL errors on XP
Browse files Browse the repository at this point in the history
  • Loading branch information
ckaiser committed Oct 30, 2016
1 parent 10934a3 commit b3b2762
Show file tree
Hide file tree
Showing 6 changed files with 45 additions and 9 deletions.
5 changes: 4 additions & 1 deletion dialogs/optionsdialog.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -283,6 +283,8 @@ void OptionsDialog::loadSettings()
settings()->endGroup();

settings()->beginGroup("pomf");

// TODO: Move to pomfuploader in a more generic way.
QString pomf_url = settings()->value("pomf_url", "").toString();

if (!pomf_url.isEmpty()) {
Expand All @@ -291,9 +293,10 @@ void OptionsDialog::loadSettings()
}

ui.pomfOptions->ui.pomfUrlComboBox->setCurrentText(settings()->value("pomf_url", "").toString());
ui.pomfOptions->ui.verifyButton->setEnabled(!settings()->value("pomf_url", "").toString().isEmpty());
}
settings()->endGroup();

settings()->endGroup();
settings()->endGroup();

QTimer::singleShot(0, this, &OptionsDialog::updatePreview);
Expand Down
7 changes: 7 additions & 0 deletions tools/uploader/imguruploader.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -111,6 +111,13 @@ void ImgurUploader::upload(const QString &fileName)
connect(this , SIGNAL(cancelRequest()), reply, SLOT(abort()));
connect(this , SIGNAL(cancelRequest()), reply, SLOT(deleteLater()));

connect(reply, &QNetworkReply::sslErrors, [reply](const QList<QSslError> &errors) {
Q_UNUSED(errors);
if (QSysInfo::WindowsVersion == QSysInfo::WV_XP) {
reply->ignoreSslErrors();
}
});

connect(reply, SIGNAL(finished()), this, SLOT(finished()));
}

Expand Down
14 changes: 14 additions & 0 deletions tools/uploader/pomfuploader.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,13 @@ void PomfUploader::verify(const QString &url, VerificationCallback callback)
callback(false);
}
});

connect(reply, &QNetworkReply::sslErrors, [reply](const QList<QSslError> &errors) {
Q_UNUSED(errors);
if (QSysInfo::WindowsVersion == QSysInfo::WV_XP) {
reply->ignoreSslErrors();
}
});
}

void PomfUploader::upload(const QString &fileName)
Expand Down Expand Up @@ -107,6 +114,13 @@ void PomfUploader::upload(const QString &fileName)
emit error(ImageUploader::HostError, description, fileName);
}
});

connect(reply, &QNetworkReply::sslErrors, [reply](const QList<QSslError> &errors) {
Q_UNUSED(errors);
if (QSysInfo::WindowsVersion == QSysInfo::WV_XP) {
reply->ignoreSslErrors();
}
});
}

void PomfUploader::retry()
Expand Down
7 changes: 7 additions & 0 deletions widgets/imguroptionswidget.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -163,4 +163,11 @@ void ImgurOptionsWidget::requestAlbumList()

setUpdatesEnabled(true);
});

connect(reply, &QNetworkReply::sslErrors, [reply](const QList<QSslError> &errors) {
Q_UNUSED(errors);
if (QSysInfo::WindowsVersion == QSysInfo::WV_XP) {
reply->ignoreSslErrors();
}
});
}
18 changes: 10 additions & 8 deletions widgets/pomfoptionswidget.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,8 @@ PomfOptionsWidget::PomfOptionsWidget(QWidget *parent) : QWidget(parent)

connect(ui.pomfUrlComboBox, &QComboBox::currentTextChanged, [&](const QString &text) {
bool validUrl = false;
if (text.startsWith("http://") || text.startsWith("https://")) { // TODO: Something a bit more complex

if (!text.isEmpty() && (text.startsWith("http://") || text.startsWith("https://"))) { // TODO: Something a bit more complex
validUrl = true;
}

Expand All @@ -70,13 +71,7 @@ PomfOptionsWidget::PomfOptionsWidget(QWidget *parent) : QWidget(parent)
QUrl pomfRepoURL = QUrl(ScreenshotManager::instance()->settings()->value("options/upload/pomfRepo").toString());

if (pomfRepoURL.isEmpty()) {
if (QSysInfo::WindowsVersion == QSysInfo::WV_XP) {
// XP doesn't like my SNI cert
pomfRepoURL = QUrl("http://lightscreen.com.ar/pomf.json");
}
else {
pomfRepoURL = QUrl("https://lightscreen.com.ar/pomf.json");
}
pomfRepoURL = QUrl("https://lightscreen.com.ar/pomf.json");
}

auto pomflistReply = Uploader::network()->get(QNetworkRequest(pomfRepoURL));
Expand Down Expand Up @@ -108,5 +103,12 @@ PomfOptionsWidget::PomfOptionsWidget(QWidget *parent) : QWidget(parent)
ui.pomfUrlComboBox->showPopup();
}
});

connect(pomflistReply, &QNetworkReply::sslErrors, [pomflistReply](const QList<QSslError> &errors) {
Q_UNUSED(errors);
if (QSysInfo::WindowsVersion == QSysInfo::WV_XP) {
pomflistReply->ignoreSslErrors();
}
});
});
}
3 changes: 3 additions & 0 deletions widgets/pomfoptionswidget.ui
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,9 @@
</item>
<item row="0" column="2">
<widget class="QPushButton" name="verifyButton">
<property name="enabled">
<bool>false</bool>
</property>
<property name="text">
<string>Verify</string>
</property>
Expand Down

0 comments on commit b3b2762

Please sign in to comment.