HttpHeader.h
Go to the documentation of this file.
57 static HttpHeaderEntry *parse(const char *field_start, const char *field_end, const http_hdr_owner_type msgType);
96 int parse(const char *buf, size_t buf_len, bool atEnd, size_t &hdr_sz, Http::ContentLengthInterpreter &interpreter);
188 static bool Isolate(const char **parse_start, size_t l, const char **blk_start, const char **blk_end);
204void httpHeaderCalcMask(HttpHeaderMask * mask, Http::HdrType http_hdr_type_enums[], size_t count);
SBuf httpHeaderQuoteString(const char *raw)
quotes string using RFC 7230 quoted-string rules
Definition: HttpHeaderTools.cc:237
void httpHeaderCalcMask(HttpHeaderMask *mask, Http::HdrType http_hdr_type_enums[], size_t count)
int httpHeaderParseQuotedString(const char *start, const int len, String *val)
Definition: HttpHeaderTools.cc:167
Definition: ProtocolVersion.h:24
Definition: HttpHdrCc.h:44
Definition: HttpHdrContRange.h:18
Definition: HttpHeaderRange.h:52
Definition: HttpHdrSc.h:25
Definition: HttpHeader.h:51
static HttpHeaderEntry * parse(const char *field_start, const char *field_end, const http_hdr_owner_type msgType)
Definition: HttpHeader.cc:1425
MEMPROXY_CLASS(HttpHeaderEntry)
HttpHeaderEntry(Http::HdrType id, const SBuf &name, const char *value)
Definition: HttpHeader.cc:1393
Definition: HttpHeader.h:72
SBuf getByNameListMember(const char *name, const char *member, const char separator) const
Definition: HttpHeader.cc:949
TimeOrTag getTimeOrTag(Http::HdrType id) const
Definition: HttpHeader.cc:1363
bool getByIdIfPresent(Http::HdrType id, String *result) const
Definition: HttpHeader.cc:903
int hasByNameListMember(const char *name, const char *member, const char separator) const
Definition: HttpHeader.cc:1719
bool unsupportedTe() const
whether message used an unsupported and/or invalid Transfer-Encoding
Definition: HttpHeader.h:171
int parse(const char *header_start, size_t len, Http::ContentLengthInterpreter &interpreter)
Definition: HttpHeader.cc:356
SBuf getListMember(Http::HdrType id, const char *member, const char separator) const
Definition: HttpHeader.cc:960
SBuf getAuthToken(Http::HdrType id, const char *auth_scheme) const
Definition: HttpHeader.cc:1308
HttpHeaderEntry * getEntry(HttpHeaderPos *pos) const
Definition: HttpHeader.cc:590
static bool Isolate(const char **parse_start, size_t l, const char **blk_start, const char **blk_end)
Definition: HttpHeader.cc:308
std::vector< HttpHeaderEntry *, PoolingAllocator< HttpHeaderEntry * > > entries
Definition: HttpHeader.h:174
void removeConnectionHeaderEntries()
Definition: HttpHeader.cc:1760
void addVia(const AnyP::ProtocolVersion &ver, const HttpHeader *from=nullptr)
Definition: HttpHeader.cc:977
bool conflictingContentLength() const
Definition: HttpHeader.h:112
bool hasNamed(const SBuf &s, String *value=nullptr) const
Definition: HttpHeader.cc:897
HttpHeaderEntry * findEntry(Http::HdrType id) const
Definition: HttpHeader.cc:609
void putAuth(const char *auth_scheme, const char *realm)
Definition: HttpHeader.cc:1036
void updateOrAddStr(Http::HdrType, const SBuf &)
Definition: HttpHeader.cc:1116
void packInto(Packable *p, bool mask_sensitive_info=false) const
Definition: HttpHeader.cc:546
HttpHeaderEntry * findLastEntry(Http::HdrType id) const
Definition: HttpHeader.cc:634
bool skipUpdateHeader(const Http::HdrType id) const
Definition: HttpHeader.cc:265
int hasListMember(Http::HdrType id, const char *member, const char separator) const
Definition: HttpHeader.cc:1695
Definition: Packable.h:53
Definition: SquidString.h:26
Definition: TimeOrTag.h:18