From 48a1da2dc2ad3a5ccc60036d43f6f8fbb2c15f1d Mon Sep 17 00:00:00 2001 From: Abdulla Abdurakhmanov Date: Sat, 8 Oct 2022 14:57:50 +0200 Subject: [PATCH] Redacted hash support --- src/hyper_tokio/connector.rs | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/hyper_tokio/connector.rs b/src/hyper_tokio/connector.rs index 4c7eddf..5850d4c 100644 --- a/src/hyper_tokio/connector.rs +++ b/src/hyper_tokio/connector.rs @@ -12,6 +12,8 @@ use rvstruct::ValueStruct; use crate::prelude::hyper_ext::HyperExtensions; use crate::ratectl::SlackApiRateControlConfig; +use std::hash::Hash; +use std::hash::Hasher; use std::sync::Arc; use std::time::Duration; use tracing::*; @@ -70,8 +72,12 @@ impl SlackClientHyperConnec RS: for<'de> serde::de::Deserialize<'de>, { let uri_str = if context.is_sensitive_url { + let mut hasher = std::collections::hash_map::DefaultHasher::new(); + request.uri().path().to_string().hash(&mut hasher); + let u64 = hasher.finish(); + format!( - "{}://{}/-redacted-", + "{}://{}/-redacted-/{}", request .uri() .scheme() @@ -81,7 +87,8 @@ impl SlackClientHyperConnec .uri() .host() .map(|host| host.to_string()) - .unwrap_or_else(|| "unknown-host".to_string()) + .unwrap_or_else(|| "unknown-host".to_string()), + u64 ) } else { request.uri().to_string() @@ -91,7 +98,7 @@ impl SlackClientHyperConnec debug!( slack_uri = uri_str.as_str(), "Sending HTTP request to {}", - request.uri() + uri_str.as_str() ); });