From bd0eb5d0aa6ba98143819522b8ababcc51efb561 Mon Sep 17 00:00:00 2001 From: Christopher Mahoney <56850185+Alextopher@users.noreply.github.com> Date: Wed, 17 Jan 2024 12:57:45 -0500 Subject: [PATCH] Revert "Add IPv6 support" --- src/ipinfo.rs | 26 +++++++------------------- 1 file changed, 7 insertions(+), 19 deletions(-) diff --git a/src/ipinfo.rs b/src/ipinfo.rs index 170abac..a0b358b 100644 --- a/src/ipinfo.rs +++ b/src/ipinfo.rs @@ -31,10 +31,6 @@ use tokio::time::timeout; const COUNTRY_FLAG_URL: &str = "https://cdn.ipinfo.io/static/images/countries-flags/"; - -const BASE_URL: &str = "https://ipinfo.io"; -const BASE_URL_V6: &str = "https://v6.ipinfo.io"; - /// IpInfo structure configuration. pub struct IpInfoConfig { /// IPinfo access token. @@ -79,6 +75,7 @@ impl Default for IpInfoConfig { /// IPinfo requests context structure. pub struct IpInfo { + url: String, token: Option, client: reqwest::Client, cache: LruCache, @@ -119,7 +116,10 @@ impl IpInfo { let client = reqwest::Client::builder().timeout(config.timeout).build()?; + let url = "https://ipinfo.io".to_owned(); + let mut ipinfo_obj = Self { + url, client, token: config.token, cache: LruCache::new( @@ -260,7 +260,7 @@ impl IpInfo { ) -> Result, IpError> { // Lookup cache misses which are not bogon let response = client - .post(&format!("{}/batch", BASE_URL)) + .post(&format!("{}/batch", self.url)) .headers(Self::construct_headers()) .bearer_auth(self.token.as_deref().unwrap_or_default()) .json(&json!(ips)) @@ -303,18 +303,6 @@ impl IpInfo { /// } /// ``` pub async fn lookup(&mut self, ip: &str) -> Result { - self._lookup(ip, BASE_URL).await - } - - pub async fn lookup_v6(&mut self, ip: &str) -> Result { - self._lookup(ip, BASE_URL_V6).await - } - - async fn _lookup( - &mut self, - ip: &str, - base_url: &str, - ) -> Result { if is_bogon(ip) { return Ok(IpDetails { ip: ip.to_string(), @@ -333,7 +321,7 @@ impl IpInfo { // lookup in case of a cache miss let response = self .client - .get(&format!("{}/{}", base_url, ip)) + .get(&format!("{}/{}", self.url, ip)) .headers(Self::construct_headers()) .bearer_auth(self.token.as_deref().unwrap_or_default()) .send() @@ -382,7 +370,7 @@ impl IpInfo { return Err(err!(MapLimitError)); } - let map_url = &format!("{}/tools/map?cli=1", BASE_URL); + let map_url = &format!("{}/tools/map?cli=1", self.url); let client = self.client.clone(); let json_ips = serde_json::json!(ips);