diff options
author | Michael Vogt <michael.vogt@ubuntu.com> | 2010-02-03 10:00:54 -0800 |
---|---|---|
committer | Michael Vogt <michael.vogt@ubuntu.com> | 2010-02-03 10:00:54 -0800 |
commit | c9cd3b70f3290071c79d7ef85ed87bd709a06bc6 (patch) | |
tree | 75d77a7be409720564beaa89f2937e7141f6c504 /methods/http.cc | |
parent | 470221bb9975902d68dbeb068f394b77d1b0af46 (diff) |
* methods/http.cc:
- add cache-control headers even if no cache is given to allow
adding options for intercepting proxies
Diffstat (limited to 'methods/http.cc')
-rw-r--r-- | methods/http.cc | 30 |
1 files changed, 16 insertions, 14 deletions
diff --git a/methods/http.cc b/methods/http.cc index 2dae87a02..2bd57024b 100644 --- a/methods/http.cc +++ b/methods/http.cc @@ -682,23 +682,25 @@ void HttpMethod::SendReq(FetchItem *Itm,CircleBuf &Out) and a no-store directive for archives. */ sprintf(Buf,"GET %s HTTP/1.1\r\nHost: %s\r\n", Itm->Uri.c_str(),ProperHost.c_str()); - // only generate a cache control header if we actually want to - // use a cache - if (_config->FindB("Acquire::http::No-Cache",false) == false) + } + // generate a cache control header (if needed) + if (_config->FindB("Acquire::http::No-Cache",false) == true) + { + strcat(Buf,"Cache-Control: no-cache\r\nPragma: no-cache\r\n"); + } + else + { + if (Itm->IndexFile == true) { - if (Itm->IndexFile == true) - sprintf(Buf+strlen(Buf),"Cache-Control: max-age=%u\r\n", - _config->FindI("Acquire::http::Max-Age",0)); - else - { - if (_config->FindB("Acquire::http::No-Store",false) == true) - strcat(Buf,"Cache-Control: no-store\r\n"); - } + sprintf(Buf+strlen(Buf),"Cache-Control: max-age=%u\r\n", + _config->FindI("Acquire::http::Max-Age",0)); + } + else + { + if (_config->FindB("Acquire::http::No-Store",false) == true) + strcat(Buf,"Cache-Control: no-store\r\n"); } } - // generate a no-cache header if needed - if (_config->FindB("Acquire::http::No-Cache",false) == true) - strcat(Buf,"Cache-Control: no-cache\r\nPragma: no-cache\r\n"); string Req = Buf; |