GeoIPRecord * GeoIP_record_by_addr (GeoIP* gi, const char *addr) { unsigned long ipnum; if (addr == NULL) { return 0; } ipnum = _GeoIP_addr_to_num(addr); return _get_record(gi, ipnum); }
char *GeoIP_name_by_addr (GeoIP* gi, const char *addr) { unsigned long ipnum; if (addr == NULL) { return 0; } ipnum = _GeoIP_addr_to_num(addr); return _get_name(gi, ipnum); }
int GeoIP_record_id_by_addr (GeoIP* gi, const char *addr) { unsigned long ipnum; if (gi->databaseType != GEOIP_CITY_EDITION_REV0 && gi->databaseType != GEOIP_CITY_EDITION_REV1) { printf("Invalid database type %s, expected %s\n", GeoIPDBDescription[(int)gi->databaseType], GeoIPDBDescription[GEOIP_CITY_EDITION_REV1]); return 0; } if (addr == NULL) { return 0; } ipnum = _GeoIP_addr_to_num(addr); return _GeoIP_seek_record(gi, ipnum); }
int GeoIP_id_by_addr (GeoIP* gi, const char *addr) { unsigned long ipnum; int ret; if (addr == NULL) { return 0; } if (gi->databaseType != GEOIP_COUNTRY_EDITION && gi->databaseType != GEOIP_PROXY_EDITION && gi->databaseType != GEOIP_NETSPEED_EDITION) { printf("Invalid database type %s, expected %s\n", GeoIPDBDescription[(int)gi->databaseType], GeoIPDBDescription[GEOIP_COUNTRY_EDITION]); return 0; } ipnum = _GeoIP_addr_to_num(addr); ret = _GeoIP_seek_record(gi, ipnum) - COUNTRY_BEGIN; return ret; }
unsigned int info_getter_ip_check::get_ip(std::string const& ip_string) { return _GeoIP_addr_to_num(ip_string.c_str()); }