[pbs-devel] applied: [PATCH proxmox-acme-rs 1/1] client: add support for proxies

Wolfgang Bumiller w.bumiller at proxmox.com
Thu Nov 18 11:15:57 CET 2021


applied, thanks

On Tue, Nov 09, 2021 at 04:54:16PM +0000, Stoiko Ivanov wrote:
> by storing the proxy url as string in the struct and setting it on
> each invocation of `execute`, since execute calls reset on the
> curl::easy::Easy object.
> 
> Signed-off-by: Stoiko Ivanov <s.ivanov at proxmox.com>
> ---
>  src/client.rs | 15 +++++++++++++++
>  1 file changed, 15 insertions(+)
> 
> diff --git a/src/client.rs b/src/client.rs
> index 8aeff97..9853fb6 100644
> --- a/src/client.rs
> +++ b/src/client.rs
> @@ -91,6 +91,7 @@ impl Headers {
>  struct Inner {
>      easy: easy::Easy,
>      nonce: Option<String>,
> +    proxy: Option<String>,
>  }
>  
>  impl Inner {
> @@ -98,6 +99,7 @@ impl Inner {
>          Self {
>              easy: easy::Easy::new(),
>              nonce: None,
> +            proxy: None,
>          }
>      }
>  
> @@ -120,6 +122,10 @@ impl Inner {
>  
>          self.easy.url(url)?;
>  
> +        if let Some(p) = &self.proxy {
> +            self.easy.proxy(&p)?;
> +        }
> +
>          {
>              let mut transfer = self.easy.transfer();
>  
> @@ -156,6 +162,10 @@ impl Inner {
>          })
>      }
>  
> +    pub fn set_proxy(&mut self, proxy: String) {
> +            self.proxy = Some(proxy);
> +    }
> +
>      /// Low-level API to run an n API request. This automatically updates the current nonce!
>      fn run_request(&mut self, request: Request) -> Result<HttpResponse, Error> {
>          self.easy.reset();
> @@ -586,6 +596,11 @@ impl Client {
>              }
>          }
>      }
> +
> +    /// Set a proxy
> +    pub fn set_proxy(&mut self, proxy: String) {
> +        self.inner.set_proxy(proxy)
> +    }
>  }
>  
>  fn parse_header(data: &[u8]) -> Option<(&str, &str)> {
> -- 
> 2.30.2




More information about the pbs-devel mailing list