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 << "'");
Definition: FilledChecklist.h:33
bool expectedBodyTooLarge(HttpRequest &request)
Definition: HttpReply.cc:524
bool parse(const String &protoPrefix, const char *start, const char *end)
Definition: StatusLine.cc:86
String removeStaleWarningValues(const String &value)
Definition: HttpReply.cc:618
void error(char *format,...)
virtual void append(const char *buf, int size)=0
Appends a c-string to existing packed data.
virtual bool sanityCheckStartLine(const char *buf, const size_t hdr_len, Http::StatusCode *error)
Definition: HttpReply.cc:399
time_t ParseRfc1123(const char *)
Convert from RFC 1123 style time: "www, DD MMM YYYY hh:mm:ss ZZZ".
Definition: rfc1123.cc:159
void packHeadersUsingSlowPacker(Packable &p) const
same as packHeadersUsingFastPacker() but assumes that p cannot quickly process small additions
Definition: HttpReply.cc:93
void applyStatusCodeRules(const StatusCode code)
prohibits Content-Length in 1xx and 204 responses
Definition: ContentLengthInterpreter.h:31
Definition: forward.h:22
void calcMaxBodySize(HttpRequest &request) const
Definition: HttpReply.cc:545
void packHeadersUsingFastPacker(Packable &p) const
Definition: HttpReply.cc:85
Definition: Packable.h:53
Definition: HttpHeader.h:51
Definition: HttpRequest.h:49
void removeIrrelevantContentLength()
Some response status codes prohibit sending Content-Length (RFC 7230 section 3.3.2).
Definition: HttpReply.cc:671
virtual bool expectingBody(const HttpRequestMethod &, int64_t &) const
Definition: HttpReply.cc:487
Http::StatusCode status() const
retrieve the status code for this status line
Definition: StatusLine.h:45
char const * visible_appname_string
Definition: MemBuf.h:24
Definition: RequestMethod.h:27
virtual bool inheritProperties(const Http::Message *)
Definition: HttpReply.cc:588
Definition: SquidString.h:26
void packInto(Packable *p, bool mask_sensitive_info=false) const
Definition: HttpHeader.cc:568
Definition: RefCount.h:27
bool receivedBodyTooLarge(HttpRequest &, int64_t receivedBodySize)
Definition: HttpReply.cc:516
int validatorsMatch(HttpReply const *other) const
Definition: HttpReply.cc:220
Definition: Parser.h:41
Definition: HttpReply.h:25
void putCc(const HttpHdrCc *otherCc)
copies Cache-Control header to this message
Definition: Message.cc:33
HttpHeaderEntry * findEntry(Http::HdrType id) const
Definition: HttpHeader.cc:631
AnyP::ProtocolVersion version
breakdown of protocol version label: (HTTP/ICY) and (0.9/1.0/1.1)
Definition: StatusLine.h:62
struct SquidConfig::@110 onoff
bool ProhibitsContentLength(const StatusCode sc)
whether this response status code prohibits sending Content-Length
Definition: StatusCode.h:94
virtual void configureContentLengthInterpreter(Http::ContentLengthInterpreter &)
configures the interpreter as needed
Definition: HttpReply.cc:460
void set(const AnyP::ProtocolVersion &newVersion, Http::StatusCode newStatus, const char *newReason=NULL)
Definition: StatusLine.cc:35
static HttpReplyPointer MakeConnectionEstablished()
construct and return an HTTP/200 (Connection Established) response
Definition: HttpReply.cc:119
HttpHdrContRange * content_range
parsed Content-Range; nil for non-206 responses!
Definition: HttpReply.h:157
Definition: HttpHdrContRange.h:18
void setHeaders(Http::StatusCode status, const char *reason, const char *ctype, int64_t clen, time_t lmt, time_t expires)
Definition: HttpReply.cc:167
virtual bool parseFirstLine(const char *start, const char *end)
Definition: HttpReply.cc:454
Definition: HttpHeader.h:72
int strListGetItem(const String *str, char del, const char **item, int *ilen, const char **pos)
Definition: StrList.cc:86
void removeStaleWarnings()
Remove Warnings with warn-date different from Date value.
Definition: HttpReply.cc:598
AnyP::ProtocolVersion ProtocolVersion(unsigned int aMajor, unsigned int aMinor)
HTTP version label information.
Definition: ProtocolVersion.h:19
Pointer recreateOnNotModified(const HttpReply &reply304) const
Definition: HttpReply.cc:262