public inbox for pbs-devel@lists.proxmox.com
 help / color / mirror / Atom feed
* [pbs-devel] [PATCH proxmox-backup 1/2] tools/http: set USER_AGENT inside request
@ 2021-04-28 10:03 Dietmar Maurer
  2021-04-28 10:03 ` [pbs-devel] [PATCH proxmox-backup 2/2] tools/http: make user agent configurable Dietmar Maurer
  0 siblings, 1 reply; 5+ messages in thread
From: Dietmar Maurer @ 2021-04-28 10:03 UTC (permalink / raw)
  To: pbs-devel

---
 src/tools/http.rs | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

diff --git a/src/tools/http.rs b/src/tools/http.rs
index f4ccefc9..a4299fb4 100644
--- a/src/tools/http.rs
+++ b/src/tools/http.rs
@@ -107,6 +107,8 @@ pub struct SimpleHttp {
 
 impl SimpleHttp {
 
+    pub const DEFAULT_USER_AGENT_STRING: &'static str = "proxmox-backup-client/1.0";
+
     pub fn new(proxy_config: Option<ProxyConfig>) -> Self {
         let ssl_connector = SslConnector::builder(SslMethod::tls()).unwrap().build();
         Self::with_ssl_connector(ssl_connector, proxy_config)
@@ -145,7 +147,14 @@ impl SimpleHttp {
     }
 
     pub async fn request(&self, mut request: Request<Body>) -> Result<Response<Body>, Error> {
+
+        request.headers_mut().insert(
+            hyper::header::USER_AGENT,
+            HeaderValue::from_str(Self::DEFAULT_USER_AGENT_STRING)?,
+        );
+
         self.add_proxy_headers(&mut request)?;
+
         self.client.request(request)
             .map_err(Error::from)
             .await
@@ -168,7 +177,6 @@ impl SimpleHttp {
         let request = Request::builder()
             .method("POST")
             .uri(uri)
-            .header("User-Agent", "proxmox-backup-client/1.0")
             .header(hyper::header::CONTENT_TYPE, content_type)
             .body(body)?;
 
@@ -183,8 +191,7 @@ impl SimpleHttp {
 
         let mut request = Request::builder()
             .method("GET")
-            .uri(uri)
-            .header("User-Agent", "proxmox-backup-client/1.0");
+            .uri(uri);
 
         if let Some(hs) = extra_headers {
             for (h, v) in hs.iter() {
-- 
2.20.1




^ permalink raw reply	[flat|nested] 5+ messages in thread
* Re: [pbs-devel] [PATCH proxmox-backup 2/2] tools/http: make user agent configurable
@ 2021-04-28 15:31 Dietmar Maurer
  0 siblings, 0 replies; 5+ messages in thread
From: Dietmar Maurer @ 2021-04-28 15:31 UTC (permalink / raw)
  To: Wolfgang Bumiller; +Cc: pbs-devel


> On 04/28/2021 4:23 PM Wolfgang Bumiller <w.bumiller@proxmox.com> wrote:
> 
>  
> Do we really need to have more than 1 user agent string in what's
> basically a non-exported utility, though?

I though that suggestion came from you?




^ permalink raw reply	[flat|nested] 5+ messages in thread
* Re: [pbs-devel] [PATCH proxmox-backup 2/2] tools/http: make user agent configurable
@ 2021-04-28 15:44 Dietmar Maurer
  0 siblings, 0 replies; 5+ messages in thread
From: Dietmar Maurer @ 2021-04-28 15:44 UTC (permalink / raw)
  To: Proxmox Backup Server development discussion

Ignore me, I miss-read your patch.

Anyhow, my plan was to work towards are more generic client. IMHO it does
not harm to expose such things.

But yes, we do not use it currently.

> On 04/28/2021 5:31 PM Dietmar Maurer <dietmar@proxmox.com> wrote:
> 
>  
> > On 04/28/2021 4:23 PM Wolfgang Bumiller <w.bumiller@proxmox.com> wrote:
> > 
> >  
> > Do we really need to have more than 1 user agent string in what's
> > basically a non-exported utility, though?
> 
> I though that suggestion came from you?




^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2021-04-28 15:45 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-04-28 10:03 [pbs-devel] [PATCH proxmox-backup 1/2] tools/http: set USER_AGENT inside request Dietmar Maurer
2021-04-28 10:03 ` [pbs-devel] [PATCH proxmox-backup 2/2] tools/http: make user agent configurable Dietmar Maurer
2021-04-28 14:23   ` Wolfgang Bumiller
2021-04-28 15:31 Dietmar Maurer
2021-04-28 15:44 Dietmar Maurer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal