summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Vogt <michael.vogt@ubuntu.com>2009-02-09 14:36:36 +0100
committerMichael Vogt <michael.vogt@ubuntu.com>2009-02-09 14:36:36 +0100
commit8872c430df84660fa994db0ebfa67861239fe739 (patch)
tree6327f67a727b019e5a6bcd6ffa3041b824e655ce
parent4bfb7a7756eed967c1edad63bc16a37b741cafaa (diff)
* methods/https.cc:
- add Acquire::https::AllowRedirect support
-rw-r--r--debian/changelog2
-rw-r--r--doc/examples/configure-index6
-rw-r--r--methods/https.cc5
3 files changed, 11 insertions, 2 deletions
diff --git a/debian/changelog b/debian/changelog
index 89848f31c..23a0514f6 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -32,6 +32,8 @@ apt (0.7.20.2ubuntu1) jaunty; urgency=low
* cmdline/apt-get.cc:
- default to "false" for the "APT::Get::Build-Dep-Automatic"
option (follow debian here)
+ * methods/https.cc:
+ - add Acquire::https::AllowRedirect support
[ Dereck Wonnacott ]
* Clarify the --help for 'purge' (LP: #243948)
diff --git a/doc/examples/configure-index b/doc/examples/configure-index
index 5cc6187a8..a3ccdded8 100644
--- a/doc/examples/configure-index
+++ b/doc/examples/configure-index
@@ -136,7 +136,8 @@ Acquire
Proxy::http.us.debian.org "DIRECT"; // Specific per-host setting
Timeout "120";
Pipeline-Depth "5";
-
+ AllowRedirect "true";
+
// Cache Control. Note these do not work with Squid 2.0.2
No-Cache "false";
Max-Age "86400"; // 1 Day age on index files
@@ -153,7 +154,8 @@ Acquire
Verify-Peer "false";
SslCert "/etc/apt/some.pem";
CaPath "/etc/ssl/certs";
- Verify-Host" "2";
+ Verify-Host" "true";
+ AllowRedirect "true";
};
ftp
diff --git a/methods/https.cc b/methods/https.cc
index 98dfeefa1..87de54589 100644
--- a/methods/https.cc
+++ b/methods/https.cc
@@ -208,6 +208,11 @@ bool HttpsMethod::Fetch(FetchItem *Itm)
curl_easy_setopt(curl, CURLOPT_TIMEOUT, timeout);
curl_easy_setopt(curl, CURLOPT_CONNECTTIMEOUT, timeout);
+ // set redirect options and default to 10 redirects
+ bool AllowRedirect = _config->FindI("Acquire::https::AllowRedirect", true);
+ curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, AllowRedirect);
+ curl_easy_setopt(curl, CURLOPT_MAXREDIRS, 10);
+
// debug
if(_config->FindB("Debug::Acquire::https", false))
curl_easy_setopt(curl, CURLOPT_VERBOSE, true);