AsyncJob("Ftp::Gateway::ServerStateData"), Ftp::ServerStateData(fwdState),
forwardingCompleted(false)
{
+ // Nothing we can do at request creation time can mark the response as
+ // uncachable, unfortunately. This prevents "found KEY_PRIVATE" WARNINGs.
+ entry->releaseRequest();
}
ServerStateData::~ServerStateData()
}
request->http_ver = *http_ver;
+
+ // Our fake Request-URIs are not distinctive enough for caching to work
+ request->flags.cachable = false; // XXX: reset later by maybeCacheable()
+ request->flags.noCache = true;
+
request->header.putStr(HDR_FTP_COMMAND, cmd.termedBuf());
request->header.putStr(HDR_FTP_ARGUMENTS, params.termedBuf() != NULL ?
params.termedBuf() : "");
clientReplyContext *const repContext =
dynamic_cast<clientReplyContext *>(node->data.getRaw());
assert(repContext != NULL);
- repContext->createStoreEntry(http->request->method, RequestFlags());
+
+ RequestFlags flags;
+ flags.cachable = false; // force releaseRequest() in storeCreateEntry()
+ flags.noCache = true;
+ repContext->createStoreEntry(http->request->method, flags);
http->storeEntry()->replaceHttpReply(reply);
}