]> git.ipfire.org Git - thirdparty/squid.git/blob - src/acl/LocalPort.h
SourceFormat Enforcement
[thirdparty/squid.git] / src / acl / LocalPort.h
1 /*
2 * Copyright (C) 1996-2017 The Squid Software Foundation and contributors
3 *
4 * Squid software is distributed under GPLv2+ license and includes
5 * contributions from numerous individuals and organizations.
6 * Please see the COPYING and CONTRIBUTORS files for details.
7 */
8
9 #ifndef SQUID_ACLLOCALPORT_H
10 #define SQUID_ACLLOCALPORT_H
11
12 #include "acl/Strategised.h"
13 #include "acl/Strategy.h"
14
15 /// \ingroup ACLAPI
16 class ACLLocalPortStrategy : public ACLStrategy<int>
17 {
18
19 public:
20 virtual int match (ACLData<MatchType> * &, ACLFilledChecklist *, ACLFlags &);
21 static ACLLocalPortStrategy *Instance();
22 /**
23 * Not implemented to prevent copies of the instance.
24 \par
25 * Not private to prevent brain dead g+++ warnings about
26 * private constructors with no friends
27 */
28 ACLLocalPortStrategy(ACLLocalPortStrategy const &);
29
30 private:
31 static ACLLocalPortStrategy Instance_;
32 ACLLocalPortStrategy() {}
33
34 ACLLocalPortStrategy&operator=(ACLLocalPortStrategy const &);
35 };
36
37 /// \ingroup ACLAPI
38 class ACLLocalPort
39 {
40
41 private:
42 static ACL::Prototype RegistryProtoype;
43 static ACLStrategised<int> RegistryEntry_;
44 };
45
46 #endif /* SQUID_ACLLOCALPORT_H */
47