#include <ClientRequestContext.h>

Inheritance diagram for ClientRequestContext:
Collaboration diagram for ClientRequestContext:

Public Member Functions

void * operator new (size_t size)
 
void operator delete (void *address)
 
void * toCbdata () noexcept
 
 ClientRequestContext (ClientHttpRequest *)
 
 ~ClientRequestContext ()
 
bool httpStateIsValid ()
 
void hostHeaderVerify ()
 
void hostHeaderIpVerify (const ipcache_addrs *ia, const Dns::LookupDetails &dns)
 
void hostHeaderVerifyFailed (const char *A, const char *B)
 
void clientAccessCheck ()
 
void clientAccessCheck2 ()
 
void clientAccessCheckDone (const allow_t &answer)
 
void clientRedirectStart ()
 
void clientRedirectDone (const Helper::Reply &reply)
 
void clientStoreIdStart ()
 
void clientStoreIdDone (const Helper::Reply &reply)
 
void checkNoCache ()
 
void checkNoCacheDone (const allow_t &answer)
 
void adaptationAccessCheck ()
 
bool sslBumpAccessCheck ()
 
void sslBumpAccessCheckDone (const allow_t &answer)
 The callback function for ssl-bump access check list. More...
 

Public Attributes

ClientHttpRequesthttp
 
ACLChecklistacl_checklist
 
int redirect_state
 
int store_id_state
 
bool host_header_verify_done
 
bool http_access_done
 
bool adapted_http_access_done
 
bool adaptation_acl_check_done
 
bool redirect_done
 
bool store_id_done
 
bool no_cache_done
 
bool interpreted_req_hdrs
 
bool tosToClientDone
 
bool nfmarkToClientDone
 
bool sslBumpCheckDone
 
ErrorStateerror
 saved error page for centralized/delayed processing More...
 
bool readNextRequest
 whether Squid should read after error handling More...
 

Static Private Attributes

static cbdata_type CBDATA_ClientRequestContext = CBDATA_UNKNOWN
 

Detailed Description

Definition at line 26 of file ClientRequestContext.h.

Constructor & Destructor Documentation

ClientRequestContext::ClientRequestContext ( ClientHttpRequest anHttp)

Definition at line 119 of file client_side_request.cc.

References debugs.

ClientRequestContext::~ClientRequestContext ( )

Definition at line 105 of file client_side_request.cc.

References cbdataReferenceDone, debugs, error, and http.

Member Function Documentation

void ClientRequestContext::adaptationAccessCheck ( )
void ClientRequestContext::checkNoCache ( )

Test cache allow/deny configuration Sets flags.cachable=1 if caching is not denied.

Definition at line 1361 of file client_side_request.cc.

References ACCESS_ALLOWED, SquidConfig::accessList, acl_checklist, checkNoCacheDone(), checkNoCacheDoneWrapper(), clientAclChecklistCreate(), Config, http, SquidConfig::noCache, and ACLChecklist::nonBlockingCheck().

Referenced by ClientHttpRequest::doCallouts().

void ClientRequestContext::clientAccessCheck2 ( )

Identical in operation to clientAccessCheck() but performed later using different configured ACL list. The default here is to allow all. Since the earlier http_access should do a default deny all. This check is just for a last-minute denial based on adapted request headers.

Definition at line 720 of file client_side_request.cc.

References ACCESS_ALLOWED, SquidConfig::accessList, acl_checklist, SquidConfig::adapted_http, clientAccessCheckDone(), clientAccessCheckDoneWrapper(), clientAclChecklistCreate(), Config, debugs, HERE(), http, and ACLChecklist::nonBlockingCheck().

Referenced by ClientHttpRequest::doCallouts().

void ClientRequestContext::clientStoreIdStart ( )

Start locating an alternative storeage ID string (if any) from admin configured helper program. This is an asynchronous operation terminating in ClientRequestContext::clientStoreIdDone() when completed.

Definition at line 917 of file client_side_request.cc.

References SquidConfig::accessList, acl_checklist, clientAclChecklistCreate(), clientStoreIdAccessCheckDone(), clientStoreIdDoneWrapper, Config, debugs, http, ACLChecklist::nonBlockingCheck(), SquidConfig::store_id, storeIdStart(), and ClientHttpRequest::uri.

Referenced by ClientHttpRequest::doCallouts().

void ClientRequestContext::operator delete ( void *  address)
inline

Definition at line 28 of file ClientRequestContext.h.

void* ClientRequestContext::operator new ( size_t  size)
inline

Definition at line 28 of file ClientRequestContext.h.

void* ClientRequestContext::toCbdata ( )
inlinenoexcept

Definition at line 28 of file ClientRequestContext.h.

Member Data Documentation

bool ClientRequestContext::adaptation_acl_check_done

Definition at line 71 of file ClientRequestContext.h.

Referenced by ClientHttpRequest::doCallouts().

bool ClientRequestContext::adapted_http_access_done

Definition at line 69 of file ClientRequestContext.h.

Referenced by ClientHttpRequest::doCallouts().

cbdata_type ClientRequestContext::CBDATA_ClientRequestContext = CBDATA_UNKNOWN
staticprivate

Definition at line 28 of file ClientRequestContext.h.

bool ClientRequestContext::host_header_verify_done

Definition at line 67 of file ClientRequestContext.h.

Referenced by ClientHttpRequest::doCallouts().

bool ClientRequestContext::http_access_done

Definition at line 68 of file ClientRequestContext.h.

Referenced by clientBeginRequest(), and ClientHttpRequest::doCallouts().

bool ClientRequestContext::interpreted_req_hdrs

Definition at line 76 of file ClientRequestContext.h.

Referenced by ClientHttpRequest::doCallouts().

bool ClientRequestContext::nfmarkToClientDone

Definition at line 78 of file ClientRequestContext.h.

Referenced by ClientHttpRequest::doCallouts().

bool ClientRequestContext::no_cache_done

Definition at line 75 of file ClientRequestContext.h.

Referenced by clientBeginRequest(), and ClientHttpRequest::doCallouts().

bool ClientRequestContext::readNextRequest
bool ClientRequestContext::redirect_done

Definition at line 73 of file ClientRequestContext.h.

Referenced by clientBeginRequest(), and ClientHttpRequest::doCallouts().

int ClientRequestContext::redirect_state

Definition at line 64 of file ClientRequestContext.h.

Referenced by clientRedirectDone(), and ClientHttpRequest::doCallouts().

bool ClientRequestContext::sslBumpCheckDone

Definition at line 80 of file ClientRequestContext.h.

Referenced by ClientHttpRequest::doCallouts().

bool ClientRequestContext::store_id_done

Definition at line 74 of file ClientRequestContext.h.

Referenced by ClientHttpRequest::doCallouts().

int ClientRequestContext::store_id_state

Definition at line 65 of file ClientRequestContext.h.

Referenced by clientStoreIdDone(), and ClientHttpRequest::doCallouts().

bool ClientRequestContext::tosToClientDone

Definition at line 77 of file ClientRequestContext.h.

Referenced by ClientHttpRequest::doCallouts().


The documentation for this class was generated from the following files:

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors