]> git.ipfire.org Git - thirdparty/squid.git/commitdiff
Remove unused/broken ACL copying support (#941)
authorAmos Jeffries <yadij@users.noreply.github.com>
Sat, 4 Dec 2021 17:54:35 +0000 (17:54 +0000)
committerSquid Anubis <squid-anubis@squid-cache.org>
Sat, 4 Dec 2021 17:54:40 +0000 (17:54 +0000)
This code is unused. The clone() methods were the only use of
copy construction and operator. Most ACL related classes lack
implementation of the copy and/or assert so even if used this
code would be quite dangerous.

Explicitly forbid copy/move at the hierarchy base classes
ACL and ACLData. Removing all child specific copy
implementations and prohibitions (now unnecessary).

80 files changed:
src/ExternalACL.h
src/acl/Acl.h
src/acl/AdaptationServiceData.cc
src/acl/AdaptationServiceData.h
src/acl/AllOf.cc
src/acl/AllOf.h
src/acl/AnnotationData.cc
src/acl/AnnotationData.h
src/acl/AnyOf.cc
src/acl/AnyOf.h
src/acl/Arp.cc
src/acl/Arp.h
src/acl/Asn.cc
src/acl/Asn.h
src/acl/AtStepData.cc
src/acl/AtStepData.h
src/acl/BoolOps.cc
src/acl/BoolOps.h
src/acl/CertificateData.cc
src/acl/CertificateData.h
src/acl/ConnectionsEncrypted.cc
src/acl/ConnectionsEncrypted.h
src/acl/Data.h
src/acl/DestinationIp.cc
src/acl/DestinationIp.h
src/acl/DomainData.cc
src/acl/DomainData.h
src/acl/Eui64.cc
src/acl/Eui64.h
src/acl/ExtUser.cc
src/acl/ExtUser.h
src/acl/HasComponentData.cc
src/acl/HasComponentData.h
src/acl/HierCodeData.cc
src/acl/HierCodeData.h
src/acl/HttpHeaderData.cc
src/acl/HttpHeaderData.h
src/acl/HttpStatus.cc
src/acl/HttpStatus.h
src/acl/IntRange.cc
src/acl/IntRange.h
src/acl/LocalIp.cc
src/acl/LocalIp.h
src/acl/MaxConnection.cc
src/acl/MaxConnection.h
src/acl/MethodData.cc
src/acl/MethodData.h
src/acl/NoteData.cc
src/acl/NoteData.h
src/acl/ProtocolData.cc
src/acl/ProtocolData.h
src/acl/Random.cc
src/acl/Random.h
src/acl/RegexData.cc
src/acl/RegexData.h
src/acl/ServerName.cc
src/acl/ServerName.h
src/acl/SourceIp.cc
src/acl/SourceIp.h
src/acl/SquidErrorData.cc
src/acl/SquidErrorData.h
src/acl/SslErrorData.cc
src/acl/SslErrorData.h
src/acl/Strategised.h
src/acl/StringData.cc
src/acl/StringData.h
src/acl/TimeData.cc
src/acl/TimeData.h
src/acl/TransactionInitiator.cc
src/acl/TransactionInitiator.h
src/acl/UserData.cc
src/acl/UserData.h
src/auth/AclMaxUserIp.cc
src/auth/AclMaxUserIp.h
src/auth/AclProxyAuth.cc
src/auth/AclProxyAuth.h
src/external_acl.cc
src/ident/AclIdent.cc
src/ident/AclIdent.h
src/tests/stub_libauth_acls.cc

index a1a4a34dd26ca2de88a8f69e2dc91c885c557620..b0a5b81a95b8a66cec3fb6cc9900faa9ed16acef 100644 (file)
@@ -42,11 +42,8 @@ public:
     static void ExternalAclLookup(ACLChecklist * ch, ACLExternal *);
 
     ACLExternal(char const *);
-    ACLExternal(ACLExternal const &);
     ~ACLExternal();
-    ACLExternal&operator=(ACLExternal const &);
 
-    virtual ACL *clone()const;
     virtual char const *typeString() const;
     virtual void parse();
     virtual int match(ACLChecklist *checklist);
index cb79364e8fdbca42b69b82b7263ee30309d25604..e7934ab449e1a71866daff6c9620310baa82cc30 100644 (file)
@@ -48,6 +48,7 @@ public:
     static ACL *FindByName(const char *name);
 
     ACL();
+    ACL(ACL &&) = delete; // no copying of any kind
     virtual ~ACL();
 
     /// sets user-specified ACL name and squid.conf context
index 7b2f0cb3a6a88ed3a1e7d9eff84bf78a91cfb36d..e04f7fe002e65029cc6678686a70e5d4164a7b4b 100644 (file)
@@ -38,9 +38,3 @@ ACLAdaptationServiceData::parse()
     }
 }
 
-ACLData<char const *> *
-ACLAdaptationServiceData::clone() const
-{
-    return new ACLAdaptationServiceData(*this);
-}
-
index ee6dbed42e3f997f5502a6a14f5f38d7328833d1..59ab0828fd239eaa58360b017f701799e82ff100 100644 (file)
@@ -18,11 +18,7 @@ class ACLAdaptationServiceData : public ACLStringData
 {
 public:
     ACLAdaptationServiceData() : ACLStringData() {}
-    ACLAdaptationServiceData(ACLAdaptationServiceData const &old) : ACLStringData(old) {};
-    // Not implemented
-    ACLAdaptationServiceData &operator= (ACLAdaptationServiceData const &);
     virtual void parse();
-    virtual ACLData<char const *> *clone() const;
 };
 
 #endif /* SQUID_ADAPTATIONSERVICEDATA_H */
index 5d7786b75f1ca9a84021aa5895d308dbcf830c9f..65f5afc1c2e4e0f77d7b6ed090cae2d6c36e5977 100644 (file)
@@ -20,12 +20,6 @@ Acl::AllOf::typeString() const
     return "all-of";
 }
 
-ACL *
-Acl::AllOf::clone() const
-{
-    return new AllOf;
-}
-
 SBufList
 Acl::AllOf::dump() const
 {
index 155c6f0419ca80db70bf5a09833b7ee0a2b8ecf6..98b8346f3d48904afe4a7fd7b81003bfccb3addb 100644 (file)
@@ -24,7 +24,6 @@ class AllOf: public Acl::InnerNode
 public:
     /* ACL API */
     virtual char const *typeString() const;
-    virtual ACL *clone() const;
     virtual void parse();
     virtual SBufList dump() const;
 
index c924ee1cd1d66b878949fd13a39a4c7af4f5422a..35f8894087fde1628ef3aa78b0dbc139ec653c26 100644 (file)
@@ -45,9 +45,3 @@ ACLAnnotationData::annotate(NotePairs::Pointer pairs, const CharacterSet *delimi
     notes->updateNotePairs(pairs, delimiters, al);
 }
 
-ACLData<NotePairs::Entry *> *
-ACLAnnotationData::clone() const
-{
-    return new ACLAnnotationData;
-}
-
index 3e99122d6ae49ab9f7d13d35da99b59836a5270a..2e8993b316977000ababb7c6dec0bd60c5e4c34b 100644 (file)
@@ -26,7 +26,6 @@ public:
     virtual SBufList dump() const;
     virtual void parse();
     virtual bool empty() const { return notes->empty(); }
-    virtual ACLData<NotePairs::Entry *> *clone() const;
 
     /// Stores annotations into pairs.
     void annotate(NotePairs::Pointer pairs, const CharacterSet *delimiters, const AccessLogEntry::Pointer &al);
index 8d9e7121a4cf02bce1aa58f2a7960a64dbc083ce..5a4fc0ad4f0c7c68c09ed4eaee30c906b7a7d7e9 100644 (file)
@@ -15,12 +15,6 @@ Acl::AnyOf::typeString() const
     return "any-of";
 }
 
-ACL *
-Acl::AnyOf::clone() const
-{
-    return new AnyOf;
-}
-
 // called once per "acl name any-of name1 name2 ...." line
 // but since multiple lines are ORed, the line boundary does not matter,
 // so we flatten the tree into one line/level here to minimize overheads
index 3051ec28780e4421f172f2035095aa9df483942b..68f553611fa8ec63b7adc39304bb998cdcccf257 100644 (file)
@@ -22,7 +22,6 @@ class AnyOf: public Acl::OrNode
 public:
     /* ACL API */
     virtual char const *typeString() const;
-    virtual ACL *clone() const;
     virtual void parse();
 };
 
index 685427b0e90c48fa6e62368b3ca07aa0e218a5d0..35495d2ffc987d35b13e7a510af7f2911b9f7c5f 100644 (file)
 
 #include <algorithm>
 
-ACL *
-ACLARP::clone() const
-{
-    return new ACLARP(*this);
-}
-
 ACLARP::ACLARP (char const *theClass) : class_ (theClass)
 {}
 
-ACLARP::ACLARP (ACLARP const & old) : class_ (old.class_), aclArpData(old.aclArpData)
-{
-}
-
 char const *
 ACLARP::typeString() const
 {
index fd6691b025fb07f48b6a53849bba6073f1f470fd..798ee581c76648f1f814b8e7528bc28939a781c3 100644 (file)
@@ -25,11 +25,8 @@ class ACLARP : public ACL
 
 public:
     ACLARP(char const *);
-    ACLARP(ACLARP const &);
     ~ACLARP() {}
-    ACLARP&operator=(ACLARP const &);
 
-    virtual ACL *clone()const;
     virtual char const *typeString() const;
     virtual void parse();
     virtual int match(ACLChecklist *checklist);
index 12853ae778160eb0b679a841e792fd82c13e77f1..a6b59cb01bbbd103e2262817821c7e70a867e9ea 100644 (file)
@@ -570,15 +570,6 @@ ACLASN::parse()
     }
 }
 
-ACLData<Ip::Address> *
-ACLASN::clone() const
-{
-    if (data)
-        fatal ("cloning of ACLASN not implemented");
-
-    return new ACLASN(*this);
-}
-
 /* explicit template instantiation required for some systems */
 
 template class ACLStrategised<Ip::Address>;
index 83dd0d06c26b1528e546e8b866b8b3d3e4d4d12a..cb3d568f9c79cadb3e8d65430c2acd000cca1c0a 100644 (file)
@@ -34,7 +34,6 @@ public:
     virtual SBufList dump() const;
     virtual void parse();
     bool empty() const;
-    virtual ACLData<Ip::Address> *clone() const;
     virtual void prepareForUse();
 
 private:
index 5a55e3b34da6e1367570697af0d255766632ecf2..7fd62bca32072110382ad70812812be5351c90a4 100644 (file)
@@ -50,11 +50,6 @@ StepValue(const char *name)
 ACLAtStepData::ACLAtStepData()
 {}
 
-ACLAtStepData::ACLAtStepData(ACLAtStepData const &old)
-{
-    values.assign(old.values.begin(), old.values.end());
-}
-
 ACLAtStepData::~ACLAtStepData()
 {
 }
@@ -92,9 +87,3 @@ ACLAtStepData::empty() const
     return values.empty();
 }
 
-ACLAtStepData *
-ACLAtStepData::clone() const
-{
-    return new ACLAtStepData(*this);
-}
-
index a9f2736c6eb53952823a02d62cd941bb013d47dc..5e85d69b99123ff42db103c3b3e9828b508ba5f9 100644 (file)
@@ -20,14 +20,11 @@ class ACLAtStepData : public ACLData<XactionStep>
 
 public:
     ACLAtStepData();
-    ACLAtStepData(ACLAtStepData const &);
-    ACLAtStepData &operator= (ACLAtStepData const &);
     virtual ~ACLAtStepData();
     bool match(XactionStep);
     virtual SBufList dump() const;
     void parse();
     bool empty() const;
-    virtual ACLAtStepData *clone() const;
 
     std::list<XactionStep> values;
 };
index 757699f2f80c0bb1e56b33a7f17726a9f8bd9711..b155434994a99acb4aac5cb2edda7cf33c22cb49 100644 (file)
@@ -52,16 +52,6 @@ Acl::NotNode::typeString() const
     return "!";
 }
 
-ACL *
-Acl::NotNode::clone() const
-{
-    // Not implemented: we are not a named ACL type in squid.conf so nobody
-    // should try to create a NotNode instance by ACL type name (which is
-    // what clone() API is for -- it does not really clone anything).
-    assert(false);
-    return NULL;
-}
-
 SBufList
 Acl::NotNode::dump() const
 {
@@ -78,12 +68,6 @@ Acl::AndNode::typeString() const
     return "and";
 }
 
-ACL *
-Acl::AndNode::clone() const
-{
-    return new AndNode;
-}
-
 int
 Acl::AndNode::doMatch(ACLChecklist *checklist, Nodes::const_iterator start) const
 {
@@ -112,12 +96,6 @@ Acl::OrNode::typeString() const
     return "any-of";
 }
 
-ACL *
-Acl::OrNode::clone() const
-{
-    return new OrNode;
-}
-
 bool
 Acl::OrNode::bannedAction(ACLChecklist *, Nodes::const_iterator) const
 {
index e89db44262fd9d0885be056a6ba5fd9953984787..a307023107f5e301ab70b48baed5689573e46e2f 100644 (file)
@@ -29,7 +29,6 @@ public:
 private:
     /* ACL API */
     virtual char const *typeString() const;
-    virtual ACL *clone() const;
     virtual void parse();
     virtual SBufList dump() const;
 
@@ -47,7 +46,6 @@ class AndNode: public InnerNode
 public:
     /* ACL API */
     virtual char const *typeString() const;
-    virtual ACL *clone() const;
     virtual void parse();
 
 private:
@@ -68,7 +66,6 @@ public:
 
     /* ACL API */
     virtual char const *typeString() const;
-    virtual ACL *clone() const;
     virtual void parse();
 
 protected:
index 12056d7d7784cf766c07cad8d3a3461cdfb8ac47..902df23635d556571d42f96e587babeee7e6d3ee 100644 (file)
@@ -30,15 +30,6 @@ ACLCertificateData::ACLCertificateData(Ssl::GETX509ATTRIBUTE *sslStrategy, const
     }
 }
 
-ACLCertificateData::ACLCertificateData(ACLCertificateData const &old) : attribute (NULL), values (old.values), sslAttributeCall (old.sslAttributeCall)
-{
-    validAttributesStr = old.validAttributesStr;
-    validAttributes.assign (old.validAttributes.begin(), old.validAttributes.end());
-    attributeIsOptional = old.attributeIsOptional;
-    if (old.attribute)
-        attribute = xstrdup(old.attribute);
-}
-
 template<class T>
 inline void
 xRefFree(T &thing)
@@ -159,10 +150,3 @@ ACLCertificateData::empty() const
     return values.empty();
 }
 
-ACLData<X509 *> *
-ACLCertificateData::clone() const
-{
-    /* Splay trees don't clone yet. */
-    return new ACLCertificateData(*this);
-}
-
index c025430f246eae220d827324a0a89e33faf6ad30..02d36196fa48ebf2cd6bb57264b01832f55422a4 100644 (file)
@@ -23,14 +23,11 @@ class ACLCertificateData : public ACLData<X509 *>
 
 public:
     ACLCertificateData(Ssl::GETX509ATTRIBUTE *, const char *attributes, bool optionalAttr = false);
-    ACLCertificateData(ACLCertificateData const &);
-    ACLCertificateData &operator= (ACLCertificateData const &);
     virtual ~ACLCertificateData();
     bool match(X509 *);
     virtual SBufList dump() const;
     void parse();
     bool empty() const;
-    virtual ACLData<X509 *> *clone() const;
 
     /// A '|'-delimited list of valid ACL attributes.
     /// A "*" item means that any attribute is acceptable.
index ccd6524b2ea05ac5fd674631194216c07c820de3..9b1b533ac56696dac58d2f059c8f12c930854e2e 100644 (file)
 #include "HttpRequest.h"
 #include "SquidConfig.h"
 
-ACL *
-Acl::ConnectionsEncrypted::clone() const
-{
-    return new Acl::ConnectionsEncrypted(*this);
-}
-
 Acl::ConnectionsEncrypted::ConnectionsEncrypted (char const *theClass) : class_ (theClass)
 {}
 
-Acl::ConnectionsEncrypted::ConnectionsEncrypted (Acl::ConnectionsEncrypted const & old) :class_ (old.class_)
-{}
-
 Acl::ConnectionsEncrypted::~ConnectionsEncrypted()
 {}
 
index a3f1019de608de6ce6f8d35417f29448b82964d0..9f3f9505d17d2f9df56f7fe1252997b560030599 100644 (file)
@@ -21,11 +21,8 @@ class ConnectionsEncrypted : public ACL
 
 public:
     ConnectionsEncrypted(char const *);
-    ConnectionsEncrypted(ConnectionsEncrypted const &);
     virtual ~ConnectionsEncrypted();
-    ConnectionsEncrypted &operator =(ConnectionsEncrypted const &);
 
-    virtual ACL *clone()const;
     virtual char const *typeString() const;
     virtual void parse();
     virtual int match(ACLChecklist *checklist);
index 30582952bb7d81159c05796ab692e746234aba81..5037bb9618fec3f4b805f6cd083157833f676ffe 100644 (file)
@@ -18,7 +18,8 @@ class ACLData
 {
 
 public:
-
+    ACLData() = default;
+    ACLData(ACLData<M> &&) = delete; // no copying of any kind
     virtual ~ACLData() {}
 
     /// \returns the flags supported by these ACL parameters (e.g., "-i")
@@ -27,7 +28,6 @@ public:
     virtual bool match(M) =0;
     virtual SBufList dump() const =0;
     virtual void parse() =0;
-    virtual ACLData *clone() const =0;
     virtual void prepareForUse() {}
 
     virtual bool empty() const =0;
index 9db91d6a475c3d90eb851acdb4c7e3d56b9a2a7f..f0ef36e59e9ce8583ddc0bcea0761aa2d3346242 100644 (file)
@@ -108,9 +108,3 @@ DestinationIPLookup::LookupDone(const ipcache_addrs *, const Dns::LookupDetails
     checklist->resumeNonBlockingCheck(DestinationIPLookup::Instance());
 }
 
-ACL *
-ACLDestinationIP::clone() const
-{
-    return new ACLDestinationIP(*this);
-}
-
index d696a1b72a0dc628f6513808b94522f014716cb2..fe7ea71bb00a1f4ac3f9f3cb9a149d9497fe2c02 100644 (file)
@@ -34,8 +34,6 @@ public:
     virtual const Acl::Options &options();
     virtual int match(ACLChecklist *checklist);
 
-    virtual ACL *clone()const;
-
 private:
     Acl::BooleanOptionValue lookupBanned; ///< are DNS lookups allowed?
 };
index a4c1732bd08945b546d554bde8adb15add99e0bf..abf8c15aa52010e1dd68e60dbf3c25106da5b58f 100644 (file)
@@ -150,11 +150,3 @@ ACLDomainData::empty() const
     return domains->empty();
 }
 
-ACLData<char const *> *
-ACLDomainData::clone() const
-{
-    /* Splay trees don't clone yet. */
-    assert (!domains);
-    return new ACLDomainData;
-}
-
index af43c242a774edaa5a571204fce9c6f6bd9f4e5c..0f9091c9be16ca03cb2694e5e451f4a497fb1ecd 100644 (file)
@@ -24,7 +24,6 @@ public:
     virtual SBufList dump() const;
     void parse();
     bool empty() const;
-    virtual ACLData<char const *> *clone() const;
 
     Splay<char *> *domains;
 };
index 1dad63b0083a4ff1f32b95c07808eb85de883f06..91a97283ebd6b2db4384b18b906553d94e0ebb02 100644 (file)
 #include "globals.h"
 #include "ip/Address.h"
 
-ACL *
-ACLEui64::clone() const
-{
-    return new ACLEui64(*this);
-}
-
 ACLEui64::ACLEui64 (char const *theClass) : class_ (theClass)
 {}
 
-ACLEui64::ACLEui64 (ACLEui64 const & old) : eui64Data(old.eui64Data), class_ (old.class_)
-{
-}
-
 char const *
 ACLEui64::typeString() const
 {
index c4a67b577d3d9f73bb4be0601221c7321d11a1de..42152e61666d564c6ca6f92070cb335dd59690d1 100644 (file)
@@ -24,11 +24,8 @@ class ACLEui64 : public ACL
 
 public:
     ACLEui64(char const *);
-    ACLEui64(ACLEui64 const &);
     ~ACLEui64() {}
-    ACLEui64&operator=(ACLEui64 const &);
 
-    virtual ACL *clone()const;
     virtual char const *typeString() const;
     virtual void parse();
     virtual int match(ACLChecklist *checklist);
index a7786654d375b3f1883ce77b259b8d69de609ffc..2e6ec30163d936e7517a693e075a70a9c3331504 100644 (file)
@@ -26,17 +26,6 @@ ACLExtUser::~ACLExtUser()
 
 ACLExtUser::ACLExtUser(ACLData<char const *> *newData, char const *newType) : data (newData), type_ (newType) {}
 
-ACLExtUser::ACLExtUser (ACLExtUser const &old) : data (old.data->clone()), type_ (old.type_)
-{}
-
-ACLExtUser &
-ACLExtUser::operator= (ACLExtUser const &rhs)
-{
-    data = rhs.data->clone();
-    type_ = rhs.type_;
-    return *this;
-}
-
 char const *
 ACLExtUser::typeString() const
 {
@@ -78,11 +67,5 @@ ACLExtUser::empty () const
     return data->empty();
 }
 
-ACL *
-ACLExtUser::clone() const
-{
-    return new ACLExtUser(*this);
-}
-
 #endif /* USE_AUTH */
 
index 96660d57bf53d9e1fa8acddf7ccdd1f7e022d679..07e4dbbc1306c892f106c703a45636dad3440634 100644 (file)
@@ -21,8 +21,6 @@ class ACLExtUser : public ACL
 
 public:
     ACLExtUser(ACLData<char const *> *newData, char const *);
-    ACLExtUser (ACLExtUser const &old);
-    ACLExtUser & operator= (ACLExtUser const &rhs);
     ~ACLExtUser();
 
     /* ACL API */
@@ -32,7 +30,6 @@ public:
     virtual int match(ACLChecklist *checklist);
     virtual SBufList dump() const;
     virtual bool empty () const;
-    virtual ACL *clone()const;
 
 private:
     ACLData<char const *> *data;
index 1197edfb9dc21b376b67e12c2fa876f8df5dbc65..81d0c2c46ec54a336a3b44a69eeac47a65728c10 100644 (file)
@@ -76,9 +76,3 @@ ACLHasComponentData::parseComponent(const char *token)
     }
 }
 
-ACLData<ACLChecklist *> *
-ACLHasComponentData::clone() const
-{
-    return new ACLHasComponentData(*this);
-}
-
index 0a3ad06a492beea6b12c4e944ad09b57ea717526..0e5ff752ae95c90f4505b2889530cf017bdb40ac 100644 (file)
@@ -25,7 +25,6 @@ public:
     virtual SBufList dump() const override;
     virtual void parse() override;
     virtual bool empty() const override { return false; }
-    virtual ACLData<ACLChecklist *> *clone() const override;
 
 private:
     enum ComponentKind { coRequest = 0, coResponse, coAle, coEnd };
index 603a4fec062959edf0dc8e5db31db12b5d6983b2..de800ea07bee13ca5d1363f0ca24d294b2dfa6df 100644 (file)
@@ -19,11 +19,6 @@ ACLHierCodeData::ACLHierCodeData()
     memset(values, 0, sizeof(values));
 }
 
-ACLHierCodeData::ACLHierCodeData(ACLHierCodeData const &old)
-{
-    memcpy(values, old.values, sizeof(values) );
-}
-
 ACLHierCodeData::~ACLHierCodeData()
 { }
 
@@ -74,9 +69,3 @@ ACLHierCodeData::empty() const
     return true;
 }
 
-ACLData<hier_code> *
-ACLHierCodeData::clone() const
-{
-    return new ACLHierCodeData(*this);
-}
-
index 10da63ec509831fbb97d543ea1ab20d9a9aa68ed..f20259572c6ee24bb569cdce11ce724f003664e6 100644 (file)
@@ -19,14 +19,11 @@ class ACLHierCodeData : public ACLData<hier_code>
 
 public:
     ACLHierCodeData();
-    ACLHierCodeData(ACLHierCodeData const &);
-    ACLHierCodeData &operator= (ACLHierCodeData const &);
     virtual ~ACLHierCodeData();
     bool match(hier_code);
     virtual SBufList dump() const;
     void parse();
     bool empty() const;
-    virtual ACLData<hier_code> *clone() const;
 
     /// mask of codes this ACL might match.
     bool values[HIER_MAX];
index aa986e9f332bbca17b6e21a8795d58b71a0377b2..c78366b7f0b26b4b88c47ca99984d34db80c396f 100644 (file)
@@ -94,14 +94,3 @@ ACLHTTPHeaderData::empty() const
     return (hdrId == Http::HdrType::BAD_HDR && hdrName.isEmpty()) || regex_rule->empty();
 }
 
-ACLData<HttpHeader*> *
-ACLHTTPHeaderData::clone() const
-{
-    /* Header's don't clone yet. */
-    ACLHTTPHeaderData * result = new ACLHTTPHeaderData;
-    result->regex_rule = regex_rule->clone();
-    result->hdrId = hdrId;
-    result->hdrName = hdrName;
-    return result;
-}
-
index d30dbae878838d2bffba254064c05493ff6ebc04..e94cf31cc459bf4b1e4ef9f33a5e32fb77564bb1 100644 (file)
@@ -25,7 +25,6 @@ public:
     virtual SBufList dump() const;
     virtual void parse();
     virtual bool empty() const;
-    virtual ACLData<HttpHeader*> *clone() const;
 
 private:
     Http::HdrType hdrId;            /**< set if header is known */
index 118f0c2e5d873b6a971fd84edb47cf404f5e1db4..e3563d46800c962912387b7907a3a41c1b778f93 100644 (file)
@@ -56,21 +56,9 @@ int acl_httpstatus_data::compare(acl_httpstatus_data* const& a, acl_httpstatus_d
     return ret;
 }
 
-ACL *
-ACLHTTPStatus::clone() const
-{
-    return new ACLHTTPStatus(*this);
-}
-
 ACLHTTPStatus::ACLHTTPStatus (char const *theClass) : data(NULL), class_ (theClass)
 {}
 
-ACLHTTPStatus::ACLHTTPStatus (ACLHTTPStatus const & old) : data(NULL), class_ (old.class_)
-{
-    /* we don't have copy constructors for the data yet */
-    assert(!old.data);
-}
-
 ACLHTTPStatus::~ACLHTTPStatus()
 {
     if (data) {
index 160ca9926b4d7c472a9221da226ef0f6acfddf37..23f915ec4b11920a92192d3311ed59aa462eac86 100644 (file)
@@ -30,11 +30,8 @@ class ACLHTTPStatus : public ACL
 
 public:
     ACLHTTPStatus(char const *);
-    ACLHTTPStatus(ACLHTTPStatus const &);
     ~ACLHTTPStatus();
-    ACLHTTPStatus&operator=(ACLHTTPStatus const &);
 
-    virtual ACL *clone()const;
     virtual char const *typeString() const;
     virtual void parse();
     virtual int match(ACLChecklist *checklist);
index 74b2d282c0ae366241a4735327add8794c1550d4..27b9d926f73ccc0ea28d54e2fc4de59ebc5c5b87 100644 (file)
@@ -64,15 +64,6 @@ ACLIntRange::match(int i)
     return false;
 }
 
-ACLData<int> *
-ACLIntRange::clone() const
-{
-    if (!ranges.empty())
-        fatal("ACLIntRange::clone: attempt to clone used ACL");
-
-    return new ACLIntRange(*this);
-}
-
 ACLIntRange::~ACLIntRange()
 {}
 
index dec6b0c5cd6dc0951f197910e335994762059e2d..498fca40acbb737e510ab63200724abefb1e3571 100644 (file)
@@ -25,7 +25,6 @@ public:
     virtual SBufList dump() const;
     virtual void parse();
     virtual bool empty() const;
-    virtual ACLData<int> *clone() const;
 
 private:
     typedef Range<int> RangeType;
index 1d2a5934944f435af5584990915fdfda23207ff2..79c41b0c1f929dcb4a121c5ef10c37b1fe1785cb 100644 (file)
@@ -24,9 +24,3 @@ ACLLocalIP::match(ACLChecklist *checklist)
     return ACLIP::match (Filled(checklist)->my_addr);
 }
 
-ACL *
-ACLLocalIP::clone() const
-{
-    return new ACLLocalIP(*this);
-}
-
index 2a7eea55819307c6a2b81cd07ef0d54b01e66763..57188fd13900955fbe029079554c5e8925876e56 100644 (file)
@@ -19,7 +19,6 @@ class ACLLocalIP : public ACLIP
 public:
     virtual char const *typeString() const;
     virtual int match(ACLChecklist *checklist);
-    virtual ACL *clone()const;
 };
 
 #endif /* SQUID_ACLLOCALIP_H */
index 0b56fa27e009cb343fc84604501e3ddb985c5a4e..2e0f47a5bc4d8a0a7db58e54ea53376ef974c42b 100644 (file)
 #include "Debug.h"
 #include "SquidConfig.h"
 
-ACL *
-ACLMaxConnection::clone() const
-{
-    return new ACLMaxConnection(*this);
-}
-
 ACLMaxConnection::ACLMaxConnection (char const *theClass) : class_ (theClass), limit(-1)
 {}
 
-ACLMaxConnection::ACLMaxConnection (ACLMaxConnection const & old) :class_ (old.class_), limit (old.limit)
-{}
-
 ACLMaxConnection::~ACLMaxConnection()
 {}
 
index 6faf849babe2c897e2eb0a5f203458b1ce14e68d..14ce5089f6cf6d4f52cdeb0b90202161d6f0d84b 100644 (file)
@@ -18,11 +18,8 @@ class ACLMaxConnection : public ACL
 
 public:
     ACLMaxConnection(char const *);
-    ACLMaxConnection(ACLMaxConnection const &);
     ~ACLMaxConnection();
-    ACLMaxConnection&operator=(ACLMaxConnection const &);
 
-    virtual ACL *clone()const;
     virtual char const *typeString() const;
     virtual void parse();
     virtual int match(ACLChecklist *checklist);
index 3252ac09c68e5bc3b009c39c3d4ae4238742c78a..69154e3f8d3c8ed1100bc20c9b5a2366ab26b9b6 100644 (file)
 
 int ACLMethodData::ThePurgeCount = 0;
 
-ACLMethodData::ACLMethodData(ACLMethodData const &old)
-{
-    assert(old.values.empty());
-}
-
 ACLMethodData::~ACLMethodData()
 {
     values.clear();
@@ -63,10 +58,3 @@ ACLMethodData::parse()
     }
 }
 
-ACLData<HttpRequestMethod> *
-ACLMethodData::clone() const
-{
-    assert(values.empty());
-    return new ACLMethodData(*this);
-}
-
index bdc112053382cd33534205f88261d6f85d02575c..b6ea55d6e477214444c8c57a24909ea97131c785 100644 (file)
@@ -21,14 +21,11 @@ class ACLMethodData : public ACLData<HttpRequestMethod>
 
 public:
     ACLMethodData() {}
-    ACLMethodData(ACLMethodData const &);
-    ACLMethodData &operator= (ACLMethodData const &);
     virtual ~ACLMethodData();
     bool match(HttpRequestMethod);
     virtual SBufList dump() const;
     void parse();
     bool empty() const {return values.empty();}
-    virtual ACLData<HttpRequestMethod> *clone() const;
 
     std::list<HttpRequestMethod> values;
 
index 8448ef0d4ebc980da003bd9cbdb5c93f0231402a..a8417a1288c1e886c8177868e7178e06c32b57d4 100644 (file)
@@ -59,13 +59,3 @@ ACLNoteData::empty() const
     return name.isEmpty();
 }
 
-ACLData<NotePairs::Entry *> *
-ACLNoteData::clone() const
-{
-    ACLNoteData * result = new ACLNoteData;
-    result->values = dynamic_cast<ACLStringData*>(values->clone());
-    assert(result->values);
-    result->name = name;
-    return result;
-}
-
index a415ffa0463a9b0f087e29559a2915e023eb0171..ceb87dd5c2cf566a45fb6718ecf44d45ac530917 100644 (file)
@@ -27,7 +27,6 @@ public:
     virtual SBufList dump() const;
     virtual void parse();
     virtual bool empty() const;
-    virtual ACLData<NotePairs::Entry *> *clone() const;
 
 private:
     SBuf name;                   ///< Note name to check. It is always set
index fa4fe67f634c3955239207e5aa141344c3b238fd..d69ecd2c163083260d905162df2d113d62b21a2e 100644 (file)
 #include "Debug.h"
 #include "wordlist.h"
 
-ACLProtocolData::ACLProtocolData(ACLProtocolData const &old)
-{
-    assert(old.values.empty());
-}
-
 ACLProtocolData::~ACLProtocolData()
 {
     values.clear();
@@ -68,11 +63,3 @@ ACLProtocolData::parse()
     }
 }
 
-ACLData<AnyP::ProtocolType> *
-ACLProtocolData::clone() const
-{
-    /* Splay trees don't clone yet. */
-    assert(values.empty());
-    return new ACLProtocolData(*this);
-}
-
index 03a169452b900193d897da02fde6492a746157bc..6fbe09e9f96182c02ff66a5fa4de0760bf74ac5e 100644 (file)
@@ -21,14 +21,11 @@ class ACLProtocolData : public ACLData<AnyP::ProtocolType>
 
 public:
     ACLProtocolData() {}
-    ACLProtocolData(ACLProtocolData const &);
-    ACLProtocolData &operator= (ACLProtocolData const &);
     virtual ~ACLProtocolData();
     bool match(AnyP::ProtocolType);
     virtual SBufList dump() const;
     void parse();
     bool empty() const {return values.empty();}
-    virtual ACLData<AnyP::ProtocolType> *clone() const;
 
     std::list<AnyP::ProtocolType> values;
 };
index 17205639952fd31f08ab828373e1eca74c47f8b7..7de8edba8bb7864931abfca8d4c62e6db8234925 100644 (file)
 
 #include <random>
 
-ACL *
-ACLRandom::clone() const
-{
-    return new ACLRandom(*this);
-}
-
 ACLRandom::ACLRandom(char const *theClass) : data(0.0), class_(theClass)
 {
     memset(pattern, 0, sizeof(pattern));
 }
 
-ACLRandom::ACLRandom(ACLRandom const & old) : data(old.data), class_(old.class_)
-{
-    memcpy(pattern, old.pattern, sizeof(pattern));
-}
-
 ACLRandom::~ACLRandom()
 { }
 
index 92c69e0fc9f2da1b34e765476dd0cf727cd1ea10..1573f8192cb0c20af352d26fc33c1362eda994e9 100644 (file)
@@ -17,11 +17,8 @@ class ACLRandom : public ACL
 
 public:
     ACLRandom(char const *);
-    ACLRandom(ACLRandom const &);
     ~ACLRandom();
-    ACLRandom&operator=(ACLRandom const &);
 
-    virtual ACL *clone()const;
     virtual char const *typeString() const;
     virtual void parse();
     virtual int match(ACLChecklist *checklist);
index 0a84a0c9d763bcaeb29bbbf08868aa7c728e98c0..548575759ad8d73e94da8f3dd2afe84c6f570251 100644 (file)
@@ -268,11 +268,3 @@ ACLRegexData::empty() const
     return data.empty();
 }
 
-ACLData<char const *> *
-ACLRegexData::clone() const
-{
-    /* Regex's don't clone yet. */
-    assert(data.empty());
-    return new ACLRegexData;
-}
-
index e78c935075b33ebf0d457505a06ec83a1a19509c..f67c85f2987625cb2d54723621f01d3ab59f0d9d 100644 (file)
@@ -26,7 +26,6 @@ public:
     virtual void parse();
     virtual const Acl::ParameterFlags &supportedFlags() const;
     virtual bool empty() const;
-    virtual ACLData<char const *> *clone() const;
 
 private:
     std::list<RegexPattern> data;
index 1b4e3d21cdcbf347ca9ed87ef85f5bfb572d15ec..da74395ecdbec84c194801ef8b743e2868cbef24 100644 (file)
@@ -50,14 +50,6 @@ ACLServerNameData::match(const char *host)
 
 }
 
-ACLData<char const *> *
-ACLServerNameData::clone() const
-{
-    /* Splay trees don't clone yet. */
-    assert (!domains);
-    return new ACLServerNameData;
-}
-
 /// A helper function to be used with Ssl::matchX509CommonNames().
 /// \retval 0 when the name (cn or an alternate name) matches acl data
 /// \retval 1 when the name does not match
index d2a37d8552b6e3e346e7d437f339ee92e5c00123..0bb4be7a68d9605b4636c57c2dcd90ed0e0e9316 100644 (file)
@@ -18,7 +18,6 @@ class ACLServerNameData : public ACLDomainData {
 public:
     ACLServerNameData() : ACLDomainData() {}
     virtual bool match(const char *);
-    virtual ACLData<char const *> *clone() const;
 };
 
 class ACLServerNameStrategy : public ACLStrategy<char const *>
index bde981c6b585a11563b5bba166403bc7ad15b6fe..10bb95300d06dcf9e03da42c3b48aa43233e9747 100644 (file)
@@ -24,9 +24,3 @@ ACLSourceIP::match(ACLChecklist *checklist)
     return ACLIP::match(Filled(checklist)->src_addr);
 }
 
-ACL *
-ACLSourceIP::clone() const
-{
-    return new ACLSourceIP(*this);
-}
-
index e95dcb06cac564bff80d54dcc810ba8120dc9dcc..daf3a3e92b285e6413caca3ff65e5e4a60292b5f 100644 (file)
@@ -18,7 +18,6 @@ class ACLSourceIP : public ACLIP
 public:
     virtual char const *typeString() const;
     virtual int match(ACLChecklist *checklist);
-    virtual ACL *clone()const;
 };
 
 #endif /* SQUID_ACLSOURCEIP_H */
index 6c59efe99cf772666bf7e01ae4350a25c703e7d1..5c7148c02ad2525017e4a956de884bcd33f9ae8b 100644 (file)
@@ -66,12 +66,3 @@ ACLSquidErrorData::empty() const
     return errors.empty();
 }
 
-ACLData<err_type> *
-ACLSquidErrorData::clone() const
-{
-    if (!errors.empty())
-        fatal("ACLSquidError::clone: attempt to clone used ACL");
-
-    return new ACLSquidErrorData (*this);
-}
-
index a19343dfc275b1c8560737a64f80f8b19c5a0938..3a7787f0ac732a0be5513ab34f3275e60c1501a7 100644 (file)
@@ -25,7 +25,6 @@ public:
     virtual SBufList dump() const;
     virtual void parse();
     virtual bool empty() const;
-    virtual ACLData<err_type> *clone() const;
 
 private:
     CbDataListContainer <err_type> errors;
index cf06014ac513d11db3b5b8cd0d9cd37327e6835f..004415e9f177ad10982f519a224315e05aeca683 100644 (file)
 #include "security/CertError.h"
 #include "ssl/ErrorDetail.h"
 
-ACLSslErrorData::ACLSslErrorData(ACLSslErrorData const &o) :
-    values(o.values)
-{}
-
 bool
 ACLSslErrorData::match(const Security::CertErrors *toFind)
 {
@@ -44,9 +40,3 @@ ACLSslErrorData::parse()
     }
 }
 
-ACLSslErrorData *
-ACLSslErrorData::clone() const
-{
-    return new ACLSslErrorData(*this);
-}
-
index f7534f9846f2504e534b729ed41e7183fed46fe3..f4fd6a203247258adddca3c6ed91f7fa8acc742c 100644 (file)
@@ -19,14 +19,11 @@ class ACLSslErrorData : public ACLData<const Security::CertErrors *>
 
 public:
     ACLSslErrorData() = default;
-    ACLSslErrorData(ACLSslErrorData const &);
-    ACLSslErrorData &operator= (ACLSslErrorData const &);
     virtual ~ACLSslErrorData() {}
     bool match(const Security::CertErrors *);
     virtual SBufList dump() const;
     void parse();
     bool empty() const { return values.empty(); }
-    virtual  ACLSslErrorData *clone() const;
 
     Security::Errors values;
 };
index b933257cf602dd07c73d09dd23d0421566c927fe..4c9d18b91559176a9e9b99b47e6ec33adf434fb1 100644 (file)
@@ -34,7 +34,6 @@ public:
 
     ~ACLStrategised();
     ACLStrategised(ACLData<MatchType> *, ACLStrategy<MatchType> *, char const *);
-    ACLStrategised(ACLStrategised const &&) = delete;
 
     virtual char const *typeString() const;
     virtual void parseFlags();
index 3bec669a2ca770d00b448c8da4cb0d93150bfc3a..e1fcfe7c2ec8d982d2efb216bf64e0376bc7a78e 100644 (file)
 #include "ConfigParser.h"
 #include "Debug.h"
 
-ACLStringData::ACLStringData(ACLStringData const &old) : stringValues(old.stringValues)
-{
-}
-
 void
 ACLStringData::insert(const char *value)
 {
@@ -66,10 +62,3 @@ ACLStringData::empty() const
     return stringValues.empty();
 }
 
-ACLData<char const *> *
-ACLStringData::clone() const
-{
-    /* Splay trees don't clone yet. */
-    return new ACLStringData(*this);
-}
-
index bacc0bd2506fdac5f24328aa0b679fcc70192272..96affd403357369e1ba0e3a662f83332fed2a1d6 100644 (file)
@@ -21,8 +21,6 @@ class ACLStringData : public ACLData<char const *>
 
 public:
     ACLStringData() {}
-    ACLStringData(ACLStringData const &);
-    ACLStringData &operator= (ACLStringData const &);
     virtual ~ACLStringData() {}
     /// \deprecated use match(SBuf&) instead.
     bool match(char const *);
@@ -30,7 +28,7 @@ public:
     virtual SBufList dump() const;
     virtual void parse();
     bool empty() const;
-    virtual ACLData<char const *> *clone() const;
+
     /// Insert a string data value
     void insert(const char *);
 
index 7220772293a01909e34ef120a38594b8fd2e7da1..63bc80e581ec223b29550ff4ccbdb2f936c046dd 100644 (file)
 
 ACLTimeData::ACLTimeData () : weekbits (0), start (0), stop (0), next (NULL) {}
 
-ACLTimeData::ACLTimeData(ACLTimeData const &old) : weekbits(old.weekbits), start (old.start), stop (old.stop), next (NULL)
-{
-    if (old.next)
-        next = (ACLTimeData *)old.next->clone();
-}
-
-ACLTimeData&
-ACLTimeData::operator=(ACLTimeData const &old)
-{
-    weekbits = old.weekbits;
-    start = old.start;
-    stop = old.stop;
-    next = NULL;
-
-    if (old.next)
-        next = (ACLTimeData *)old.next->clone();
-
-    return *this;
-}
-
 ACLTimeData::~ACLTimeData()
 {
     if (next)
@@ -236,9 +216,3 @@ ACLTimeData::empty() const
     return false;
 }
 
-ACLData<time_t> *
-ACLTimeData::clone() const
-{
-    return new ACLTimeData(*this);
-}
-
index fa20b7850a2ae668a8ccdca61003be809ff744a3..15c755c943f61595d35882d00ac34d099e6efa29 100644 (file)
@@ -18,14 +18,11 @@ class ACLTimeData : public ACLData<time_t>
 
 public:
     ACLTimeData();
-    ACLTimeData(ACLTimeData const &);
-    ACLTimeData&operator=(ACLTimeData const &);
     virtual ~ACLTimeData();
     bool match(time_t);
     virtual SBufList dump() const;
     void parse();
     bool empty() const;
-    virtual ACLData<time_t> *clone() const;
 
 private:
     int weekbits;
index 13d6ebd647c3d67a68c6e94148dbe0bf44eb0965..b4e8ae991cb4e503668d2e729e33a816f788ddce 100644 (file)
 #include "MasterXaction.h"
 #include "SquidConfig.h"
 
-ACL *
-Acl::TransactionInitiator::clone() const
-{
-    return new Acl::TransactionInitiator(*this);
-}
-
 Acl::TransactionInitiator::TransactionInitiator (const char *aClass) : class_ (aClass), initiators_(0)
 {}
 
index f38e69bb69a4ba8d0c8d2ba1941af7b0c00dd210..c7897b73307f7d04ff569cbefcc53d802aae011d 100644 (file)
@@ -24,7 +24,6 @@ class TransactionInitiator : public ACL
 public:
     TransactionInitiator(char const *);
 
-    virtual ACL *clone()const;
     virtual char const *typeString() const;
     virtual void parse();
     virtual int match(ACLChecklist *checklist);
index 13c639b64a94d5ef7962e5c443c941aa461684ac..7f7de9f8717d857f7418badb635f6306099c1e65 100644 (file)
@@ -145,9 +145,3 @@ ACLUserData::empty() const
     return userDataNames.empty();
 }
 
-ACLData<char const *> *
-ACLUserData::clone() const
-{
-    return new ACLUserData;
-}
-
index 81fe77fd68a984e530727f0a2a8a76327c38288b..3e3d0315bd73716bca4791496ca5d6663cd4f6d9 100644 (file)
@@ -27,7 +27,6 @@ public:
     void parse();
     virtual const Acl::ParameterFlags &supportedFlags() const;
     bool empty() const;
-    virtual ACLData<char const *> *clone() const;
 
 private:
 
index 83939aa2c5aecbab2e9108e1f2fdaf35ed261860..1788f10ce75e0ea5393a69a0613d3f648609e8bf 100644 (file)
@@ -23,12 +23,6 @@ ACLMaxUserIP::ACLMaxUserIP(char const *theClass) :
     maximum(0)
 {}
 
-ACL *
-ACLMaxUserIP::clone() const
-{
-    return new ACLMaxUserIP(*this);
-}
-
 char const *
 ACLMaxUserIP::typeString() const
 {
index 998d39009e77e617e0f4e382b008bb2a31fe337e..a999767b742de0c7f6245323ff78041686384568 100644 (file)
@@ -21,7 +21,6 @@ class ACLMaxUserIP : public ACL
 public:
     explicit ACLMaxUserIP(char const *theClass);
 
-    virtual ACL *clone() const;
     virtual char const *typeString() const;
     virtual const Acl::Options &options();
     virtual void parse();
index 429cde80fcadd4e607a1c566f2a8cb63c13bcac7..b3bed5c3ec573db3b78a8af2dc31ac361e195214 100644 (file)
@@ -31,19 +31,6 @@ ACLProxyAuth::ACLProxyAuth(ACLData<char const *> *newData, char const *theType)
     type_(theType)
 {}
 
-ACLProxyAuth::ACLProxyAuth(ACLProxyAuth const &old) :
-    data(old.data->clone()),
-    type_(old.type_)
-{}
-
-ACLProxyAuth &
-ACLProxyAuth::operator=(ACLProxyAuth const &rhs)
-{
-    data = rhs.data->clone();
-    type_ = rhs.type_;
-    return *this;
-}
-
 char const *
 ACLProxyAuth::typeString() const
 {
@@ -155,12 +142,6 @@ ProxyAuthLookup::LookupDone(void *data)
     checklist->resumeNonBlockingCheck(ProxyAuthLookup::Instance());
 }
 
-ACL *
-ACLProxyAuth::clone() const
-{
-    return new ACLProxyAuth(*this);
-}
-
 int
 ACLProxyAuth::matchForCache(ACLChecklist *cl)
 {
index 4244f2d6f6a98811889928a533f7bdfc45927c71..60d290e416c6ae2d1d44501b2ea18ad31bde27c4 100644 (file)
@@ -34,8 +34,6 @@ class ACLProxyAuth : public ACL
 public:
     ~ACLProxyAuth();
     ACLProxyAuth(ACLData<char const *> *, char const *);
-    ACLProxyAuth(ACLProxyAuth const &);
-    ACLProxyAuth &operator =(ACLProxyAuth const &);
 
     /* ACL API */
     virtual char const *typeString() const;
@@ -47,7 +45,6 @@ public:
     virtual bool valid() const;
     virtual bool empty() const;
     virtual bool requiresRequest() const {return true;}
-    virtual ACL *clone() const;
     virtual int matchForCache(ACLChecklist *checklist);
 
 private:
index fb3163d1f44ba2232c4be020567030740ae46878..52c03e5d11459f9999a159c7f4e00e2e0f9c95d3 100644 (file)
@@ -1169,21 +1169,9 @@ ExternalACLLookup::LookupDone(void *data, const ExternalACLEntryPointer &result)
     checklist->resumeNonBlockingCheck(ExternalACLLookup::Instance());
 }
 
-ACL *
-ACLExternal::clone() const
-{
-    return new ACLExternal(*this);
-}
-
 ACLExternal::ACLExternal(char const *theClass) : data(NULL), class_(xstrdup(theClass))
 {}
 
-ACLExternal::ACLExternal(ACLExternal const & old) : data(NULL), class_(old.class_ ? xstrdup(old.class_) : NULL)
-{
-    /* we don't have copy constructors for the data yet */
-    assert(!old.data);
-}
-
 char const *
 ACLExternal::typeString() const
 {
index 32e977af0526b3a8a713ed75597b9b3d4d3f5a78..d944e26ee80747486f1eab2eec5edce0f534b31f 100644 (file)
@@ -29,17 +29,6 @@ ACLIdent::~ACLIdent()
 
 ACLIdent::ACLIdent(ACLData<char const *> *newData, char const *newType) : data (newData), type_ (newType) {}
 
-ACLIdent::ACLIdent (ACLIdent const &old) : data (old.data->clone()), type_ (old.type_)
-{}
-
-ACLIdent &
-ACLIdent::operator= (ACLIdent const &rhs)
-{
-    data = rhs.data->clone();
-    type_ = rhs.type_;
-    return *this;
-}
-
 char const *
 ACLIdent::typeString() const
 {
@@ -98,12 +87,6 @@ ACLIdent::empty () const
     return data->empty();
 }
 
-ACL *
-ACLIdent::clone() const
-{
-    return new ACLIdent(*this);
-}
-
 IdentLookup IdentLookup::instance_;
 
 IdentLookup *
index 503cb141c208b217134ac65e17fd119c7c520f6c..c788871e87a436c6732a0d98184c07e7e566b742 100644 (file)
@@ -36,8 +36,6 @@ class ACLIdent : public ACL
 
 public:
     ACLIdent(ACLData<char const *> *newData, char const *);
-    ACLIdent (ACLIdent const &old);
-    ACLIdent & operator= (ACLIdent const &rhs);
     ~ACLIdent();
 
     /* ACL API */
@@ -48,7 +46,6 @@ public:
     virtual int match(ACLChecklist *checklist);
     virtual SBufList dump() const;
     virtual bool empty () const;
-    virtual ACL *clone()const;
 
 private:
     ACLData<char const *> *data;
index 0763d56a51d948c947f295a31b4ed9d8fa18ae3b..9461607412bd2f58e19d066a218fcaa02b66801f 100644 (file)
@@ -18,7 +18,6 @@
 Acl::Answer AuthenticateAcl(ACLChecklist *) STUB_RETVAL(ACCESS_DENIED)
 
 #include "auth/AclMaxUserIp.h"
-ACL * ACLMaxUserIP::clone() const STUB_RETVAL(NULL)
 ACLMaxUserIP::ACLMaxUserIP (char const *) STUB
 char const * ACLMaxUserIP::typeString() const STUB_RETVAL(NULL)
 bool ACLMaxUserIP::empty () const STUB_RETVAL(false)
@@ -32,8 +31,6 @@ const Acl::Options &ACLMaxUserIP::options() STUB_RETVAL(Acl::NoOptions())
 #include "auth/AclProxyAuth.h"
 ACLProxyAuth::~ACLProxyAuth() STUB
 ACLProxyAuth::ACLProxyAuth(ACLData<char const *> *, char const *) STUB
-ACLProxyAuth::ACLProxyAuth (ACLProxyAuth const &) STUB
-ACLProxyAuth & ACLProxyAuth::operator= (ACLProxyAuth const & a) STUB_RETVAL(const_cast<ACLProxyAuth &>(a))
 char const * ACLProxyAuth::typeString() const STUB_RETVAL(NULL)
 void ACLProxyAuth::parse() STUB
 int ACLProxyAuth::match(ACLChecklist *) STUB_RETVAL(0)
@@ -43,7 +40,6 @@ bool ACLProxyAuth::valid () const STUB_RETVAL(false)
 ProxyAuthLookup * ProxyAuthLookup::Instance() STUB_RETVAL(NULL)
 void ProxyAuthLookup::checkForAsync(ACLChecklist *) const STUB
 void ProxyAuthLookup::LookupDone(void *) STUB
-ACL * ACLProxyAuth::clone() const STUB_RETVAL(NULL)
 int ACLProxyAuth::matchForCache(ACLChecklist *) STUB_RETVAL(0)
 int ACLProxyAuth::matchProxyAuth(ACLChecklist *) STUB_RETVAL(0)
 void ACLProxyAuth::parseFlags() STUB