53 return b->status1 <= a->status1 && a->status2 <= b->status2;
60 const auto minLeft = std::min(a->status1, b->status1);
61 const auto maxRight = std::max(a->status2, b->status2);
70 os << status->
toStr();
143 debugs(28, 3,
"aclMatchHTTPStatus: '" << status <<
"' " << (result ?
"found" :
"NOT found"));
144 return (result !=
nullptr);
ACLFilledChecklist * Filled(ACLChecklist *checklist)
convenience and safety wrapper for dynamic_cast<ACLFilledChecklist*>
static void aclParseHTTPStatusList(Splay< acl_httpstatus_data * > **curlist)
static int aclHTTPStatusCompare(acl_httpstatus_data *const &a, acl_httpstatus_data *const &b)
static std::ostream & operator<<(std::ostream &os, const acl_httpstatus_data *status)
reports acl_httpstatus_data using squid.conf http_status ACL value format
static acl_httpstatus_data * aclParseHTTPStatusData(const char *t)
static int aclMatchHTTPStatus(Splay< acl_httpstatus_data * > **dataptr, Http::StatusCode status)
~ACLHTTPStatus() override
void parse() override
parses node representation in squid.conf; dies on failures
int match(ACLChecklist *checklist) override
Matches the actual data in checklist against this Acl::Node.
char const * typeString() const override
ACLHTTPStatus(char const *)
SBufList dump() const override
Splay< acl_httpstatus_data * > * data
bool empty() const override
static Value MakeCombinedValue(const Value &a, const Value &b)
static int Compare(const Value &a, const Value &b)
static bool IsSubset(const Value &a, const Value &b)
static void Merge(Splay< Value > &, Value &&)
static char * strtokFile()
SBuf & Printf(const char *fmt,...) PRINTF_FORMAT_ARG2
void visit(ValueVisitor &) const
left-to-right visit of all stored Values
void destroy(SPLAYFREE *=DefaultFree)
#define debugs(SECTION, LEVEL, CONTENT)
std::list< SBuf > SBufList
void operator()(const acl_httpstatus_data *node)