]> git.ipfire.org Git - thirdparty/squid.git/blame - src/acl/LocalPort.h
SourceFormat Enforcement
[thirdparty/squid.git] / src / acl / LocalPort.h
CommitLineData
5dee515e 1/*
4ac4a490 2 * Copyright (C) 1996-2017 The Squid Software Foundation and contributors
5dee515e 3 *
bbc27441
AJ
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.
5dee515e 7 */
8
1e40905d
AJ
9#ifndef SQUID_ACLLOCALPORT_H
10#define SQUID_ACLLOCALPORT_H
63be0a78 11
127dce76 12#include "acl/Strategised.h"
602d9612 13#include "acl/Strategy.h"
5dee515e 14
63be0a78 15/// \ingroup ACLAPI
1e40905d 16class ACLLocalPortStrategy : public ACLStrategy<int>
62e76326 17{
18
19public:
33810b1d 20 virtual int match (ACLData<MatchType> * &, ACLFilledChecklist *, ACLFlags &);
1e40905d 21 static ACLLocalPortStrategy *Instance();
63be0a78 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 */
1e40905d 28 ACLLocalPortStrategy(ACLLocalPortStrategy const &);
b0dd28ba 29
30private:
1e40905d
AJ
31 static ACLLocalPortStrategy Instance_;
32 ACLLocalPortStrategy() {}
62e76326 33
1e40905d 34 ACLLocalPortStrategy&operator=(ACLLocalPortStrategy const &);
b0dd28ba 35};
36
63be0a78 37/// \ingroup ACLAPI
1e40905d 38class ACLLocalPort
b0dd28ba 39{
62e76326 40
b0dd28ba 41private:
42 static ACL::Prototype RegistryProtoype;
43 static ACLStrategised<int> RegistryEntry_;
44};
5dee515e 45
1e40905d 46#endif /* SQUID_ACLLOCALPORT_H */
f53969cc 47