]> git.ipfire.org Git - thirdparty/squid.git/blame - src/acl/HttpHeaderData.h
SourceFormat Enforcement
[thirdparty/squid.git] / src / acl / HttpHeaderData.h
CommitLineData
00634927 1/*
4ac4a490 2 * Copyright (C) 1996-2017 The Squid Software Foundation and contributors
00634927 3 *
bbc27441
AJ
4 * Squid software is distributed under GPLv2+ license and includes
5 * contributions from numerous individuals and organizations.
6 * Please see the COPYING and CONTRIBUTORS files for details.
00634927 7 */
bbc27441 8
7df0bfd7 9#ifndef SQUID_ACLHTTPHEADERDATA_H
10#define SQUID_ACLHTTPHEADERDATA_H
63be0a78 11
3ad63615 12#include "acl/Data.h"
e1f7507e 13#include "HttpHeader.h"
65e41a45 14#include "sbuf/SBuf.h"
b367a435 15#include "SquidString.h"
00634927 16
17class ACLHTTPHeaderData : public ACLData<HttpHeader*>
18{
00634927 19 MEMPROXY_CLASS(ACLHTTPHeaderData);
20
741c2986 21public:
7df0bfd7 22 ACLHTTPHeaderData();
00634927 23 virtual ~ACLHTTPHeaderData();
24 virtual bool match(HttpHeader* hdr);
4f8ca96e 25 virtual SBufList dump() const;
00634927 26 virtual void parse();
27 virtual bool empty() const;
28 virtual ACLData<HttpHeader*> *clone() const;
29
30private:
81ab22b6
FC
31 Http::HdrType hdrId; /**< set if header is known */
32 SBuf hdrName; /**< always set */
7df0bfd7 33 ACLData<char const *> * regex_rule;
00634927 34};
35
7df0bfd7 36#endif /* SQUID_ACLHTTPHEADERDATA_H */
f53969cc 37