Fix WHOIS to correctly extract the TLD for multi-segment TLDs (or SLDs) such as co.uk, ngo.us

This commit is contained in:
Alstra Solutions Ltd. 2024-06-16 06:04:55 +00:00
parent 51a0a7215c
commit 9762e87ff6

View file

@ -111,7 +111,13 @@ $server->on('receive', function ($server, $fd, $reactorId, $data) use ($c, $pool
// Extract TLD from the domain and prepend a dot
$parts = explode('.', $domain);
$tld = "." . end($parts);
// Handle multi-segment TLDs (e.g., co.uk, ngo.us, etc.)
if (count($parts) > 2) {
$tld = "." . $parts[count($parts) - 2] . "." . $parts[count($parts) - 1];
} else {
$tld = "." . end($parts);
}
// Check if the TLD exists in the domain_tld table
$stmtTLD = $pdo->prepare("SELECT COUNT(*) FROM domain_tld WHERE tld = :tld");