Files
routeros-geoip/countries.go
Steven Polley b1ed8f75ec mondern slopify hand crafted code for the greater good.
(move from user specified blocklist download URLs to simply country codes with multiple providers available.)
2026-05-01 17:18:50 -06:00

176 lines
3.3 KiB
Go

package main
// countryNames maps ISO 3166-1 alpha-2 country codes to uppercase display names
// used in RouterOS address list comments.
var countryNames = map[string]string{
"af": "AFGHANISTAN",
"al": "ALBANIA",
"dz": "ALGERIA",
"ao": "ANGOLA",
"ar": "ARGENTINA",
"am": "ARMENIA",
"au": "AUSTRALIA",
"at": "AUSTRIA",
"az": "AZERBAIJAN",
"bh": "BAHRAIN",
"bd": "BANGLADESH",
"by": "BELARUS",
"be": "BELGIUM",
"bz": "BELIZE",
"bj": "BENIN",
"bt": "BHUTAN",
"bo": "BOLIVIA",
"ba": "BOSNIA AND HERZEGOVINA",
"bw": "BOTSWANA",
"br": "BRAZIL",
"bn": "BRUNEI",
"bg": "BULGARIA",
"bf": "BURKINA FASO",
"bi": "BURUNDI",
"kh": "CAMBODIA",
"cm": "CAMEROON",
"ca": "CANADA",
"cf": "CENTRAL AFRICAN REPUBLIC",
"td": "CHAD",
"cl": "CHILE",
"cn": "CHINA",
"co": "COLOMBIA",
"cg": "CONGO",
"cd": "CONGO (DRC)",
"cr": "COSTA RICA",
"hr": "CROATIA",
"cu": "CUBA",
"cy": "CYPRUS",
"cz": "CZECH REPUBLIC",
"dk": "DENMARK",
"dj": "DJIBOUTI",
"do": "DOMINICAN REPUBLIC",
"ec": "ECUADOR",
"eg": "EGYPT",
"sv": "EL SALVADOR",
"gq": "EQUATORIAL GUINEA",
"er": "ERITREA",
"ee": "ESTONIA",
"et": "ETHIOPIA",
"fi": "FINLAND",
"fr": "FRANCE",
"ga": "GABON",
"gm": "GAMBIA",
"ge": "GEORGIA",
"de": "GERMANY",
"gh": "GHANA",
"gr": "GREECE",
"gt": "GUATEMALA",
"gn": "GUINEA",
"gy": "GUYANA",
"ht": "HAITI",
"hn": "HONDURAS",
"hk": "HONG KONG",
"hu": "HUNGARY",
"is": "ICELAND",
"in": "INDIA",
"id": "INDONESIA",
"ir": "IRAN",
"iq": "IRAQ",
"ie": "IRELAND",
"il": "ISRAEL",
"it": "ITALY",
"jm": "JAMAICA",
"jp": "JAPAN",
"jo": "JORDAN",
"kz": "KAZAKHSTAN",
"ke": "KENYA",
"kw": "KUWAIT",
"kg": "KYRGYZSTAN",
"la": "LAOS",
"lv": "LATVIA",
"lb": "LEBANON",
"ly": "LIBYA",
"lt": "LITHUANIA",
"lu": "LUXEMBOURG",
"mo": "MACAU",
"mg": "MADAGASCAR",
"mw": "MALAWI",
"my": "MALAYSIA",
"ml": "MALI",
"mt": "MALTA",
"mr": "MAURITANIA",
"mu": "MAURITIUS",
"mx": "MEXICO",
"md": "MOLDOVA",
"mn": "MONGOLIA",
"me": "MONTENEGRO",
"ma": "MOROCCO",
"mz": "MOZAMBIQUE",
"mm": "MYANMAR",
"na": "NAMIBIA",
"np": "NEPAL",
"nl": "NETHERLANDS",
"nz": "NEW ZEALAND",
"ni": "NICARAGUA",
"ne": "NIGER",
"ng": "NIGERIA",
"kp": "NORTH KOREA",
"mk": "NORTH MACEDONIA",
"no": "NORWAY",
"om": "OMAN",
"pk": "PAKISTAN",
"ps": "PALESTINE",
"pa": "PANAMA",
"pg": "PAPUA NEW GUINEA",
"py": "PARAGUAY",
"pe": "PERU",
"ph": "PHILIPPINES",
"pl": "POLAND",
"pt": "PORTUGAL",
"qa": "QATAR",
"ro": "ROMANIA",
"ru": "RUSSIA",
"rw": "RWANDA",
"sa": "SAUDI ARABIA",
"sn": "SENEGAL",
"rs": "SERBIA",
"sg": "SINGAPORE",
"sk": "SLOVAKIA",
"si": "SLOVENIA",
"so": "SOMALIA",
"za": "SOUTH AFRICA",
"kr": "SOUTH KOREA",
"ss": "SOUTH SUDAN",
"es": "SPAIN",
"lk": "SRI LANKA",
"sd": "SUDAN",
"se": "SWEDEN",
"ch": "SWITZERLAND",
"sy": "SYRIA",
"tw": "TAIWAN",
"tj": "TAJIKISTAN",
"tz": "TANZANIA",
"th": "THAILAND",
"tg": "TOGO",
"tn": "TUNISIA",
"tr": "TURKEY",
"tm": "TURKMENISTAN",
"ug": "UGANDA",
"ua": "UKRAINE",
"ae": "UNITED ARAB EMIRATES",
"gb": "UNITED KINGDOM",
"us": "UNITED STATES",
"uy": "URUGUAY",
"uz": "UZBEKISTAN",
"ve": "VENEZUELA",
"vn": "VIETNAM",
"ye": "YEMEN",
"zm": "ZAMBIA",
"zw": "ZIMBABWE",
}
// CountryName returns the display name for a country code.
// Falls back to the uppercase country code if not found.
func CountryName(code string) string {
if name, ok := countryNames[code]; ok {
return name
}
return code
}