]> git.saurik.com Git - apt.git/commitdiff
add config setting for User-Agent in http and https to the Acquire group,
authorDavid Kalnischkies <kalnischkies@gmail.com>
Thu, 10 Dec 2009 23:32:01 +0000 (00:32 +0100)
committerDavid Kalnischkies <kalnischkies@gmail.com>
Thu, 10 Dec 2009 23:32:01 +0000 (00:32 +0100)
thanks Timothy J. Miller! (Closes: #355782)

debian/changelog
doc/apt.conf.5.xml
doc/examples/configure-index
methods/http.cc
methods/https.cc

index c54fb431b852265cb7aedeb49cb3960da975f224..0cfd36c00ec055afb08843a8016fd711ac8eb7fb 100644 (file)
@@ -94,6 +94,9 @@ apt (0.7.25) UNRELEASED; urgency=low
     - rewrite to be able to handle even big patch files
     - adopt optional mmap+iovec patch from Morten Hustveit
       (Closes: #463354) which should speed up a bit. Thanks!
+  * methods/http{,s}.cc
+    - add config setting for User-Agent to the Acquire group,
+      thanks Timothy J. Miller! (Closes: #355782)
 
   [ Chris Leick ]
   * doc/ various manpages:
index e2db9defbd6424bc2c1f4a6705f1fe8ced509023..726bca2cc0f75ff16f148a82f70fcce9946d4e0e 100644 (file)
@@ -275,7 +275,12 @@ DPkg::Pre-Install-Pkgs {"/usr/sbin/dpkg-preconfigure --apt";};
      <para>The used bandwidth can be limited with <literal>Acquire::http::Dl-Limit</literal>
      which accepts integer values in kilobyte. The default value is 0 which deactivates
      the limit and tries uses as much as possible of the bandwidth (Note that this option implicit
-     deactivates the download from multiple servers at the same time.)</para></listitem>
+     deactivates the download from multiple servers at the same time.)</para>
+
+     <para><literal>Acquire::http::User-Agent</literal> can be used to set a different
+     User-Agent for the http download method as some proxies allow access for clients
+     only if the client uses a known identifier.</para>
+     </listitem>
      </varlistentry>
 
      <varlistentry><term>https</term>
index f5f9964609282e6d75c4ae562b192f0bc52da9b6..333c8df7e413d79de90adea54b2332cb531584e1 100644 (file)
@@ -191,6 +191,7 @@ Acquire
     Max-Age "86400";     // 1 Day age on index files
     No-Store "false";    // Prevent the cache from storing archives    
     Dl-Limit "7";        // 7Kb/sec maximum download rate
+    User-Agent "Debian APT-HTTP/1.3";
   };
 
   // HTTPS method configuration:
@@ -204,6 +205,8 @@ Acquire
         CaPath  "/etc/ssl/certs";
         Verify-Host" "true";
         AllowRedirect  "true";
+
+        User-Agent "Debian APT-CURL/1.0";
   };
 
   ftp
index 3b210f6b612153fd5a433e784956b28c22ce6677..2dae87a02be878cb3da87c0c18336a8633b2c743 100644 (file)
@@ -731,7 +731,8 @@ void HttpMethod::SendReq(FetchItem *Itm,CircleBuf &Out)
       Req += string("Authorization: Basic ") + 
           Base64Encode(Uri.User + ":" + Uri.Password) + "\r\n";
    }
-   Req += "User-Agent: Debian APT-HTTP/1.3 ("VERSION")\r\n\r\n";
+   Req += "User-Agent: " + _config->Find("Acquire::http::User-Agent",
+               "Debian APT-HTTP/1.3 ("VERSION")") + "\r\n\r\n";
    
    if (Debug == true)
       cerr << Req << endl;
index 86d7f3a6ba6542ed894292fbfc668789690f4949..a4f39c3797c4c4879b85e87e15a8ec94dcdd2649 100644 (file)
@@ -211,7 +211,10 @@ bool HttpsMethod::Fetch(FetchItem *Itm)
       curl_easy_setopt(curl, CURLOPT_MAX_RECV_SPEED_LARGE, dlLimit);
 
    // set header
-   curl_easy_setopt(curl, CURLOPT_USERAGENT,"Debian APT-CURL/1.0 ("VERSION")");
+   curl_easy_setopt(curl, CURLOPT_USERAGENT,
+       _config->Find("Acquire::https::User-Agent",
+               _config->Find("Acquire::http::User-Agent",
+                       "Debian APT-CURL/1.0 ("VERSION")")));
 
    // set timeout
    int timeout = _config->FindI("Acquire::http::Timeout",120);