]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
remove GeoIP2 `metro` and `metrocode` 12217/head
authorColin Vidal <colin@isc.org>
Tue, 9 Jun 2026 13:38:50 +0000 (15:38 +0200)
committerColin Vidal <colin@isc.org>
Thu, 18 Jun 2026 05:23:31 +0000 (07:23 +0200)
The `geoip metro` and `geoip metrocode` configuration options has been
removed as metro code are deprecated from MaxMind library.

bin/tests/system/geoip2/conf/good-options.conf
lib/dns/geoip2.c
lib/dns/include/dns/geoip.h
lib/isccfg/aclconf.c

index 4e39fba9a2352dfd1298340abe09e64832829b8a..d29871884f95751752d495e53ee154dab57bb4aa 100644 (file)
@@ -13,8 +13,6 @@ options {
        recursion no;
        geoip-directory "data";
        allow-query {
-               geoip metro 828;
-               geoip metrocode 828;
                geoip tz "America/Los_Angeles";
                geoip timezone "America/Los_Angeles";
                geoip postal 95060;
index c47edeea99b05eb7517ed613c01590c824b350bd..effbb7fdbbfa20172a8494d7cd4a78143e5d8c76 100644 (file)
@@ -166,7 +166,6 @@ geoip2_database(const dns_geoip_databases_t *geoip,
        case dns_geoip_city_name:
        case dns_geoip_city_postalcode:
        case dns_geoip_city_timezonecode:
-       case dns_geoip_city_metrocode:
        case dns_geoip_city_areacode:
                return geoip->city;
 
@@ -319,14 +318,6 @@ dns_geoip_match(const isc_netaddr_t *reqaddr,
                }
                break;
 
-       case dns_geoip_city_metrocode:
-               ret = MMDB_get_value(&state->entry, &value, "location",
-                                    "metro_code", (char *)0);
-               if (ret == MMDB_SUCCESS) {
-                       return match_string(&value, elt->as_string);
-               }
-               break;
-
        case dns_geoip_isp_name:
                ret = MMDB_get_value(&state->entry, &value, "isp", (char *)0);
                if (ret == MMDB_SUCCESS) {
index 9b461966547dc6e0791f2757fad415dd23193452..d566ec4f45804aad801fa1474fadf2302761e45b 100644 (file)
@@ -65,7 +65,6 @@ typedef enum {
        dns_geoip_city_regionname,
        dns_geoip_city_name,
        dns_geoip_city_postalcode,
-       dns_geoip_city_metrocode,
        dns_geoip_city_areacode,
        dns_geoip_city_continentcode,
        dns_geoip_city_continent,
index cea7a84328e02408eaa6b0b4c8126b58f2dbd5dc..9d31fdf07d472ca4c99a4c89329859bbb6be8885 100644 (file)
@@ -315,7 +315,6 @@ get_subtype(const cfg_obj_t *obj, dns_geoip_subtype_t subtype,
         */
        case dns_geoip_city_name:
        case dns_geoip_city_postalcode:
-       case dns_geoip_city_metrocode:
        case dns_geoip_city_areacode:
        case dns_geoip_city_timezonecode:
                if (strcasecmp(dbname, "city") != 0) {
@@ -396,7 +395,6 @@ geoip_can_answer(dns_aclelement_t *elt, cfg_aclconfctx_t *ctx) {
        case dns_geoip_city_regionname:
        case dns_geoip_city_name:
        case dns_geoip_city_postalcode:
-       case dns_geoip_city_metrocode:
        case dns_geoip_city_areacode:
        case dns_geoip_city_continentcode:
        case dns_geoip_city_continent:
@@ -528,11 +526,6 @@ parse_geoip_element(const cfg_obj_t *obj, cfg_aclconfctx_t *ctx,
                                    "geoiop postal code (%s) too long", search);
                        return ISC_R_FAILURE;
                }
-       } else if (strcasecmp(stype, "metro") == 0 ||
-                  strcasecmp(stype, "metrocode") == 0)
-       {
-               subtype = dns_geoip_city_metrocode;
-               de.geoip_elem.as_int = atoi(search);
        } else if (strcasecmp(stype, "tz") == 0 ||
                   strcasecmp(stype, "timezone") == 0)
        {