]>
Commit | Line | Data |
---|---|---|
5dee515e | 1 | /* |
ef57eb7b | 2 | * Copyright (C) 1996-2016 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 | ||
b0dd28ba | 9 | #ifndef SQUID_ACLARP_H |
10 | #define SQUID_ACLARP_H | |
63be0a78 | 11 | |
3ad63615 AR |
12 | #include "acl/Acl.h" |
13 | #include "acl/Checklist.h" | |
5dee515e | 14 | |
41b91720 FC |
15 | #include <set> |
16 | ||
05320519 A |
17 | namespace Eui |
18 | { | |
19 | class Eui48; | |
a98c2da5 | 20 | }; |
62e76326 | 21 | |
63be0a78 | 22 | /// \ingroup ACLAPI |
b0dd28ba | 23 | class ACLARP : public ACL |
62e76326 | 24 | { |
b001e822 | 25 | MEMPROXY_CLASS(ACLARP); |
b0dd28ba | 26 | |
741c2986 | 27 | public: |
b0dd28ba | 28 | ACLARP(char const *); |
29 | ACLARP(ACLARP const &); | |
68acf08e | 30 | ~ACLARP() {} |
b0dd28ba | 31 | ACLARP&operator=(ACLARP const &); |
62e76326 | 32 | |
b0dd28ba | 33 | virtual ACL *clone()const; |
34 | virtual char const *typeString() const; | |
35 | virtual void parse(); | |
36 | virtual int match(ACLChecklist *checklist); | |
9b859d6f | 37 | virtual SBufList dump() const; |
4b0f5de8 | 38 | virtual bool empty () const; |
62e76326 | 39 | |
b0dd28ba | 40 | protected: |
b0dd28ba | 41 | static Prototype RegistryProtoype; |
42 | static ACLARP RegistryEntry_; | |
b0dd28ba | 43 | char const *class_; |
41b91720 FC |
44 | typedef std::set<Eui::Eui48> AclArpData_t; |
45 | AclArpData_t aclArpData; | |
b0dd28ba | 46 | }; |
5dee515e | 47 | |
b0dd28ba | 48 | #endif /* SQUID_ACLARP_H */ |
f53969cc | 49 |