Skip to content

Commit 50c3b9d

Browse files
committed
Remove fromPunycode
Add ee, fi, lt, lv to allowed IDN parsing list WE2-1173 Signed-off-by: Raul Metsma <[email protected]>
1 parent 1cab9e2 commit 50c3b9d

File tree

6 files changed

+17
-55
lines changed

6 files changed

+17
-55
lines changed

src/controller/application.cpp

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,15 @@ Application::Application(int& argc, char** argv, const QString& name) :
6060
installTranslator(translator);
6161
loadTranslations();
6262

63+
auto list = QUrl::idnWhitelist();
64+
list.append({
65+
QStringLiteral("fi"),
66+
QStringLiteral("ee"),
67+
QStringLiteral("lt"),
68+
QStringLiteral("lv"),
69+
});
70+
QUrl::setIdnWhitelist(list);
71+
6372
for (const QString& font : QDir(QStringLiteral(":/fonts")).entryList()) {
6473
QFontDatabase::addApplicationFont(QStringLiteral(":/fonts/%1").arg(font));
6574
}

src/ui/CMakeLists.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
add_library(ui STATIC
22
certificatewidget.cpp
33
certificatewidget.hpp
4-
punycode.hpp
54
ui.cpp
65
webeiddialog.cpp
76
webeiddialog.hpp

src/ui/dialog.ui

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -513,6 +513,9 @@ border-radius: 4px;</string>
513513
<property name="focusPolicy">
514514
<enum>Qt::TabFocus</enum>
515515
</property>
516+
<property name="textFormat">
517+
<enum>Qt::PlainText</enum>
518+
</property>
516519
</widget>
517520
</item>
518521
</layout>
@@ -586,6 +589,9 @@ border-radius: 4px;</string>
586589
<property name="focusPolicy">
587590
<enum>Qt::TabFocus</enum>
588591
</property>
592+
<property name="textFormat">
593+
<enum>Qt::PlainText</enum>
594+
</property>
589595
</widget>
590596
</item>
591597
</layout>

src/ui/punycode.hpp

Lines changed: 0 additions & 39 deletions
This file was deleted.

src/ui/webeiddialog.cpp

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@
2222

2323
#include "webeiddialog.hpp"
2424
#include "application.hpp"
25-
#include "punycode.hpp"
2625

2726
#include "ui_dialog.h"
2827

@@ -43,8 +42,6 @@
4342
#include <unistd.h>
4443
#endif
4544

46-
#include <unordered_map>
47-
4845
#if QT_VERSION < QT_VERSION_CHECK(6, 4, 0)
4946
constexpr inline QLatin1String operator"" _L1(const char* str, size_t size) noexcept
5047
{
@@ -336,7 +333,7 @@ void WebEidDialog::onSmartCardStatusUpdate(const RetriableError status)
336333
void WebEidDialog::onMultipleCertificatesReady(
337334
const QUrl& origin, const std::vector<EidCertificateAndPinInfo>& certAndPinInfos)
338335
{
339-
ui->selectCertificateOriginLabel->setText(fromPunycode(origin));
336+
ui->selectCertificateOriginLabel->setText(origin.host(QUrl::PrettyDecoded));
340337
setupCertificateAndPinInfo(certAndPinInfos);
341338

342339
switch (currentCommand) {
@@ -390,7 +387,7 @@ void WebEidDialog::onMultipleCertificatesReady(
390387
void WebEidDialog::onSingleCertificateReady(const QUrl& origin,
391388
const EidCertificateAndPinInfo& certAndPinInfo)
392389
{
393-
ui->selectCertificateOriginLabel->setText(fromPunycode(origin));
390+
ui->selectCertificateOriginLabel->setText(origin.host(QUrl::PrettyDecoded));
394391
ui->pinInputOriginLabel->setText(ui->selectCertificateOriginLabel->text());
395392
const bool useExternalPinDialog = certAndPinInfo.eid->providesExternalPinDialog();
396393

tests/tests/main.cpp

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,6 @@
2626
#include "controller.hpp"
2727
#include "command-handlers/getcertificate.hpp"
2828

29-
#include "../ui/punycode.hpp"
30-
3129
#include "mock-ui.hpp"
3230
#include "getcommandhandler-mock.hpp"
3331

@@ -72,8 +70,6 @@ private slots:
7270

7371
void authenticate_validArgumentsResultInValidToken();
7472

75-
void fromPunycode_decodesEeDomain();
76-
7773
void quit_exits();
7874

7975
private:
@@ -201,12 +197,6 @@ void WebEidTests::authenticate_validArgumentsResultInValidToken()
201197
QStringLiteral("MIIEAzCCA2WgAwIBAgIQOWkBW"));
202198
}
203199

204-
void WebEidTests::fromPunycode_decodesEeDomain()
205-
{
206-
QCOMPARE(fromPunycode(QUrl(QStringLiteral("https://xn--igusnunik-p7af.ee"))),
207-
QStringLiteral("\u00F5igusn\u00F5unik.ee"));
208-
}
209-
210200
void WebEidTests::quit_exits()
211201
{
212202
try {

0 commit comments

Comments
 (0)