void
Adaptation::AccessCheck::checkCandidates()
{
- debugs(93, 3, "Adaptation::AccessCheck checks " << candidates.size());
+ debugs(93, 4, "Adaptation::AccessCheck has " << candidates.size() << " rules");
while (!candidates.empty()) {
if (AccessRule *r = FindRule(topCandidate())) {
// XXX: we do not have access to conn->rfc931 here.
acl_checklist = aclChecklistCreate(r->acl, req, dash_str);
+ acl_checklist->reply = rep ? HTTPMSGLOCK(rep) : NULL;
acl_checklist->nonBlockingCheck(AccessCheckCallbackWrapper, this);
return;
}
}
// when there are no canidates, fake answer 1
- debugs(93, 3, "Adaptation::AccessCheck::check: NO candidates left");
+ debugs(93, 4, "Adaptation::AccessCheck::check: NO candidates left");
noteAnswer(1);
}
{
debugs(93, 5, HERE << "AccessCheck::noteAnswer " << answer);
if (candidates.size())
- debugs(93, 5, HERE << "was checking " << topCandidate());
+ debugs(93, 5, HERE << "was checking rule" << topCandidate());
if (!answer) {
+ candidates.shift(); // the rule did not match
checkCandidates();
return;
}