ModXact.h
Go to the documentation of this file.
132 uint64_t useOriginalBody() const { assert(sawUseOriginalBody()); return static_cast<uint64_t>(useOriginalBody_); }
146 ModXact(Http::Message *virginHeader, HttpRequest *virginCause, AccessLogEntry::Pointer &alp, ServiceRep::Pointer &s);
285 void encapsulateHead(MemBuf &icapBuf, const char *section, MemBuf &httpBuf, const Http::Message *head);
383 ModXactLauncher(Http::Message *virginHeader, HttpRequest *virginCause, AccessLogEntry::Pointer &alp, Adaptation::ServicePointer s);
void disableBypass(const char *reason, bool includeGroupBypass)
Definition: ModXact.cc:717
void callException(const std::exception &e) override
called when the job throws during an async call
Definition: ModXact.cc:665
Definition: TeChunkedParser.h:51
CBDATA_CHILD(ModXactLauncher)
void prepPartialBodyEchoing(uint64_t pos)
Definition: ModXact.cc:1022
ModXactLauncher(Http::Message *virginHeader, HttpRequest *virginCause, AccessLogEntry::Pointer &alp, Adaptation::ServicePointer s)
Definition: ModXact.cc:2023
ModXact(Http::Message *virginHeader, HttpRequest *virginCause, AccessLogEntry::Pointer &alp, ServiceRep::Pointer &s)
Definition: ModXact.cc:54
void openChunk(MemBuf &buf, size_t chunkSize, bool ieof)
Definition: ModXact.cc:376
size_t virginContentSize(const VirginBodyAct &act) const
Definition: ModXact.cc:404
void prepBackup(size_t expectedSize)
Definition: ModXact.h:37
void makeRequestHeaders(MemBuf &buf)
Definition: ModXact.cc:1379
enum Adaptation::Icap::Preview::State theState
void packHead(MemBuf &httpBuf, const Http::Message *head)
Definition: ModXact.cc:1628
bool virginBodyEndReached(const VirginBodyAct &act) const
Definition: ModXact.cc:395
VirginBodyAct virginBodyWriting
Definition: ModXact.h:298
void noteMoreBodyDataAvailable(BodyPipe::Pointer) override
Definition: ModXact.cc:1233
Parses and stores ICAP trailer header block.
Definition: ModXact.h:110
void backup(const MemBuf &buf)
void error(char *format,...)
void stopParsing(const bool checkUnparsedData=true)
Definition: ModXact.cc:1213
CBDATA_CHILD(ModXact)
bool allowedPostview204
Definition: ModXact.h:334
void handleCommWrote(size_t size) override
Definition: ModXact.cc:208
void makeAllowHeader(MemBuf &buf)
Definition: ModXact.cc:1519
bool parsePart(Part *part, const char *description)
Definition: ModXact.cc:1091
void maybeAllocateHttpMsg()
Definition: ModXact.cc:730
void fillDoneStatus(MemBuf &buf) const override
Definition: ModXact.cc:1785
bool parsingHeaders() const
Definition: ModXact.h:354
void addLastRequestChunk(MemBuf &buf)
Definition: ModXact.cc:369
void encapsulateHead(MemBuf &icapBuf, const char *section, MemBuf &httpBuf, const Http::Message *head)
Definition: ModXact.cc:1581
Definition: HttpRequest.h:48
void handleCommRead(size_t size) override
Definition: ModXact.cc:567
void makeAdaptedBodyPipe(const char *what)
Definition: ModXact.cc:1859
void detailError(const ErrorDetail::Pointer &errDetail) override
record error detail in the virgin request if possible
Definition: ModXact.cc:1992
void noteServiceAvailable()
Definition: ModXact.cc:168
Definition: ModXact.h:378
Definition: ModXact.h:86
bool sawUseOriginalBody() const
Definition: ModXact.h:131
void parse(Tokenizer &tok, const SBuf &extName) override
Definition: ModXact.cc:2077
void finalizeLogInfo() override
Definition: ModXact.cc:1315
uint64_t useOriginalBody() const
Definition: ModXact.h:132
bool expectHttpHeader() const
whether ICAP response header indicates HTTP header presence
Definition: ModXact.cc:1118
Definition: MemBuf.h:23
bool expectHttpBody() const
whether ICAP response header indicates HTTP body presence
Definition: ModXact.cc:1123
void fillPendingStatus(MemBuf &buf) const override
Definition: ModXact.cc:1745
void clearError() override
clear stored error details, if any; used for retries/repeats
Definition: ModXact.cc:2004
static const SBuf UseOriginalBodyName
Definition: ModXact.h:135
Definition: ModXact.h:60
Definition: BodyPipe.h:22
void writeSomeBody(const char *label, size_t size)
Definition: ModXact.cc:319
bool fillVirginHttpHeader(MemBuf &) const override
Definition: ModXact.cc:1982
void handleCommWroteHeaders()
Definition: ModXact.cc:218
void noteBodyProducerAborted(BodyPipe::Pointer) override
Definition: ModXact.cc:1255
const char * virginContentData(const VirginBodyAct &act) const
Definition: ModXact.cc:416
ChunkExtensionValueParser extensionParser
Definition: ModXact.h:323
enum Adaptation::Icap::ModXact::State::Sending sending
AccessLogEntry::Pointer masterLogEntry() override
The master transaction log entry.
Definition: ModXact.h:182
Definition: InOut.h:24
Definition: Xaction.h:43
bool canBackupEverything() const
Definition: ModXact.cc:1694
bool expectIcapTrailers() const
whether ICAP response header indicates ICAP trailers presence
Definition: ModXact.cc:1128
const HttpRequest & virginRequest() const
locates the request, either as a cause or as a virgin message itself
Definition: ModXact.cc:386
Xaction * createXaction() override
Definition: ModXact.cc:2033
enum Adaptation::Icap::ModXact::State::Writing writing
enum Adaptation::Icap::ModXact::State::Parsing parsing
bool doneConsumingVirgin() const
Definition: ModXact.h:344
Definition: BodyPipe.h:42
void decideWritingAfterPreview(const char *previewKind)
determine state.writing after we wrote the entire preview
Definition: ModXact.cc:292
Definition: parse.c:160
void noteMoreBodySpaceAvailable(BodyPipe::Pointer) override
Definition: ModXact.cc:1268
handles ICAP-specific chunk extensions supported by Squid
Definition: ModXact.h:125
void noteBodyConsumerAborted(BodyPipe::Pointer) override
Definition: ModXact.cc:1279
class Adaptation::Icap::ModXact::State state
VirginBodyAct virginBodySending
Definition: ModXact.h:299
::Parser::Tokenizer Tokenizer
Definition: TeChunkedParser.h:32
void handle206PartialContent()
Definition: ModXact.cc:929
bool gotEncapsulated(const char *section) const
Definition: ModXact.cc:1810
int64_t useOriginalBody_
the value of the parsed use-original-body chunk extension (or -1)
Definition: ModXact.h:138
void stopReceiving()
void finishNullOrEmptyBodyPreview(MemBuf &buf)
Definition: ModXact.cc:1731
bool parse(const char *buf, int len, int atEnd, Http::StatusCode *error)
Definition: ModXact.cc:2065
Definition: ModXact.h:325
void noteBodyProductionEnded(BodyPipe::Pointer) override
Definition: ModXact.cc:1242
void makeUsernameHeader(const HttpRequest *request, MemBuf &buf)
Definition: ModXact.cc:1552
Definition: Launcher.h:47
bool allowedPostview206
Definition: ModXact.h:335
void updateHistory(bool start)
starts or stops transaction accounting in ICAP history
Definition: ModXact.cc:2048
Definition: HttpHeader.h:74
Definition: AccessCheck.h:24
Definition: ModXact.h:141
Introduction
- About Squid
- Why Squid?
- Squid Developers
- How to Donate
- How to Help Out
- Getting Squid
- Squid Source Packages
- Squid Deployment Case-Studies
- Squid Software Foundation
Documentation
- Quick Setup
- Configuration:
- FAQ and Wiki
- Guide Books:
- Non-English
- More...
Support
- Security Advisories
- Bugzilla Database
- Mailing lists
- Contacting us
- Commercial services
- Project Sponsors
- Squid-based products