diff --git a/src/api.rs b/src/api.rs index 3f21fb7..6b1f7d5 100644 --- a/src/api.rs +++ b/src/api.rs @@ -340,7 +340,8 @@ where "Executing {} and returning authentication info", endpoint.path() ); - let r: EndpointResult<()> = endpoint + // data: Option - despite sample on the hashicorp site it is sometimes returned as data: null which works or data: {} which failes unless set to Value + let r: EndpointResult = endpoint .with_middleware(client.middle()) .exec(client.http()) .await diff --git a/src/client.rs b/src/client.rs index 15051d5..95a96c5 100644 --- a/src/client.rs +++ b/src/client.rs @@ -82,9 +82,12 @@ impl VaultClient { /// Creates a new [VaultClient] using the given [VaultClientSettings]. #[instrument(skip(settings), err)] pub fn new(settings: VaultClientSettings) -> Result { - #[cfg(not(feature = "rustls"))] + #[cfg(not(any(feature = "rustls", feature = "native-tls")))] let mut http_client = reqwest::ClientBuilder::new(); + #[cfg(feature = "native-tls")] + let mut http_client = reqwest::ClientBuilder::new().use_native_tls(); + #[cfg(feature = "rustls")] let mut http_client = reqwest::ClientBuilder::new().use_rustls_tls();