Update public suffix list to today's latest

Fetched from the authoritative source, verified the content matches
that of the current master revision in the github repository.

Amend one cookie jar test to find the last group in the last chunk
correctly - each group arises from a non-empty hsah-table entry, but
the last few hash-table entries may be empty, in which case the last
group isn't just before the last index, it's earlier by the number of
empty hash table entries. In the process, amend this test and the
related test of the end of the first chunk to iterate all the entries
in the group (in the present version, as it happens, each end-group
has just one entry, but that may vary).

Task-number: QTBUG-90214
Pick-to: 6.0 5.15
Change-Id: I6da365a6ca558124f8275e392735071dc77e04bb
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
bb10
Edward Welbourne 2021-01-21 13:57:19 +01:00
parent 05e67fbcab
commit ad16f79e5f
3 changed files with 14433 additions and 14395 deletions

View File

@ -20,7 +20,7 @@ supported by Qt (by the QNetworkCookieJar class).",
"Homepage": "Consult https://github.com/publicsuffix/list for the sha1 but download from ...",
"Homepage": "http://publicsuffix.org/",
"Version": "f8247fa33109a86679b1c8edb109542b85851110, fetched on 2020-11-05",
"Version": "f2cce86a42f38265c67caa32c6e0ff61793bb534, fetched on 2021-01-21",
"License": "Mozilla Public License 2.0",
"LicenseFile": "PSL-LICENSE.txt",
"LicenseId": "MPL-2.0",

File diff suppressed because it is too large Load Diff

View File

@ -480,22 +480,27 @@ void tst_QNetworkCookieJar::effectiveTLDs_data()
QTest::newRow("yes-platform.sh") << "eu.platform.sh" << true;
QTest::newRow("no-platform.sh") << "something.platform.sh" << false;
int i;
for (i = 0; tldIndices[i] < tldChunks[0]; i++) { }
Q_ASSERT(i < tldCount);
int TLDsInFirstChunk = i;
const char *lastGroupFromFirstChunk = &tldData[0][tldIndices[TLDsInFirstChunk - 1]];
QTest::addRow("lastGroupFromFirstChunk: %s", lastGroupFromFirstChunk)
<< lastGroupFromFirstChunk
<< true;
int inFirst = 0; // First group is guaranteed to be in first chunk.
while (tldIndices[inFirst] < tldChunks[0])
++inFirst;
Q_ASSERT(inFirst < tldCount);
const char *lastGroupFromFirstChunk = &tldData[0][tldIndices[inFirst - 1]];
const char *cut = &tldData[0][tldChunks[0]];
for (const char *entry = lastGroupFromFirstChunk; entry < cut; entry += strlen(entry) + 1)
QTest::addRow("lastGroupFromFirstChunk: %s", entry) << entry << true;
Q_ASSERT(tldChunkCount > 1); // There are enough TLDs to fill 64K bytes
// The tldCount + 1 entries in tldIndices are indexed by hash value and some
// hash cells may be empty: we need to find the last non-empty hash cell.
int tail = tldCount;
while (tldIndices[tail - 1] == tldIndices[tail])
--tail;
Q_ASSERT(tldIndices[tail] == tldChunks[tldChunkCount - 1]);
const char *lastGroupFromLastChunk =
&tldData[tldChunkCount-1][tldIndices[tldCount - 1] - tldChunks[tldChunkCount - 2]];
QTest::addRow("lastGroupFromLastChunk: %s", lastGroupFromLastChunk)
<< lastGroupFromLastChunk
<< true;
&tldData[tldChunkCount-1][tldIndices[tail - 1] - tldChunks[tldChunkCount - 2]];
const char *end = &tldData[tldChunkCount-1][tldIndices[tail] - tldChunks[tldChunkCount - 2]];
for (const char *entry = lastGroupFromLastChunk; entry < end; entry += strlen(entry) + 1)
QTest::addRow("lastGroupFromLastChunk: %s", entry) << entry << true;
}
void tst_QNetworkCookieJar::effectiveTLDs()