2 * Copyright (C) 1996-2014 The Squid Software Foundation and contributors
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.
9 #ifndef SQUID_ACLDESTINATIONIP_H
10 #define SQUID_ACLDESTINATIONIP_H
11 #include "acl/Checklist.h"
15 class DestinationIPLookup
: public ACLChecklist::AsyncState
19 static DestinationIPLookup
*Instance();
20 virtual void checkForAsync(ACLChecklist
*)const;
23 static DestinationIPLookup instance_
;
24 static IPH LookupDone
;
27 class ACLDestinationIP
: public ACLIP
31 MEMPROXY_CLASS(ACLDestinationIP
);
33 ACLDestinationIP(): ACLIP(ACLDestinationIP::SupportedFlags
) {}
34 virtual char const *typeString() const;
35 virtual int match(ACLChecklist
*checklist
);
36 virtual bool requiresRequest() const {return true;}
38 virtual ACL
*clone()const;
40 static ACLFlag SupportedFlags
[];
42 static Prototype RegistryProtoype
;
43 static ACLDestinationIP RegistryEntry_
;
46 MEMPROXY_CLASS_INLINE(ACLDestinationIP
);
48 #endif /* SQUID_ACLDESTINATIONIP_H */