#include <RequestFlags.h>

Collaboration diagram for RequestFlags:

Public Member Functions

RequestFlags cloneAdaptationImmune () const
 
bool doneFollowXff () const
 
bool noCacheHack () const
 

Public Attributes

bool noCache = false
 
bool ims = false
 
bool auth = false
 
bool auth_no_keytab = false
 
bool cachable = false
 
bool hierarchical = false
 
bool loopDetected = false
 
bool proxyKeepalive = false
 
bool refresh = false
 
bool redirected = false
 
bool needValidation = false
 
bool failOnValidationError = false
 
bool staleIfHit = false
 
bool nocacheHack = false
 
bool accelerated = false
 
bool ignoreCc = false
 
bool intercepted = false
 
bool hostVerified = false
 
bool interceptTproxy = false
 Set for requests handled by a "tproxy" port. More...
 
bool spoofClientIp = false
 
bool internal = false
 
bool mustKeepalive = false
 
bool connectionAuth = false
 
bool connectionAuthDisabled = false
 
bool connectionProxyAuth = false
 
bool pinned = false
 
bool authSent = false
 
bool noDirect = false
 
bool chunkedReply = false
 
bool streamError = false
 
bool sslPeek = false
 
bool done_follow_x_forwarded_for = false
 
bool sslBumped = false
 
bool ftpNative = false
 carries a representation of an FTP command [received on ftp_port] More...
 
bool destinationIpLookedUp = false
 
bool resetTcp = false
 
bool isRanged = false
 
bool forceTunnel = false
 whether to forward via TunnelStateData (instead of FwdState) More...
 

Detailed Description

request-related flags

Contains both flags marking a request's current state, and flags requesting some processing to be done at a later stage. TODO: better distinguish the two cases.

Definition at line 20 of file RequestFlags.h.

Member Function Documentation

◆ cloneAdaptationImmune()

RequestFlags RequestFlags::cloneAdaptationImmune ( ) const

clone the flags, resetting to default those which are not safe in a related (e.g. ICAP-adapted) request.

Definition at line 18 of file RequestFlags.cc.

Referenced by HttpRequest::inheritProperties().

◆ doneFollowXff()

bool RequestFlags::doneFollowXff ( ) const
inline

Definition at line 119 of file RequestFlags.h.

◆ noCacheHack()

bool RequestFlags::noCacheHack ( ) const
inline

Member Data Documentation

◆ accelerated

◆ auth

◆ auth_no_keytab

bool RequestFlags::auth_no_keytab = false

do not use keytabs for peer Kerberos authentication

Definition at line 30 of file RequestFlags.h.

Referenced by httpFixupAuthentication(), HttpRequest::prepForDirect(), and HttpRequest::prepForPeering().

◆ authSent

bool RequestFlags::authSent = false

Authentication was already sent upstream (e.g. due tcp-level auth)

Definition at line 85 of file RequestFlags.h.

Referenced by HttpStateData::buildRequestPrefix(), HttpStateData::processReplyBody(), and HttpStateData::reusableReply().

◆ cachable

◆ chunkedReply

bool RequestFlags::chunkedReply = false

◆ connectionAuth

bool RequestFlags::connectionAuth = false

◆ connectionAuthDisabled

bool RequestFlags::connectionAuthDisabled = false

set if connection oriented auth can not be supported

Definition at line 78 of file RequestFlags.h.

Referenced by clientReplyContext::buildReplyHeader(), clientCheckPinning(), and HttpStateData::processReplyHeader().

◆ connectionProxyAuth

bool RequestFlags::connectionProxyAuth = false

Request wants connection oriented auth

Definition at line 81 of file RequestFlags.h.

Referenced by clientCheckPinning().

◆ destinationIpLookedUp

bool RequestFlags::destinationIpLookedUp = false

◆ done_follow_x_forwarded_for

bool RequestFlags::done_follow_x_forwarded_for = false

set if X-Forwarded-For checking is complete

do not read directly; use doneFollowXff for reading

Definition at line 99 of file RequestFlags.h.

Referenced by clientFollowXForwardedForCheck().

◆ failOnValidationError

bool RequestFlags::failOnValidationError = false

whether we should fail if validation fails

Definition at line 48 of file RequestFlags.h.

Referenced by clientReplyContext::handleIMSReply(), and refreshCheck().

◆ forceTunnel

◆ ftpNative

bool RequestFlags::ftpNative = false

◆ hierarchical

bool RequestFlags::hierarchical = false

the request can be forwarded through the hierarchy

Definition at line 34 of file RequestFlags.h.

Referenced by clientInterpretRequestHeaders(), neighborsDigestSelect(), peerSelectIcpPing(), peerWouldBePinged(), and storeCreateEntry().

◆ hostVerified

bool RequestFlags::hostVerified = false

set if the Host: header passed verification

Definition at line 64 of file RequestFlags.h.

Referenced by clientHierarchical(), HttpRequest::maybeCacheable(), PeerSelector::resolveSelected(), and FwdState::start().

◆ ignoreCc

bool RequestFlags::ignoreCc = false

if set, ignore Cache-Control headers

Definition at line 60 of file RequestFlags.h.

Referenced by clientInterpretRequestHeaders(), HttpRequest::manager(), HttpRequest::maybeCacheable(), and refreshCheck().

◆ ims

◆ intercepted

◆ interceptTproxy

◆ internal

bool RequestFlags::internal = false

set if the request is internal (

See also
ClientHttpRequest::flags.internal)

Definition at line 72 of file RequestFlags.h.

Referenced by clientProcessRequest(), clientReplyContext::identifyStoreObject(), and FwdState::Start().

◆ isRanged

bool RequestFlags::isRanged = false

set if the request is ranged

Definition at line 108 of file RequestFlags.h.

Referenced by clientInterpretRequestHeaders(), StoreEntry::hasIfNoneMatchEtag(), and HttpStateData::httpBuildRequestHeader().

◆ loopDetected

bool RequestFlags::loopDetected = false

a loop was detected on this request

Definition at line 36 of file RequestFlags.h.

Referenced by clientHierarchical(), clientInterpretRequestHeaders(), netdbExchangeStart(), peerAllowedToUse(), and clientReplyContext::processMiss().

◆ mustKeepalive

bool RequestFlags::mustKeepalive = false

if set, request to try very hard to keep the connection alive

Definition at line 74 of file RequestFlags.h.

Referenced by clientReplyContext::buildReplyHeader(), and HttpStateData::sendRequest().

◆ needValidation

bool RequestFlags::needValidation = false

◆ noCache

◆ nocacheHack

bool RequestFlags::nocacheHack = false

request to override no-cache directives

always use noCacheHack() for reading.

Note
only meaningful if USE_HTTP_VIOLATIONS is defined at build time

Definition at line 56 of file RequestFlags.h.

Referenced by clientInterpretRequestHeaders(), and noCacheHack().

◆ noDirect

bool RequestFlags::noDirect = false

Deny direct forwarding unless overriden by always_direct Used in accelerator mode

Definition at line 88 of file RequestFlags.h.

Referenced by clientProcessRequest().

◆ pinned

◆ proxyKeepalive

◆ redirected

◆ refresh

bool RequestFlags::refresh = false

content has expired, need to refresh it

Definition at line 40 of file RequestFlags.h.

Referenced by Store::Controller::allowCollapsing(), peerAllowedToUse(), peerDigestRequest(), and clientReplyContext::processExpired().

◆ resetTcp

bool RequestFlags::resetTcp = false

request to reset the TCP stream

Definition at line 106 of file RequestFlags.h.

Referenced by clientProcessRequestFinished(), and errorAppendEntry().

◆ spoofClientIp

bool RequestFlags::spoofClientIp = false

The client IP address should be spoofed when connecting to the web server. This applies to TPROXY traffic that has not had spoofing disabled through the spoof_client_ip squid.conf ACL.

Definition at line 70 of file RequestFlags.h.

Referenced by getOutgoingAddress(), HttpRequest::manager(), and HttpStateData::processReplyBody().

◆ sslBumped

◆ sslPeek

◆ staleIfHit

bool RequestFlags::staleIfHit = false

reply is stale if it is a hit

Definition at line 50 of file RequestFlags.h.

Referenced by clientReplyContext::buildReplyHeader(), clientReplyContext::handleIMSReply(), and refreshCheckHTTP().

◆ streamError

bool RequestFlags::streamError = false

set if stream error has occurred

Definition at line 92 of file RequestFlags.h.

Referenced by Http::One::Server::handleReply(), and clientReplyContext::sendStreamError().


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

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors