RequestFlags.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 1996-2019 The Squid Software Foundation and contributors
3  *
4  * Squid software is distributed under GPLv2+ license and includes
5  * contributions from numerous individuals and organizations.
6  * Please see the COPYING and CONTRIBUTORS files for details.
7  */
8 
9 /* DEBUG: section 73 HTTP Request */
10 
11 #ifndef SQUID_REQUESTFLAGS_H_
12 #define SQUID_REQUESTFLAGS_H_
13 
21 {
22 public:
24  bool noCache = false;
26  bool ims = false;
28  bool auth = false;
30  bool auth_no_keytab = false;
32  bool cachable = false;
34  bool hierarchical = false;
36  bool loopDetected = false;
38  bool proxyKeepalive = false;
40  bool refresh = false;
42  bool redirected = false;
46  bool needValidation = false;
48  bool failOnValidationError = false;
50  bool staleIfHit = false;
56  bool nocacheHack = false;
58  bool accelerated = false;
60  bool ignoreCc = false;
62  bool intercepted = false;
64  bool hostVerified = false;
66  bool interceptTproxy = false;
70  bool spoofClientIp = false;
72  bool internal = false;
74  bool mustKeepalive = false;
76  bool connectionAuth = false;
78  bool connectionAuthDisabled = false;
79  // XXX This is set in clientCheckPinning but never tested
81  bool connectionProxyAuth = false;
83  bool pinned = false;
85  bool authSent = false;
88  bool noDirect = false;
90  bool chunkedReply = false;
92  bool streamError = false;
94  bool sslPeek = false;
101  bool sslBumped = false;
103  bool ftpNative = false;
104  bool destinationIpLookedUp = false;
106  bool resetTcp = false;
108  bool isRanged = false;
109 
111  bool forceTunnel = false;
112 
117 
118  // if FOLLOW_X_FORWARDED_FOR is not set, we always return "done".
119  bool doneFollowXff() const {
120  return done_follow_x_forwarded_for || !FOLLOW_X_FORWARDED_FOR;
121  }
122 
123  // if USE_HTTP_VIOLATIONS is not set, never allow this
124  bool noCacheHack() const {
125  return USE_HTTP_VIOLATIONS && nocacheHack;
126  }
127 };
128 
129 #endif /* SQUID_REQUESTFLAGS_H_ */
130 
bool interceptTproxy
Set for requests handled by a "tproxy" port.
Definition: RequestFlags.h:66
bool hierarchical
Definition: RequestFlags.h:34
bool loopDetected
Definition: RequestFlags.h:36
bool ftpNative
carries a representation of an FTP command [received on ftp_port]
Definition: RequestFlags.h:103
bool done_follow_x_forwarded_for
Definition: RequestFlags.h:99
bool hostVerified
Definition: RequestFlags.h:64
bool connectionAuth
Definition: RequestFlags.h:76
bool failOnValidationError
Definition: RequestFlags.h:48
bool destinationIpLookedUp
Definition: RequestFlags.h:104
bool noCacheHack() const
Definition: RequestFlags.h:124
bool streamError
Definition: RequestFlags.h:92
bool auth_no_keytab
Definition: RequestFlags.h:30
bool connectionAuthDisabled
Definition: RequestFlags.h:78
bool doneFollowXff() const
Definition: RequestFlags.h:119
bool connectionProxyAuth
Definition: RequestFlags.h:81
bool chunkedReply
Definition: RequestFlags.h:90
bool mustKeepalive
Definition: RequestFlags.h:74
bool accelerated
Definition: RequestFlags.h:58
bool intercepted
Definition: RequestFlags.h:62
bool proxyKeepalive
Definition: RequestFlags.h:38
RequestFlags cloneAdaptationImmune() const
Definition: RequestFlags.cc:18
bool spoofClientIp
Definition: RequestFlags.h:70
bool needValidation
Definition: RequestFlags.h:46
bool forceTunnel
whether to forward via TunnelStateData (instead of FwdState)
Definition: RequestFlags.h:111
bool nocacheHack
Definition: RequestFlags.h:56

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors