]> git.ipfire.org Git - thirdparty/squid.git/blame - src/acl/Asn.h
Maintenance: Consistent use of C++11 "override" specifier (#1224)
[thirdparty/squid.git] / src / acl / Asn.h
CommitLineData
3841dd46 1/*
bf95c10a 2 * Copyright (C) 1996-2022 The Squid Software Foundation and contributors
3841dd46 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.
3841dd46 7 */
8
9#ifndef SQUID_ACLASN_H
10#define SQUID_ACLASN_H
63be0a78 11
3ad63615 12#include "acl/Data.h"
b0c2361b 13#include "base/CbDataList.h"
96d89ea0 14#include "ip/Address.h"
3841dd46 15
8a648e8d 16int asnMatchIp(CbDataList<int> *, Ip::Address &);
63be0a78 17
18/// \ingroup ACLAPI
8a648e8d 19void asnInit(void);
63be0a78 20
63be0a78 21/// \ingroup ACLAPI
8a648e8d 22void asnFreeMemory(void);
b0dd28ba 23
63be0a78 24/// \ingroup ACLAPI
b7ac5457 25class ACLASN : public ACLData<Ip::Address>
62e76326 26{
b001e822 27 MEMPROXY_CLASS(ACLASN);
b0dd28ba 28
741c2986 29public:
d59e4742 30 ACLASN() : data(nullptr) {}
337b9aa4 31 ~ACLASN() override;
b0dd28ba 32
337b9aa4
AR
33 bool match(Ip::Address) override;
34 SBufList dump() const override;
35 void parse() override;
36 bool empty() const override;
37 void prepareForUse() override;
62e76326 38
39private:
2236466c 40 CbDataList<int> *data;
3841dd46 41};
62e76326 42
3841dd46 43#endif /* SQUID_ACLASN_H */
f53969cc 44