HttpReply.cc
Go to the documentation of this file.
129 static const Http::HdrType ImsEntries[] = {Http::HdrType::DATE, Http::HdrType::CONTENT_TYPE, Http::HdrType::EXPIRES, Http::HdrType::LAST_MODIFIED, /* eof */ Http::HdrType::OTHER};
435 debugs(58, 3, "missing protocol version numbers (ie. " << protoPrefix << "/1.0) in '" << buf << "'");
void error(char *format,...)
Definition: FilledChecklist.h:33
Definition: HttpHdrContRange.h:18
Definition: HttpHeader.h:51
Definition: HttpHeader.h:72
HttpHeaderEntry * findEntry(Http::HdrType id) const
Definition: HttpHeader.cc:609
void packInto(Packable *p, bool mask_sensitive_info=false) const
Definition: HttpHeader.cc:546
Definition: HttpReply.h:25
bool parseFirstLine(const char *start, const char *end) override
Definition: HttpReply.cc:454
HttpHdrContRange * content_range
parsed Content-Range; nil for non-206 responses!
Definition: HttpReply.h:152
void configureContentLengthInterpreter(Http::ContentLengthInterpreter &) override
configures the interpreter as needed
Definition: HttpReply.cc:460
bool expectingBody(const HttpRequestMethod &, int64_t &) const override
Definition: HttpReply.cc:487
void setHeaders(Http::StatusCode status, const char *reason, const char *ctype, int64_t clen, time_t lmt, time_t expires)
Definition: HttpReply.cc:167
bool inheritProperties(const Http::Message *) override
Definition: HttpReply.cc:588
void calcMaxBodySize(HttpRequest &request) const
Definition: HttpReply.cc:545
void removeIrrelevantContentLength()
Some response status codes prohibit sending Content-Length (RFC 7230 section 3.3.2).
Definition: HttpReply.cc:607
bool receivedBodyTooLarge(HttpRequest &, int64_t receivedBodySize)
Definition: HttpReply.cc:516
bool sanityCheckStartLine(const char *buf, const size_t hdr_len, Http::StatusCode *error) override
Definition: HttpReply.cc:399
int validatorsMatch(HttpReply const *other) const
Definition: HttpReply.cc:220
void packHeadersUsingSlowPacker(Packable &p) const
same as packHeadersUsingFastPacker() but assumes that p cannot quickly process small additions
Definition: HttpReply.cc:93
void packHeadersUsingFastPacker(Packable &p) const
Definition: HttpReply.cc:85
Pointer recreateOnNotModified(const HttpReply &reply304) const
Definition: HttpReply.cc:262
bool expectedBodyTooLarge(HttpRequest &request)
Definition: HttpReply.cc:524
static HttpReplyPointer MakeConnectionEstablished()
construct and return an HTTP/200 (Connection Established) response
Definition: HttpReply.cc:119
Definition: RequestMethod.h:27
Definition: HttpRequest.h:49
void applyStatusCodeRules(const StatusCode code)
prohibits Content-Length in 1xx and 204 responses
Definition: ContentLengthInterpreter.h:31
void putCc(const HttpHdrCc *otherCc)
copies Cache-Control header to this message
Definition: Message.cc:33
Definition: Parser.h:41
bool parse(const String &protoPrefix, const char *start, const char *end)
Definition: StatusLine.cc:86
AnyP::ProtocolVersion version
breakdown of protocol version label: (HTTP/ICY) and (0.9/1.0/1.1)
Definition: StatusLine.h:62
void set(const AnyP::ProtocolVersion &newVersion, Http::StatusCode newStatus, const char *newReason=nullptr)
Definition: StatusLine.cc:35
Http::StatusCode status() const
retrieve the status code for this status line
Definition: StatusLine.h:45
Definition: MemBuf.h:24
Definition: Packable.h:53
virtual void append(const char *buf, int size)=0
Appends a c-string to existing packed data.
struct SquidConfig::@106 onoff
Definition: SquidString.h:26
char const * visible_appname_string
Definition: forward.h:18
bool ProhibitsContentLength(const StatusCode sc)
whether this response status code prohibits sending Content-Length
Definition: StatusCode.h:96
AnyP::ProtocolVersion ProtocolVersion(unsigned int aMajor, unsigned int aMinor)
HTTP version label information.
Definition: ProtocolVersion.h:19
@ two
@ one