No logic changes. Just the member type.
ACLFilledChecklist::ACLFilledChecklist() :
dst_rdns(nullptr),
- request (nullptr),
reply (nullptr),
#if USE_AUTH
auth_user_request (nullptr),
safe_free(dst_rdns); // created by xstrdup().
- HTTPMSGUNLOCK(request);
-
HTTPMSGUNLOCK(reply);
cbdataReferenceDone(conn_);
showDebugWarning("HttpRequest object");
// XXX: al->request should be original,
// but the request may be already adapted
- al->request = request;
+ al->request = request.getRaw();
HTTPMSGLOCK(al->request);
}
if (!al->adapted_request) {
showDebugWarning("adapted HttpRequest object");
- al->adapted_request = request;
+ al->adapted_request = request.getRaw();
HTTPMSGLOCK(al->adapted_request);
}
*/
ACLFilledChecklist::ACLFilledChecklist(const acl_access *A, HttpRequest *http_request, const char *ident):
dst_rdns(nullptr),
- request(nullptr),
reply(nullptr),
#if USE_AUTH
auth_user_request(nullptr),
assert(!request);
if (httpRequest) {
request = httpRequest;
- HTTPMSGLOCK(request);
#if FOLLOW_X_FORWARDED_FOR
if (Config.onoff.acl_uses_indirect_client)
src_addr = request->indirect_client_addr;
#include "acl/forward.h"
#include "base/CbcPointer.h"
#include "error/forward.h"
+#include "HttpRequest.h"
#include "ip/Address.h"
#if USE_AUTH
#include "auth/UserRequest.h"
class CachePeer;
class ConnStateData;
-class HttpRequest;
-class HttpReply;
/** \ingroup ACLAPI
ACLChecklist filled with specific data, representing Squid and transaction
SBuf dst_peer_name;
char *dst_rdns;
- HttpRequest *request;
+ HttpRequest::Pointer request;
HttpReply *reply;
char rfc931[USER_IDENT_SZ];
AuthenticateAcl(ACLChecklist *ch)
{
ACLFilledChecklist *checklist = Filled(ch);
- HttpRequest *request = checklist->request;
+ const auto request = checklist->request;
Http::HdrType headertype;
- if (nullptr == request) {
+ if (!request) {
fatal ("requiresRequest SHOULD have been true for this ACL!!");
return ACCESS_DENIED;
} else if (request->flags.sslBumped) {
/* get authed here */
/* Note: this fills in auth_user_request when applicable */
const AuthAclState result = Auth::UserRequest::tryToAuthenticateAndSetAuthUser(
- &checklist->auth_user_request, headertype, request,
+ &checklist->auth_user_request, headertype, checklist->request.getRaw(),
checklist->conn(), checklist->src_addr, checklist->al);
switch (result) {
/* make sure someone created auth_user_request for us */
assert(checklist->auth_user_request != nullptr);
assert(checklist->auth_user_request->valid());
- checklist->auth_user_request->start(checklist->request, checklist->al, LookupDone, checklist);
+ checklist->auth_user_request->start(checklist->request.getRaw(), checklist->al, LookupDone, checklist);
}
void
}
static void
-copyResultsFromEntry(HttpRequest *req, const ExternalACLEntryPointer &entry)
+copyResultsFromEntry(const HttpRequest::Pointer &req, const ExternalACLEntryPointer &entry)
{
if (req) {
#if USE_AUTH