From: Alex Rousskov Date: Sun, 8 Mar 2009 21:53:27 +0000 (-0600) Subject: Synced #includes after moving files around. X-Git-Tag: SQUID_3_2_0_1~1111^2~14 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=127dce769c0d7699cc45b4a8b19cd5ed46e85342;p=thirdparty%2Fsquid.git Synced #includes after moving files around. Use newly added ACLFilledChecklist for fast ACL checks. Its constructor locks request and accessList, simplifying the caller code. Use newly added ACLFilledChecklist for state-specific ACL code. Also, the ACLChecklist::authenticated() method is now an AuthenticateAcl global function. See ACLFilledChecklist addition log for rationale. Context: SourceLayout: acl/, take 1 --- diff --git a/src/ACLCertificate.cc b/src/acl/Certificate.cc similarity index 93% rename from src/ACLCertificate.cc rename to src/acl/Certificate.cc index c804effd11..5d72957bb4 100644 --- a/src/ACLCertificate.cc +++ b/src/acl/Certificate.cc @@ -41,9 +41,9 @@ */ #if USE_SSL -#include "ACLCertificate.h" -#include "ACLChecklist.h" -#include "ACLCertificateData.h" +#include "acl/Certificate.h" +#include "acl/Checklist.h" +#include "acl/CertificateData.h" #include "fde.h" #include "client_side.h" @@ -53,7 +53,7 @@ ACL::Prototype ACLCertificate::CARegistryProtoype(&ACLCertificate::CARegistryEnt ACLStrategised ACLCertificate::CARegistryEntry_(new ACLCertificateData (sslGetCAAttribute), ACLCertificateStrategy::Instance(), "ca_cert"); int -ACLCertificateStrategy::match (ACLData * &data, ACLChecklist *checklist) +ACLCertificateStrategy::match (ACLData * &data, ACLFilledChecklist *checklist) { const int fd = checklist->fd(); const bool goodDescriptor = 0 <= fd && fd <= Biggest_FD; diff --git a/src/ACLCertificate.h b/src/acl/Certificate.h similarity index 93% rename from src/ACLCertificate.h rename to src/acl/Certificate.h index bc29eb2a83..4cea946fb8 100644 --- a/src/ACLCertificate.h +++ b/src/acl/Certificate.h @@ -35,18 +35,18 @@ #ifndef SQUID_ACLCERTIFICATE_H #define SQUID_ACLCERTIFICATE_H -#include "ACL.h" -#include "ACLData.h" -#include "ACLChecklist.h" +#include "acl/Acl.h" +#include "acl/Data.h" +#include "acl/Checklist.h" #include "ssl_support.h" -#include "ACLStrategised.h" +#include "acl/Strategised.h" /// \ingroup ACLAPI class ACLCertificateStrategy : public ACLStrategy { public: - virtual int match (ACLData * &, ACLChecklist *); + virtual int match (ACLData * &, ACLFilledChecklist *); static ACLCertificateStrategy *Instance(); /* Not implemented to prevent copies of the instance. */ /* Not private to prevent brain dead g+++ warnings about diff --git a/src/ACLDestinationASN.h b/src/acl/DestinationAsn.h similarity index 94% rename from src/ACLDestinationASN.h rename to src/acl/DestinationAsn.h index 7586d4c8ad..efaaade670 100644 --- a/src/ACLDestinationASN.h +++ b/src/acl/DestinationAsn.h @@ -32,8 +32,8 @@ #ifndef SQUID_ACLDESTINATIONASN_H #define SQUID_ACLDESTINATIONASN_H -#include "ACLASN.h" -#include "ACLStrategy.h" +#include "acl/Asn.h" +#include "acl/Strategy.h" #include "ip/IpAddress.h" /// \ingroup ACLAPI @@ -41,7 +41,7 @@ class ACLDestinationASNStrategy : public ACLStrategy { public: - virtual int match (ACLData * &, ACLChecklist *); + virtual int match (ACLData * &, ACLFilledChecklist *); virtual bool requiresRequest() const {return true;} static ACLDestinationASNStrategy *Instance(); diff --git a/src/ACLDestinationDomain.h b/src/acl/DestinationDomain.h similarity index 94% rename from src/ACLDestinationDomain.h rename to src/acl/DestinationDomain.h index d7187a1398..b4545f3c03 100644 --- a/src/ACLDestinationDomain.h +++ b/src/acl/DestinationDomain.h @@ -35,17 +35,17 @@ #ifndef SQUID_ACLSOURCEDOMAIN_H #define SQUID_ACLSOURCEDOMAIN_H -#include "ACL.h" -#include "ACLData.h" -#include "ACLChecklist.h" -#include "ACLStrategised.h" +#include "acl/Acl.h" +#include "acl/Data.h" +#include "acl/Checklist.h" +#include "acl/Strategised.h" /// \ingroup ACLAPI class ACLDestinationDomainStrategy : public ACLStrategy { public: - virtual int match (ACLData * &, ACLChecklist *); + virtual int match (ACLData * &, ACLFilledChecklist *); static ACLDestinationDomainStrategy *Instance(); /** diff --git a/src/ACLExtUser.cc b/src/acl/ExtUser.cc similarity index 93% rename from src/ACLExtUser.cc rename to src/acl/ExtUser.cc index 54be55173d..a5cf9ffcc6 100644 --- a/src/ACLExtUser.cc +++ b/src/acl/ExtUser.cc @@ -35,11 +35,10 @@ */ #include "squid.h" -#include "ACLExtUser.h" -#include "authenticate.h" -#include "ACLChecklist.h" -#include "ACLRegexData.h" -#include "ACLUserData.h" +#include "acl/ExtUser.h" +#include "acl/FilledChecklist.h" +#include "acl/RegexData.h" +#include "acl/UserData.h" #include "client_side.h" #include "HttpRequest.h" @@ -76,8 +75,9 @@ ACLExtUser::parse() } int -ACLExtUser::match(ACLChecklist *checklist) +ACLExtUser::match(ACLChecklist *cl) { + ACLFilledChecklist *checklist = Filled(cl); if (checklist->request->extacl_user.size()) { return data->match(checklist->request->extacl_user.termedBuf()); } else { diff --git a/src/ACLHTTPRepHeader.cc b/src/acl/HttpRepHeader.cc similarity index 94% rename from src/ACLHTTPRepHeader.cc rename to src/acl/HttpRepHeader.cc index 6b81b59bb9..d72af9bd70 100644 --- a/src/ACLHTTPRepHeader.cc +++ b/src/acl/HttpRepHeader.cc @@ -34,9 +34,9 @@ */ #include "squid.h" -#include "ACLHTTPRepHeader.h" -#include "ACLHTTPHeaderData.h" -#include "ACLChecklist.h" +#include "acl/HttpRepHeader.h" +#include "acl/HttpHeaderData.h" +#include "acl/Checklist.h" #include "HttpReply.h" ACL::Prototype ACLHTTPRepHeader::RegistryProtoype(&ACLHTTPRepHeader::RegistryEntry_, "rep_header"); @@ -44,7 +44,7 @@ ACL::Prototype ACLHTTPRepHeader::RegistryProtoype(&ACLHTTPRepHeader::RegistryEnt ACLStrategised ACLHTTPRepHeader::RegistryEntry_(new ACLHTTPHeaderData, ACLHTTPRepHeaderStrategy::Instance(), "rep_header"); int -ACLHTTPRepHeaderStrategy::match (ACLData * &data, ACLChecklist *checklist) +ACLHTTPRepHeaderStrategy::match (ACLData * &data, ACLFilledChecklist *checklist) { return data->match (&checklist->reply->header); } diff --git a/src/ACLHTTPRepHeader.h b/src/acl/HttpRepHeader.h similarity index 94% rename from src/ACLHTTPRepHeader.h rename to src/acl/HttpRepHeader.h index 07f1109aea..2c38421e92 100644 --- a/src/ACLHTTPRepHeader.h +++ b/src/acl/HttpRepHeader.h @@ -35,8 +35,8 @@ #ifndef SQUID_ACLHTTPREPHEADER_H #define SQUID_ACLHTTPREPHEADER_H -#include "ACLStrategy.h" -#include "ACLStrategised.h" +#include "acl/Strategy.h" +#include "acl/Strategised.h" #include "HttpHeader.h" /// \ingroup ACLAPI @@ -44,7 +44,7 @@ class ACLHTTPRepHeaderStrategy : public ACLStrategy { public: - virtual int match (ACLData * &, ACLChecklist *); + virtual int match (ACLData * &, ACLFilledChecklist *); virtual bool requiresReply() const { return true; } static ACLHTTPRepHeaderStrategy *Instance(); diff --git a/src/ACLHTTPReqHeader.cc b/src/acl/HttpReqHeader.cc similarity index 94% rename from src/ACLHTTPReqHeader.cc rename to src/acl/HttpReqHeader.cc index cbe7a5189a..a64b0d5466 100644 --- a/src/ACLHTTPReqHeader.cc +++ b/src/acl/HttpReqHeader.cc @@ -34,9 +34,9 @@ */ #include "squid.h" -#include "ACLHTTPReqHeader.h" -#include "ACLHTTPHeaderData.h" -#include "ACLChecklist.h" +#include "acl/HttpReqHeader.h" +#include "acl/HttpHeaderData.h" +#include "acl/Checklist.h" #include "HttpRequest.h" ACL::Prototype ACLHTTPReqHeader::RegistryProtoype(&ACLHTTPReqHeader::RegistryEntry_, "req_header"); @@ -44,7 +44,7 @@ ACL::Prototype ACLHTTPReqHeader::RegistryProtoype(&ACLHTTPReqHeader::RegistryEnt ACLStrategised ACLHTTPReqHeader::RegistryEntry_(new ACLHTTPHeaderData, ACLHTTPReqHeaderStrategy::Instance(), "req_header"); int -ACLHTTPReqHeaderStrategy::match (ACLData * &data, ACLChecklist *checklist) +ACLHTTPReqHeaderStrategy::match (ACLData * &data, ACLFilledChecklist *checklist) { return data->match (&checklist->request->header); } diff --git a/src/ACLHTTPReqHeader.h b/src/acl/HttpReqHeader.h similarity index 94% rename from src/ACLHTTPReqHeader.h rename to src/acl/HttpReqHeader.h index bccb40fa94..aab33a2230 100644 --- a/src/ACLHTTPReqHeader.h +++ b/src/acl/HttpReqHeader.h @@ -35,8 +35,8 @@ #ifndef SQUID_ACLHTTPREQHEADER_H #define SQUID_ACLHTTPREQHEADER_H -#include "ACLStrategy.h" -#include "ACLStrategised.h" +#include "acl/Strategy.h" +#include "acl/Strategised.h" #include "HttpHeader.h" /// \ingroup ACLAPI @@ -44,7 +44,7 @@ class ACLHTTPReqHeaderStrategy : public ACLStrategy { public: - virtual int match (ACLData * &, ACLChecklist *); + virtual int match (ACLData * &, ACLFilledChecklist *); virtual bool requiresRequest() const { return true; } static ACLHTTPReqHeaderStrategy *Instance(); diff --git a/src/ACLIdent.cc b/src/acl/Ident.cc similarity index 92% rename from src/ACLIdent.cc rename to src/acl/Ident.cc index 291563bba5..7eddb18044 100644 --- a/src/ACLIdent.cc +++ b/src/acl/Ident.cc @@ -35,11 +35,10 @@ */ #include "squid.h" -#include "ACLIdent.h" -#include "authenticate.h" -#include "ACLChecklist.h" -#include "ACLRegexData.h" -#include "ACLUserData.h" +#include "acl/Ident.h" +#include "acl/FilledChecklist.h" +#include "acl/RegexData.h" +#include "acl/UserData.h" #include "client_side.h" #include "ident.h" @@ -79,8 +78,9 @@ ACLIdent::parse() } int -ACLIdent::match(ACLChecklist *checklist) +ACLIdent::match(ACLChecklist *cl) { + ACLFilledChecklist *checklist = Filled(cl); if (checklist->rfc931[0]) { return data->match(checklist->rfc931); } else if (checklist->conn() != NULL && checklist->conn()->rfc931[0]) { @@ -124,8 +124,9 @@ IdentLookup::Instance() } void -IdentLookup::checkForAsync(ACLChecklist *checklist)const +IdentLookup::checkForAsync(ACLChecklist *cl)const { + ACLFilledChecklist *checklist = Filled(cl); if (checklist->conn() != NULL) { debugs(28, 3, "IdentLookup::checkForAsync: Doing ident lookup" ); checklist->asyncInProgress(true); @@ -141,7 +142,7 @@ IdentLookup::checkForAsync(ACLChecklist *checklist)const void IdentLookup::LookupDone(const char *ident, void *data) { - ACLChecklist *checklist = (ACLChecklist *)data; + ACLFilledChecklist *checklist = Filled(static_cast(data)); assert (checklist->asyncState() == IdentLookup::Instance()); if (ident) { diff --git a/src/ACLMethod.cc b/src/acl/Method.cc similarity index 92% rename from src/ACLMethod.cc rename to src/acl/Method.cc index 2aea0f709d..93a5edb80c 100644 --- a/src/ACLMethod.cc +++ b/src/acl/Method.cc @@ -34,9 +34,9 @@ */ #include "squid.h" -#include "ACLMethod.h" -#include "ACLMethodData.h" -#include "ACLChecklist.h" +#include "acl/Method.h" +#include "acl/MethodData.h" +#include "acl/Checklist.h" #include "HttpRequest.h" /* explicit template instantiation required for some systems */ @@ -48,7 +48,7 @@ ACL::Prototype ACLMethod::RegistryProtoype(&ACLMethod::RegistryEntry_, "method") ACLStrategised ACLMethod::RegistryEntry_(new ACLMethodData, ACLMethodStrategy::Instance(), "method"); int -ACLMethodStrategy::match (ACLData * &data, ACLChecklist *checklist) +ACLMethodStrategy::match (ACLData * &data, ACLFilledChecklist *checklist) { return data->match (checklist->request->method); } diff --git a/src/ACLMethod.h b/src/acl/Method.h similarity index 94% rename from src/ACLMethod.h rename to src/acl/Method.h index d69a6360aa..c5d71ec34a 100644 --- a/src/ACLMethod.h +++ b/src/acl/Method.h @@ -35,15 +35,15 @@ #ifndef SQUID_ACLMETHOD_H #define SQUID_ACLMETHOD_H -#include "ACLStrategy.h" -#include "ACLStrategised.h" +#include "acl/Strategy.h" +#include "acl/Strategised.h" /// \ingroup ACLAPI class ACLMethodStrategy : public ACLStrategy { public: - virtual int match (ACLData * &, ACLChecklist *); + virtual int match (ACLData * &, ACLFilledChecklist *); virtual bool requiresRequest() const {return true;} static ACLMethodStrategy *Instance(); diff --git a/src/ACLMyPort.cc b/src/acl/MyPort.cc similarity index 92% rename from src/ACLMyPort.cc rename to src/acl/MyPort.cc index 8a72ca258b..9cd9debfe6 100644 --- a/src/ACLMyPort.cc +++ b/src/acl/MyPort.cc @@ -34,9 +34,9 @@ */ #include "squid.h" -#include "ACLMyPort.h" -#include "ACLIntRange.h" -#include "ACLChecklist.h" +#include "acl/MyPort.h" +#include "acl/IntRange.h" +#include "acl/Checklist.h" /* explicit template instantiation required for some systems */ @@ -47,7 +47,7 @@ ACL::Prototype ACLMyPort::RegistryProtoype(&ACLMyPort::RegistryEntry_, "myport") ACLStrategised ACLMyPort::RegistryEntry_(new ACLIntRange, ACLMyPortStrategy::Instance(), "myport"); int -ACLMyPortStrategy::match (ACLData * &data, ACLChecklist *checklist) +ACLMyPortStrategy::match (ACLData * &data, ACLFilledChecklist *checklist) { return data->match (checklist->my_addr.GetPort()); } diff --git a/src/ACLMyPort.h b/src/acl/MyPort.h similarity index 94% rename from src/ACLMyPort.h rename to src/acl/MyPort.h index 2316fe0dd4..2ebf30f645 100644 --- a/src/ACLMyPort.h +++ b/src/acl/MyPort.h @@ -35,15 +35,15 @@ #ifndef SQUID_ACLMYPORT_H #define SQUID_ACLMYPORT_H -#include "ACLStrategy.h" -#include "ACLStrategised.h" +#include "acl/Strategy.h" +#include "acl/Strategised.h" /// \ingroup ACLAPI class ACLMyPortStrategy : public ACLStrategy { public: - virtual int match (ACLData * &, ACLChecklist *); + virtual int match (ACLData * &, ACLFilledChecklist *); static ACLMyPortStrategy *Instance(); /** * Not implemented to prevent copies of the instance. diff --git a/src/ACLMyPortName.cc b/src/acl/MyPortName.cc similarity index 92% rename from src/ACLMyPortName.cc rename to src/acl/MyPortName.cc index fed20b6921..2a394e4a0e 100644 --- a/src/ACLMyPortName.cc +++ b/src/acl/MyPortName.cc @@ -35,9 +35,9 @@ #include "squid.h" #include "ProtoPort.h" -#include "ACLMyPortName.h" -#include "ACLStringData.h" -#include "ACLChecklist.h" +#include "acl/MyPortName.h" +#include "acl/StringData.h" +#include "acl/Checklist.h" /* for ConnStateData */ #include "client_side.h" @@ -48,7 +48,7 @@ ACL::Prototype ACLMyPortName::RegistryProtoype(&ACLMyPortName::RegistryEntry_, " ACLStrategised ACLMyPortName::RegistryEntry_(new ACLStringData, ACLMyPortNameStrategy::Instance(), "myportname"); int -ACLMyPortNameStrategy::match (ACLData * &data, ACLChecklist *checklist) +ACLMyPortNameStrategy::match (ACLData * &data, ACLFilledChecklist *checklist) { if (checklist->conn() != NULL) return data->match (checklist->conn()->port->name); diff --git a/src/ACLMyPortName.h b/src/acl/MyPortName.h similarity index 94% rename from src/ACLMyPortName.h rename to src/acl/MyPortName.h index 65f92aac64..584aa19616 100644 --- a/src/ACLMyPortName.h +++ b/src/acl/MyPortName.h @@ -35,14 +35,14 @@ #ifndef SQUID_ACLMYPORTNAME_H #define SQUID_ACLMYPORTNAME_H -#include "ACLStrategy.h" -#include "ACLStrategised.h" +#include "acl/Strategy.h" +#include "acl/Strategised.h" class ACLMyPortNameStrategy : public ACLStrategy { public: - virtual int match (ACLData * &, ACLChecklist *); + virtual int match (ACLData * &, ACLFilledChecklist *); static ACLMyPortNameStrategy *Instance(); /* Not implemented to prevent copies of the instance. */ /* Not private to prevent brain dead g+++ warnings about diff --git a/src/ACLPeerName.cc b/src/acl/PeerName.cc similarity index 75% rename from src/ACLPeerName.cc rename to src/acl/PeerName.cc index 091e1f741c..41284f17d7 100644 --- a/src/ACLPeerName.cc +++ b/src/acl/PeerName.cc @@ -1,14 +1,14 @@ #include "squid.h" -#include "ACLPeerName.h" -#include "ACLStringData.h" -#include "ACLChecklist.h" +#include "acl/PeerName.h" +#include "acl/StringData.h" +#include "acl/Checklist.h" ACL::Prototype ACLPeerName::RegistryProtoype(&ACLPeerName::RegistryEntry_, "peername"); ACLStrategised ACLPeerName::RegistryEntry_(new ACLStringData, ACLPeerNameStrategy::Instance(), "peername"); int -ACLPeerNameStrategy::match (ACLData * &data, ACLChecklist *checklist) +ACLPeerNameStrategy::match (ACLData * &data, ACLFilledChecklist *checklist) { if (checklist->dst_peer != NULL && checklist->dst_peer->name != NULL) return data->match(checklist->dst_peer->name); diff --git a/src/ACLPeerName.h b/src/acl/PeerName.h similarity index 85% rename from src/ACLPeerName.h rename to src/acl/PeerName.h index 40ca816af0..cc69e7a025 100644 --- a/src/ACLPeerName.h +++ b/src/acl/PeerName.h @@ -1,14 +1,14 @@ #ifndef SQUID_ACLPEERNAME_H #define SQUID_ACLPEERNAME_H -#include "ACLStrategy.h" -#include "ACLStrategised.h" +#include "acl/Strategy.h" +#include "acl/Strategised.h" class ACLPeerNameStrategy : public ACLStrategy { public: - virtual int match (ACLData * &, ACLChecklist *); + virtual int match (ACLData * &, ACLFilledChecklist *); static ACLPeerNameStrategy *Instance(); /* Not implemented to prevent copies of the instance. */ /* Not private to prevent brain dead g+++ warnings about diff --git a/src/ACLProtocol.cc b/src/acl/Protocol.cc similarity index 92% rename from src/ACLProtocol.cc rename to src/acl/Protocol.cc index 119801dcb6..810d1c1679 100644 --- a/src/ACLProtocol.cc +++ b/src/acl/Protocol.cc @@ -34,9 +34,9 @@ */ #include "squid.h" -#include "ACLProtocol.h" -#include "ACLProtocolData.h" -#include "ACLChecklist.h" +#include "acl/Protocol.h" +#include "acl/ProtocolData.h" +#include "acl/Checklist.h" #include "HttpRequest.h" /* explicit template instantiation required for some systems */ @@ -48,7 +48,7 @@ ACL::Prototype ACLProtocol::RegistryProtoype(&ACLProtocol::RegistryEntry_, "prot ACLStrategised ACLProtocol::RegistryEntry_(new ACLProtocolData, ACLProtocolStrategy::Instance(), "proto"); int -ACLProtocolStrategy::match (ACLData * &data, ACLChecklist *checklist) +ACLProtocolStrategy::match (ACLData * &data, ACLFilledChecklist *checklist) { return data->match (checklist->request->protocol); } diff --git a/src/ACLProtocol.h b/src/acl/Protocol.h similarity index 94% rename from src/ACLProtocol.h rename to src/acl/Protocol.h index 19acc46d06..e6a935db1b 100644 --- a/src/ACLProtocol.h +++ b/src/acl/Protocol.h @@ -35,14 +35,14 @@ #ifndef SQUID_ACLPROTOCOL_H #define SQUID_ACLPROTOCOL_H -#include "ACLStrategy.h" -#include "ACLStrategised.h" +#include "acl/Strategy.h" +#include "acl/Strategised.h" class ACLProtocolStrategy : public ACLStrategy { public: - virtual int match (ACLData * &, ACLChecklist *); + virtual int match (ACLData * &, ACLFilledChecklist *); virtual bool requiresRequest() const {return true;} static ACLProtocolStrategy *Instance(); diff --git a/src/ACLReplyHeaderStrategy.h b/src/acl/ReplyHeaderStrategy.h similarity index 92% rename from src/ACLReplyHeaderStrategy.h rename to src/acl/ReplyHeaderStrategy.h index e1b55c2ea1..22455d3208 100644 --- a/src/ACLReplyHeaderStrategy.h +++ b/src/acl/ReplyHeaderStrategy.h @@ -36,10 +36,10 @@ class ACLChecklist; -#include "ACL.h" -#include "ACLData.h" -#include "ACLStrategy.h" -#include "ACLChecklist.h" +#include "acl/Acl.h" +#include "acl/Data.h" +#include "acl/Strategy.h" +#include "acl/FilledChecklist.h" #include "HttpReply.h" template @@ -47,7 +47,7 @@ class ACLReplyHeaderStrategy : public ACLStrategy { public: - virtual int match (ACLData * &, ACLChecklist *); + virtual int match (ACLData * &, ACLFilledChecklist *); virtual bool requiresReply() const {return true;} static ACLReplyHeaderStrategy *Instance(); @@ -65,7 +65,7 @@ private: template int -ACLReplyHeaderStrategy
::match (ACLData * &data, ACLChecklist *checklist) +ACLReplyHeaderStrategy
::match (ACLData * &data, ACLFilledChecklist *checklist) { char const *theHeader = checklist->reply->header.getStr(header); diff --git a/src/ACLReplyMIMEType.h b/src/acl/ReplyMimeType.h similarity index 91% rename from src/ACLReplyMIMEType.h rename to src/acl/ReplyMimeType.h index a316b0c051..dbaea63c2a 100644 --- a/src/ACLReplyMIMEType.h +++ b/src/acl/ReplyMimeType.h @@ -34,8 +34,8 @@ #ifndef SQUID_ACLREPLYMIMETYPE_H #define SQUID_ACLREPLYMIMETYPE_H -#include "ACL.h" -#include "ACLStrategised.h" +#include "acl/Acl.h" +#include "acl/Strategised.h" class ACLReplyMIMEType { @@ -47,13 +47,13 @@ private: /* partial specialisation */ -#include "ACLData.h" -#include "ACLReplyHeaderStrategy.h" -#include "ACLChecklist.h" +#include "acl/Data.h" +#include "acl/ReplyHeaderStrategy.h" +#include "acl/Checklist.h" template <> inline int -ACLReplyHeaderStrategy::match(ACLData * &data, ACLChecklist *checklist) +ACLReplyHeaderStrategy::match(ACLData * &data, ACLFilledChecklist *checklist) { char const *theHeader = checklist->reply->header.getStr(HDR_CONTENT_TYPE); diff --git a/src/ACLRequestHeaderStrategy.h b/src/acl/RequestHeaderStrategy.h similarity index 92% rename from src/ACLRequestHeaderStrategy.h rename to src/acl/RequestHeaderStrategy.h index 00667d9a5a..316696df10 100644 --- a/src/ACLRequestHeaderStrategy.h +++ b/src/acl/RequestHeaderStrategy.h @@ -35,11 +35,11 @@ #ifndef SQUID_ACLREQUESTHEADERSTRATEGY_H #define SQUID_ACLREQUESTHEADERSTRATEGY_H -#include "ACL.h" -#include "ACLData.h" -#include "ACLStrategy.h" +#include "acl/Acl.h" +#include "acl/Data.h" +#include "acl/Strategy.h" #include "HttpRequest.h" -#include "ACLChecklist.h" +#include "acl/FilledChecklist.h" template @@ -47,7 +47,7 @@ class ACLRequestHeaderStrategy : public ACLStrategy { public: - virtual int match (ACLData * &, ACLChecklist *); + virtual int match (ACLData * &, ACLFilledChecklist *); virtual bool requiresRequest() const {return true;} static ACLRequestHeaderStrategy *Instance(); @@ -65,7 +65,7 @@ private: template int -ACLRequestHeaderStrategy
::match (ACLData * &data, ACLChecklist *checklist) +ACLRequestHeaderStrategy
::match (ACLData * &data, ACLFilledChecklist *checklist) { char const *theHeader = checklist->request->header.getStr(header); diff --git a/src/ACLRequestMIMEType.h b/src/acl/RequestMimeType.h similarity index 91% rename from src/ACLRequestMIMEType.h rename to src/acl/RequestMimeType.h index 4829360e8b..2366fdac4e 100644 --- a/src/ACLRequestMIMEType.h +++ b/src/acl/RequestMimeType.h @@ -34,8 +34,8 @@ #ifndef SQUID_ACLREQUESTMIMETYPE_H #define SQUID_ACLREQUESTMIMETYPE_H -#include "ACL.h" -#include "ACLStrategised.h" +#include "acl/Acl.h" +#include "acl/Strategised.h" class ACLRequestMIMEType { @@ -47,13 +47,13 @@ private: /* partial specialisation */ -#include "ACLData.h" -#include "ACLRequestHeaderStrategy.h" -#include "ACLChecklist.h" +#include "acl/Data.h" +#include "acl/RequestHeaderStrategy.h" +#include "acl/Checklist.h" template <> inline int -ACLRequestHeaderStrategy::match (ACLData * &data, ACLChecklist *checklist) +ACLRequestHeaderStrategy::match (ACLData * &data, ACLFilledChecklist *checklist) { char const *theHeader = checklist->request->header.getStr(HDR_CONTENT_TYPE); diff --git a/src/ACLSourceASN.h b/src/acl/SourceAsn.h similarity index 94% rename from src/ACLSourceASN.h rename to src/acl/SourceAsn.h index 486f56b41d..ffd8abcd63 100644 --- a/src/ACLSourceASN.h +++ b/src/acl/SourceAsn.h @@ -32,19 +32,19 @@ #define SQUID_ACLSOURCEASN_H #if 0 -#include "ACLASN.h" +#include "acl/Asn.h" #endif class ACLChecklist; -#include "ACLStrategy.h" +#include "acl/Strategy.h" #include "ip/IpAddress.h" class ACLSourceASNStrategy : public ACLStrategy { public: - virtual int match (ACLData * &, ACLChecklist *); + virtual int match (ACLData * &, ACLFilledChecklist *); static ACLSourceASNStrategy *Instance(); /* Not implemented to prevent copies of the instance. */ /* Not private to prevent brain dead g+++ warnings about diff --git a/src/ACLSourceDomain.h b/src/acl/SourceDomain.h similarity index 93% rename from src/ACLSourceDomain.h rename to src/acl/SourceDomain.h index 415aabecf7..69629cefdc 100644 --- a/src/ACLSourceDomain.h +++ b/src/acl/SourceDomain.h @@ -35,16 +35,16 @@ #ifndef SQUID_ACLSOURCEDOMAIN_H #define SQUID_ACLSOURCEDOMAIN_H -#include "ACL.h" -#include "ACLData.h" -#include "ACLChecklist.h" -#include "ACLStrategised.h" +#include "acl/Acl.h" +#include "acl/Data.h" +#include "acl/Checklist.h" +#include "acl/Strategised.h" class ACLSourceDomainStrategy : public ACLStrategy { public: - virtual int match (ACLData * &, ACLChecklist *); + virtual int match (ACLData * &, ACLFilledChecklist *); static ACLSourceDomainStrategy *Instance(); /* Not implemented to prevent copies of the instance. */ /* Not private to prevent brain dead g+++ warnings about diff --git a/src/ACLSslError.cc b/src/acl/SslError.cc similarity index 75% rename from src/ACLSslError.cc rename to src/acl/SslError.cc index 9449b91c95..59bc499d72 100644 --- a/src/ACLSslError.cc +++ b/src/acl/SslError.cc @@ -4,9 +4,9 @@ */ #include "squid.h" -#include "ACLSslError.h" -#include "ACLSslErrorData.h" -#include "ACLChecklist.h" +#include "acl/SslError.h" +#include "acl/SslErrorData.h" +#include "acl/Checklist.h" /* explicit template instantiation required for some systems */ @@ -17,7 +17,7 @@ ACL::Prototype ACLSslError::RegistryProtoype(&ACLSslError::RegistryEntry_, "ssl_ ACLStrategised ACLSslError::RegistryEntry_(new ACLSslErrorData, ACLSslErrorStrategy::Instance(), "ssl_error"); int -ACLSslErrorStrategy::match (ACLData * &data, ACLChecklist *checklist) +ACLSslErrorStrategy::match (ACLData * &data, ACLFilledChecklist *checklist) { return data->match (checklist->ssl_error); } diff --git a/src/ACLSslError.h b/src/acl/SslError.h similarity index 85% rename from src/ACLSslError.h rename to src/acl/SslError.h index 1218827dec..e18cf1c7bc 100644 --- a/src/ACLSslError.h +++ b/src/acl/SslError.h @@ -5,14 +5,14 @@ #ifndef SQUID_ACLSSL_ERROR_H #define SQUID_ACLSSL_ERROR_H -#include "ACLStrategy.h" -#include "ACLStrategised.h" +#include "acl/Strategy.h" +#include "acl/Strategised.h" class ACLSslErrorStrategy : public ACLStrategy { public: - virtual int match (ACLData * &, ACLChecklist *); + virtual int match (ACLData * &, ACLFilledChecklist *); static ACLSslErrorStrategy *Instance(); /* Not implemented to prevent copies of the instance. */ /* Not private to prevent brain dead g+++ warnings about diff --git a/src/ACLTime.cc b/src/acl/Time.cc similarity index 93% rename from src/ACLTime.cc rename to src/acl/Time.cc index bccb06ba0d..8733128f63 100644 --- a/src/ACLTime.cc +++ b/src/acl/Time.cc @@ -35,15 +35,15 @@ */ #include "squid.h" -#include "ACLTime.h" -#include "ACLTimeData.h" +#include "acl/Time.h" +#include "acl/TimeData.h" #include "SquidTime.h" ACL::Prototype ACLTime::RegistryProtoype(&ACLTime::RegistryEntry_, "time"); ACLStrategised ACLTime::RegistryEntry_(new ACLTimeData, ACLTimeStrategy::Instance(), "time"); int -ACLTimeStrategy::match (ACLData * &data, ACLChecklist *checklist) +ACLTimeStrategy::match (ACLData * &data, ACLFilledChecklist *checklist) { return data->match (squid_curtime); } diff --git a/src/ACLUrl.cc b/src/acl/Url.cc similarity index 92% rename from src/ACLUrl.cc rename to src/acl/Url.cc index 1941a72d1f..1cff64ed39 100644 --- a/src/ACLUrl.cc +++ b/src/acl/Url.cc @@ -35,15 +35,15 @@ */ #include "squid.h" -#include "ACLUrl.h" -#include "ACLChecklist.h" -#include "ACLRegexData.h" +#include "acl/Url.h" +#include "acl/Checklist.h" +#include "acl/RegexData.h" ACL::Prototype ACLUrl::RegistryProtoype(&ACLUrl::RegistryEntry_, "url_regex"); ACLStrategised ACLUrl::RegistryEntry_(new ACLRegexData, ACLUrlStrategy::Instance(), "url_regex"); int -ACLUrlStrategy::match (ACLData * &data, ACLChecklist *checklist) +ACLUrlStrategy::match (ACLData * &data, ACLFilledChecklist *checklist) { char *esc_buf = xstrdup(urlCanonical(checklist->request)); rfc1738_unescape(esc_buf); diff --git a/src/ACLUrl.h b/src/acl/Url.h similarity index 93% rename from src/ACLUrl.h rename to src/acl/Url.h index 639159104e..d11e04fb9e 100644 --- a/src/ACLUrl.h +++ b/src/acl/Url.h @@ -35,15 +35,15 @@ #ifndef SQUID_ACLURL_H #define SQUID_ACLURL_H -#include "ACL.h" -#include "ACLData.h" -#include "ACLStrategised.h" +#include "acl/Acl.h" +#include "acl/Data.h" +#include "acl/Strategised.h" class ACLUrlStrategy : public ACLStrategy { public: - virtual int match (ACLData * &, ACLChecklist *); + virtual int match (ACLData * &, ACLFilledChecklist *); virtual bool requiresRequest() const {return true;} static ACLUrlStrategy *Instance(); diff --git a/src/ACLUrlPath.cc b/src/acl/UrlPath.cc similarity index 92% rename from src/ACLUrlPath.cc rename to src/acl/UrlPath.cc index 02b8ecfd19..71a1671b12 100644 --- a/src/ACLUrlPath.cc +++ b/src/acl/UrlPath.cc @@ -35,9 +35,9 @@ */ #include "squid.h" -#include "ACLUrlPath.h" -#include "ACLChecklist.h" -#include "ACLRegexData.h" +#include "acl/UrlPath.h" +#include "acl/Checklist.h" +#include "acl/RegexData.h" #include "HttpRequest.h" ACL::Prototype ACLUrlPath::LegacyRegistryProtoype(&ACLUrlPath::RegistryEntry_, "pattern"); @@ -45,7 +45,7 @@ ACL::Prototype ACLUrlPath::RegistryProtoype(&ACLUrlPath::RegistryEntry_, "urlpat ACLStrategised ACLUrlPath::RegistryEntry_(new ACLRegexData, ACLUrlPathStrategy::Instance(), "urlpath_regex"); int -ACLUrlPathStrategy::match (ACLData * &data, ACLChecklist *checklist) +ACLUrlPathStrategy::match (ACLData * &data, ACLFilledChecklist *checklist) { char *esc_buf = xstrdup(checklist->request->urlpath.termedBuf()); rfc1738_unescape(esc_buf); diff --git a/src/ACLUrlPath.h b/src/acl/UrlPath.h similarity index 92% rename from src/ACLUrlPath.h rename to src/acl/UrlPath.h index fdd3d6f65b..8a791c2d3d 100644 --- a/src/ACLUrlPath.h +++ b/src/acl/UrlPath.h @@ -35,16 +35,16 @@ #ifndef SQUID_ACLURLPATH_H #define SQUID_ACLURLPATH_H -#include "ACL.h" -#include "ACLData.h" -#include "ACLStrategy.h" -#include "ACLStrategised.h" +#include "acl/Acl.h" +#include "acl/Data.h" +#include "acl/Strategy.h" +#include "acl/Strategised.h" class ACLUrlPathStrategy : public ACLStrategy { public: - virtual int match (ACLData * &, ACLChecklist *); + virtual int match (ACLData * &, ACLFilledChecklist *); virtual bool requiresRequest() const {return true;} static ACLUrlPathStrategy *Instance(); diff --git a/src/ACLUrlPort.cc b/src/acl/UrlPort.cc similarity index 91% rename from src/ACLUrlPort.cc rename to src/acl/UrlPort.cc index ea1c458b61..247d7748ba 100644 --- a/src/ACLUrlPort.cc +++ b/src/acl/UrlPort.cc @@ -34,16 +34,16 @@ */ #include "squid.h" -#include "ACLUrlPort.h" -#include "ACLIntRange.h" -#include "ACLChecklist.h" +#include "acl/UrlPort.h" +#include "acl/IntRange.h" +#include "acl/Checklist.h" #include "HttpRequest.h" ACL::Prototype ACLUrlPort::RegistryProtoype(&ACLUrlPort::RegistryEntry_, "port"); ACLStrategised ACLUrlPort::RegistryEntry_(new ACLIntRange, ACLUrlPortStrategy::Instance(), "port"); int -ACLUrlPortStrategy::match (ACLData * &data, ACLChecklist *checklist) +ACLUrlPortStrategy::match (ACLData * &data, ACLFilledChecklist *checklist) { return data->match (checklist->request->port); } diff --git a/src/ACLUrlPort.h b/src/acl/UrlPort.h similarity index 94% rename from src/ACLUrlPort.h rename to src/acl/UrlPort.h index c5c3f831dc..8752b91038 100644 --- a/src/ACLUrlPort.h +++ b/src/acl/UrlPort.h @@ -35,14 +35,14 @@ #ifndef SQUID_ACLURLPORT_H #define SQUID_ACLURLPORT_H -#include "ACLStrategy.h" -#include "ACLStrategised.h" +#include "acl/Strategy.h" +#include "acl/Strategised.h" class ACLUrlPortStrategy : public ACLStrategy { public: - virtual int match (ACLData * &, ACLChecklist *); + virtual int match (ACLData * &, ACLFilledChecklist *); virtual bool requiresRequest() const {return true;} static ACLUrlPortStrategy *Instance(); diff --git a/src/adaptation/AccessCheck.cc b/src/adaptation/AccessCheck.cc index 0ecf67b2cd..d58d9867ca 100644 --- a/src/adaptation/AccessCheck.cc +++ b/src/adaptation/AccessCheck.cc @@ -2,10 +2,9 @@ #include "structs.h" #include "ConfigParser.h" -#include "ACL.h" #include "HttpRequest.h" #include "HttpReply.h" -#include "ACLChecklist.h" +#include "acl/FilledChecklist.h" #include "adaptation/Service.h" #include "adaptation/ServiceGroups.h" #include "adaptation/AccessRule.h" @@ -106,7 +105,7 @@ Adaptation::AccessCheck::checkCandidates() if (AccessRule *r = FindRule(topCandidate())) { /* BUG 2526: what to do when r->acl is empty?? */ // XXX: we do not have access to conn->rfc931 here. - acl_checklist = aclChecklistCreate(r->acl, req, dash_str); + acl_checklist = new ACLFilledChecklist(r->acl, req, dash_str); acl_checklist->reply = rep ? HTTPMSGLOCK(rep) : NULL; acl_checklist->nonBlockingCheck(AccessCheckCallbackWrapper, this); return; diff --git a/src/adaptation/AccessCheck.h b/src/adaptation/AccessCheck.h index 0d384be582..9852e2e6fa 100644 --- a/src/adaptation/AccessCheck.h +++ b/src/adaptation/AccessCheck.h @@ -7,6 +7,7 @@ class HttpRequest; class HttpReply; +class ACLFilledChecklist; namespace Adaptation { @@ -35,7 +36,7 @@ private: HttpReply *rep; AccessCheckCallback *callback; void *callback_data; - ACLChecklist *acl_checklist; + ACLFilledChecklist *acl_checklist; typedef int Candidate; typedef Vector Candidates; diff --git a/src/asn.cc b/src/asn.cc index 89e5ce6cc4..747dffe738 100644 --- a/src/asn.cc +++ b/src/asn.cc @@ -39,11 +39,11 @@ #include "HttpRequest.h" #include "StoreClient.h" #include "Store.h" -#include "ACL.h" -#include "ACLASN.h" -#include "ACLSourceASN.h" -#include "ACLDestinationASN.h" -#include "ACLDestinationIP.h" +#include "acl/Acl.h" +#include "acl/Asn.h" +#include "acl/SourceAsn.h" +#include "acl/DestinationAsn.h" +#include "acl/DestinationIp.h" #include "HttpReply.h" #include "forward.h" #include "wordlist.h" @@ -605,7 +605,7 @@ ACL::Prototype ACLASN::DestinationRegistryProtoype(&ACLASN::DestinationRegistryE ACLStrategised ACLASN::DestinationRegistryEntry_(new ACLASN, ACLDestinationASNStrategy::Instance(), "dst_as"); int -ACLSourceASNStrategy::match (ACLData * &data, ACLChecklist *checklist) +ACLSourceASNStrategy::match (ACLData * &data, ACLFilledChecklist *checklist) { return data->match(checklist->src_addr); } @@ -620,7 +620,7 @@ ACLSourceASNStrategy ACLSourceASNStrategy::Instance_; int -ACLDestinationASNStrategy::match (ACLData * &data, ACLChecklist *checklist) +ACLDestinationASNStrategy::match (ACLData * &data, ACLFilledChecklist *checklist) { const ipcache_addrs *ia = ipcache_gethostbyname(checklist->request->GetHost(), IP_LOOKUP_IF_MISS); diff --git a/src/client_side_reply.cc b/src/client_side_reply.cc index 277a215ff7..1d62ea48f5 100644 --- a/src/client_side_reply.cc +++ b/src/client_side_reply.cc @@ -52,8 +52,8 @@ #endif #include "MemObject.h" #include "fde.h" -#include "ACLChecklist.h" -#include "ACL.h" +#include "acl/FilledChecklist.h" +#include "acl/Gadgets.h" #if DELAY_POOLS #include "DelayPools.h" #endif @@ -1785,8 +1785,8 @@ clientReplyContext::processReplyAccess () } /** Process http_reply_access lists */ - ACLChecklist *replyChecklist; - replyChecklist = clientAclChecklistCreate(Config.accessList.reply, http); + ACLFilledChecklist *replyChecklist = + clientAclChecklistCreate(Config.accessList.reply, http); replyChecklist->reply = HTTPMSGLOCK(reply); replyChecklist->nonBlockingCheck(ProcessReplyAccessResult, this); } diff --git a/src/peer_select.cc b/src/peer_select.cc index e9f4a5c3b2..f0ec099988 100644 --- a/src/peer_select.cc +++ b/src/peer_select.cc @@ -38,7 +38,7 @@ #include "Store.h" #include "ICP.h" #include "HttpRequest.h" -#include "ACLChecklist.h" +#include "acl/FilledChecklist.h" #include "htcp.h" #include "forward.h" #include "SquidTime.h" @@ -294,7 +294,7 @@ peerSelectFoo(ps_state * ps) if (ps->direct == DIRECT_UNKNOWN) { if (ps->always_direct == 0 && Config.accessList.AlwaysDirect) { /** check always_direct; */ - ps->acl_checklist = aclChecklistCreate( + ps->acl_checklist = new ACLFilledChecklist( Config.accessList.AlwaysDirect, request, NULL); /* ident */ @@ -305,7 +305,7 @@ peerSelectFoo(ps_state * ps) ps->direct = DIRECT_YES; } else if (ps->never_direct == 0 && Config.accessList.NeverDirect) { /** check never_direct; */ - ps->acl_checklist = aclChecklistCreate( + ps->acl_checklist = new ACLFilledChecklist( Config.accessList.NeverDirect, request, NULL); /* ident */