]>
Commit | Line | Data |
---|---|---|
e1f7507e AJ |
1 | #ifndef SQUID_CLIENTREQUESTCONTEXT_H |
2 | #define SQUID_CLIENTREQUESTCONTEXT_H | |
3 | ||
4 | class ACLChecklist; | |
5 | class ClientHttpRequest; | |
6 | ||
e1f7507e AJ |
7 | /* for RefCountable */ |
8 | #include "RefCount.h" | |
9 | /* for CBDATA_CLASS() */ | |
10 | #include "cbdata.h" | |
11 | ||
a83c6ed6 AR |
12 | #if USE_ADAPTATION |
13 | #include "adaptation/forward.h" | |
0f305536 | 14 | #endif |
15 | ||
16 | class ClientRequestContext : public RefCountable | |
17 | { | |
18 | ||
19 | public: | |
20 | void *operator new(size_t); | |
21 | void operator delete(void *); | |
22 | ||
23 | ClientRequestContext(ClientHttpRequest *); | |
24 | ~ClientRequestContext(); | |
25 | ||
26 | bool httpStateIsValid(); | |
27 | void clientAccessCheck(); | |
533493da | 28 | void clientAccessCheck2(); |
2efeb0b7 | 29 | void clientAccessCheckDone(const allow_t &answer); |
0f305536 | 30 | void clientRedirectStart(); |
31 | void clientRedirectDone(char *result); | |
32 | void checkNoCache(); | |
2efeb0b7 | 33 | void checkNoCacheDone(const allow_t &answer); |
a83c6ed6 | 34 | #if USE_ADAPTATION |
0f305536 | 35 | |
a83c6ed6 | 36 | void adaptationAccessCheck(); |
a22e6cd3 | 37 | void adaptationAclCheckDone(Adaptation::ServiceGroupPointer g); |
0f305536 | 38 | #endif |
e0c0d54c CT |
39 | #if USE_SSL |
40 | /** | |
41 | * Initiates and start the acl checklist to check if the a CONNECT | |
42 | * request must be bumped. | |
43 | \retval true if the acl check scheduled, false if no ssl-bump required | |
44 | */ | |
45 | bool sslBumpAccessCheck(); | |
46 | /// The callback function for ssl-bump access check list | |
47 | void sslBumpAccessCheckDone(bool doSslBump); | |
48 | #endif | |
0f305536 | 49 | |
50 | ClientHttpRequest *http; | |
51 | ACLChecklist *acl_checklist; /* need ptr back so we can unreg if needed */ | |
52 | int redirect_state; | |
53 | ||
57abaac0 | 54 | bool http_access_done; |
533493da | 55 | bool adapted_http_access_done; |
a83c6ed6 | 56 | #if USE_ADAPTATION |
a83c6ed6 | 57 | bool adaptation_acl_check_done; |
0f305536 | 58 | #endif |
57abaac0 | 59 | bool redirect_done; |
5d2136fa | 60 | bool no_cache_done; |
57abaac0 | 61 | bool interpreted_req_hdrs; |
425de4c8 AJ |
62 | bool tosToClientDone; |
63 | bool nfmarkToClientDone; | |
e0c0d54c CT |
64 | #if USE_SSL |
65 | bool sslBumpCheckDone; | |
66 | #endif | |
0f305536 | 67 | |
68 | private: | |
69 | CBDATA_CLASS(ClientRequestContext); | |
70 | }; | |
71 | ||
e1f7507e | 72 | #endif /* SQUID_CLIENTREQUESTCONTEXT_H */ |