From: Alex Rousskov Date: Sun, 26 May 2013 01:08:42 +0000 (-0600) Subject: Merged from trunk (r12852). X-Git-Tag: SQUID_3_4_0_1~102^2~4 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=44b364a34850b8f01680bac57a62387527ed561f;p=thirdparty%2Fsquid.git Merged from trunk (r12852). --- 44b364a34850b8f01680bac57a62387527ed561f diff --cc src/AclRegs.cc index 3b5cb0bd86,ff65937df2..54656f96b8 --- a/src/AclRegs.cc +++ b/src/AclRegs.cc @@@ -183,8 -184,5 +185,11 @@@ ACLMaxUserIP ACLMaxUserIP::RegistryEntr ACL::Prototype ACLTag::RegistryProtoype(&ACLTag::RegistryEntry_, "tag"); ACLStrategised ACLTag::RegistryEntry_(new ACLStringData, ACLTagStrategy::Instance(), "tag"); +ACL::Prototype Acl::AnyOf::RegistryProtoype(&Acl::AnyOf::RegistryEntry_, "any-of"); +Acl::AnyOf Acl::AnyOf::RegistryEntry_; + +ACL::Prototype Acl::AllOf::RegistryProtoype(&Acl::AllOf::RegistryEntry_, "all-of"); +Acl::AllOf Acl::AllOf::RegistryEntry_; ++ + ACL::Prototype ACLNote::RegistryProtoype(&ACLNote::RegistryEntry_, "note"); + ACLStrategised ACLNote::RegistryEntry_(new ACLNoteData, ACLNoteStrategy::Instance(), "note"); diff --cc src/HttpHeaderTools.h index 5f097977d8,88046f2d17..ac273b3494 --- a/src/HttpHeaderTools.h +++ b/src/HttpHeaderTools.h @@@ -15,7 -17,12 +18,10 @@@ #if HAVE_STRING #include #endif + #if HAVE_STRINGS_H + #include + #endif -class acl_access; -class ACLList; class HeaderWithAcl; class HttpHeader; class HttpHeaderFieldInfo; diff --cc src/acl/Asn.cc index f7d3ca447b,6966e6f3f4..5084282811 --- a/src/acl/Asn.cc +++ b/src/acl/Asn.cc @@@ -636,12 -636,9 +636,11 @@@ ACLDestinationASNStrategy::match (ACLDa } else if (!checklist->request->flags.destinationIpLookedUp) { /* No entry in cache, lookup not attempted */ - /* XXX FIXME: allow accessing the acl name here */ - debugs(28, 3, "asnMatchAcl: Can't yet compare '" << "unknown" /*name*/ << "' ACL for '" << checklist->request->GetHost() << "'"); + debugs(28, 3, "asnMatchAcl: Can't yet compare '" << AclMatchedName << "' ACL for '" << checklist->request->GetHost() << "'"); - checklist->changeState (DestinationIPLookup::Instance()); - } else { + if (checklist->goAsync(DestinationIPLookup::Instance())) + return -1; + // else fall through to noaddr match, hiding the lookup failure (XXX) + } Ip::Address noaddr; noaddr.SetNoAddr(); return data->match(noaddr);