websitepanel/WebsitePanel/Sources/WebsitePanel.Whois/WhoisSettings.cs

123 lines
No EOL
5.1 KiB
C#

// Copyright (c) 2012, Outercurve Foundation.
// All rights reserved.
//
// Redistribution and use in source and binary forms, with or without modification,
// are permitted provided that the following conditions are met:
//
// - Redistributions of source code must retain the above copyright notice, this
// list of conditions and the following disclaimer.
//
// - Redistributions in binary form must reproduce the above copyright notice,
// this list of conditions and the following disclaimer in the documentation
// and/or other materials provided with the distribution.
//
// - Neither the name of the Outercurve Foundation nor the names of its
// contributors may be used to endorse or promote products derived from this
// software without specific prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
using System;
using System.Collections;
using System.Collections.Generic;
using System.Text;
namespace WebsitePanel.Ecommerce.EnterpriseServer
{
internal class WhoisSettings
{
public readonly static Hashtable Parsers;
public readonly static Hashtable WhoisServers;
public const string UANIC = "UANIC";
public const string INTERNIC = "INTERNIC";
public const string PIR = "PIR";
public const string EDUCAUSE = "EDUCAUSE";
public const string NOMINET = "NOMINET";
public const string AUREGISTRY = "AUREGISTRY";
public const string EURID = "EURID";
public const string ROMANIAN = "ROMANIAN";
public const string SWITCH = "SWITCH";
public const string NEUSTAR = "NEUSTAR";
public const string NUDOMAINLTD = "NUDOMAINLTD";
public const string NEULEVEL = "NEULEVEL";
public const string AFFILIAS_LTD = "AFFILIAS_LTD";
public const string SIDN = "SIDN";
public const string AFNIC = "AFNIC";
public const string TIERED_ACCESS = "TIERED_ACCESS";
public const string mTLD = "mTLD";
public const string INTERNET_NZ = "InternetNZ";
private WhoisSettings() { }
static WhoisSettings()
{
WhoisServers = new Hashtable();
Parsers = new Hashtable();
InitParsers();
InitWhoisServers();
}
static void InitWhoisServers()
{
WhoisServers.Add("ua", "whois.ua");
WhoisServers.Add("com", "whois.verisign-grs.com");
WhoisServers.Add("cc", "ccwhois.verisign-grs.com");
WhoisServers.Add("net", "whois.verisign-grs.com");
WhoisServers.Add("edu", "whois.educause.net");
WhoisServers.Add("org", "whois.publicinterestregistry.net");
WhoisServers.Add("uk", "whois.nic.uk");
WhoisServers.Add("au", "whois.ausregistry.net");
WhoisServers.Add("us", "whois.nic.us");
WhoisServers.Add("eu", "whois.eu");
WhoisServers.Add("ro", "whois.rotld.ro");
WhoisServers.Add("ch", "whois.nic.ch");
WhoisServers.Add("tv", "tvwhois.verisign-grs.com");
WhoisServers.Add("biz", "whois.biz");
WhoisServers.Add("info", "whois.afilias.net");
WhoisServers.Add("nl", "whois.domain-registry.nl");
WhoisServers.Add("fr", "whois.nic.fr");
WhoisServers.Add("be", "whois.dns.be");
WhoisServers.Add("name", "whois.nic.name");
WhoisServers.Add("mobi", "whois.dotmobiregistry.net");
WhoisServers.Add("nu", "whois.nic.nu");
WhoisServers.Add("nz", "srs-ak.srs.net.nz");
}
static void InitParsers()
{
Parsers.Add("whois.ua", UANIC);
Parsers.Add("whois.nic.nu", NUDOMAINLTD);
Parsers.Add("whois.internic.net", INTERNIC);
Parsers.Add("whois.verisign-grs.com", INTERNIC);
Parsers.Add("ccwhois.verisign-grs.com", INTERNIC);
Parsers.Add("whois.publicinterestregistry.net", PIR);
Parsers.Add("whois.educause.net", EDUCAUSE);
Parsers.Add("whois.nic.uk", NOMINET);
Parsers.Add("whois.ausregistry.net", AUREGISTRY);
Parsers.Add("whois.nic.us", NEUSTAR);
Parsers.Add("whois.eu", EURID);
Parsers.Add("whois.dns.be", EURID);
Parsers.Add("whois.rotld.ro", ROMANIAN);
Parsers.Add("whois.nic.ch", SWITCH);
Parsers.Add("tvwhois.verisign-grs.com", INTERNIC);
Parsers.Add("whois.biz", NEULEVEL);
Parsers.Add("whois.afilias.net", AFFILIAS_LTD);
Parsers.Add("whois.domain-registry.nl", SIDN);
Parsers.Add("whois.nic.fr", AFNIC);
Parsers.Add("whois.nic.name", TIERED_ACCESS);
Parsers.Add("whois.dotmobiregistry.net", mTLD);
Parsers.Add("srs-ak.srs.net.nz", INTERNET_NZ);
}
}
}