Skip to content

Commit 8f16a52

Browse files
committed
Fix undefined indices for some ccTLDs
For some ccTLD domains, the ICANN list does not provide a TLD, such as .cy of Cyprus. While there is www.nic.cy so unsure if this is a bug or by design. Will have to follow up with the repo maintainers.
1 parent 5ee2ed9 commit 8f16a52

File tree

2 files changed

+54
-58
lines changed

2 files changed

+54
-58
lines changed

publicsuffixlists/public_suffix_list.php

Lines changed: 44 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -631,22 +631,19 @@
631631
array (
632632
0 => 'gov.cx',
633633
),
634-
'cy' =>
635-
array (
636-
0 => 'ac.cy',
637-
1 => 'biz.cy',
638-
2 => 'com.cy',
639-
3 => 'ekloges.cy',
640-
4 => 'gov.cy',
641-
5 => 'ltd.cy',
642-
6 => 'name.cy',
643-
7 => 'net.cy',
644-
8 => 'org.cy',
645-
9 => 'parliament.cy',
646-
10 => 'press.cy',
647-
11 => 'pro.cy',
648-
12 => 'tm.cy',
649-
),
634+
'ac.cy' => 'ac.cy',
635+
'biz.cy' => 'biz.cy',
636+
'com.cy' => 'com.cy',
637+
'ekloges.cy' => 'ekloges.cy',
638+
'gov.cy' => 'gov.cy',
639+
'ltd.cy' => 'ltd.cy',
640+
'name.cy' => 'name.cy',
641+
'net.cy' => 'net.cy',
642+
'org.cy' => 'org.cy',
643+
'parliament.cy' => 'parliament.cy',
644+
'press.cy' => 'press.cy',
645+
'pro.cy' => 'pro.cy',
646+
'tm.cy' => 'tm.cy',
650647
'cz' => 'cz',
651648
'de' => 'de',
652649
'dj' => 'dj',
@@ -4208,23 +4205,20 @@
42084205
7 => 'mil.ng',
42094206
8 => 'mobi.ng',
42104207
),
4211-
'ni' =>
4212-
array (
4213-
0 => 'com.ni',
4214-
1 => 'gob.ni',
4215-
2 => 'edu.ni',
4216-
3 => 'org.ni',
4217-
4 => 'nom.ni',
4218-
5 => 'net.ni',
4219-
6 => 'mil.ni',
4220-
7 => 'co.ni',
4221-
8 => 'biz.ni',
4222-
9 => 'web.ni',
4223-
10 => 'int.ni',
4224-
11 => 'ac.ni',
4225-
12 => 'in.ni',
4226-
13 => 'info.ni',
4227-
),
4208+
'com.ni' => 'com.ni',
4209+
'gob.ni' => 'gob.ni',
4210+
'edu.ni' => 'edu.ni',
4211+
'org.ni' => 'org.ni',
4212+
'nom.ni' => 'nom.ni',
4213+
'net.ni' => 'net.ni',
4214+
'mil.ni' => 'mil.ni',
4215+
'co.ni' => 'co.ni',
4216+
'biz.ni' => 'biz.ni',
4217+
'web.ni' => 'web.ni',
4218+
'int.ni' => 'int.ni',
4219+
'ac.ni' => 'ac.ni',
4220+
'in.ni' => 'in.ni',
4221+
'info.ni' => 'info.ni',
42284222
'nl' =>
42294223
array (
42304224
0 => 'bv.nl',
@@ -6397,26 +6391,23 @@
63976391
'اليمن' => 'اليمن',
63986392
'xxx' => 'xxx',
63996393
'ye' => 'ye',
6400-
'za' =>
6401-
array (
6402-
0 => 'ac.za',
6403-
1 => 'agrica.za',
6404-
2 => 'alt.za',
6405-
3 => 'co.za',
6406-
4 => 'edu.za',
6407-
5 => 'gov.za',
6408-
6 => 'grondar.za',
6409-
7 => 'law.za',
6410-
8 => 'mil.za',
6411-
9 => 'net.za',
6412-
10 => 'ngo.za',
6413-
11 => 'nis.za',
6414-
12 => 'nom.za',
6415-
13 => 'org.za',
6416-
14 => 'school.za',
6417-
15 => 'tm.za',
6418-
16 => 'web.za',
6419-
),
6394+
'ac.za' => 'ac.za',
6395+
'agrica.za' => 'agrica.za',
6396+
'alt.za' => 'alt.za',
6397+
'co.za' => 'co.za',
6398+
'edu.za' => 'edu.za',
6399+
'gov.za' => 'gov.za',
6400+
'grondar.za' => 'grondar.za',
6401+
'law.za' => 'law.za',
6402+
'mil.za' => 'mil.za',
6403+
'net.za' => 'net.za',
6404+
'ngo.za' => 'ngo.za',
6405+
'nis.za' => 'nis.za',
6406+
'nom.za' => 'nom.za',
6407+
'org.za' => 'org.za',
6408+
'school.za' => 'school.za',
6409+
'tm.za' => 'tm.za',
6410+
'web.za' => 'web.za',
64206411
'zm' => 'zm',
64216412
'zw' => 'zw',
64226413
'aaa' => 'aaa',

src/serializeToPHP.php

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -91,12 +91,17 @@
9191
// Check if there are SLD+'s
9292
if ($tldDot > 0) {
9393
$tld = substr($line, $tldDot+1);
94-
if (is_array($tldArr[$tld])) {
95-
// Append to sub-array
96-
$tldArr[$tld][] = $line;
94+
if (isset($tldArr[$tld])) {
95+
if (is_array($tldArr[$tld])) {
96+
// Append to sub-array with existing values
97+
$tldArr[$tld][] = $line;
98+
} else {
99+
// Init just one array with the new value
100+
$tldArr[$tld] = array($line);
101+
}
97102
} else {
98-
// Init just one array
99-
$tldArr[$tld] = array($line);
103+
// Store just a string, not an array
104+
$tldArr[$line] = $line;
100105
}
101106
} else {
102107
// Else just store the TLD as the key

0 commit comments

Comments
 (0)