2 * Copyright (C) 1996-2020 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_ACLMAXUSERIP_H
10 #define SQUID_ACLMAXUSERIP_H
15 #include "auth/UserRequest.h"
17 class ACLMaxUserIP
: public ACL
19 MEMPROXY_CLASS(ACLMaxUserIP
);
22 explicit ACLMaxUserIP(char const *theClass
);
24 virtual ACL
*clone() const;
25 virtual char const *typeString() const;
26 virtual const Acl::Options
&options();
28 virtual int match(ACLChecklist
*cl
);
29 virtual SBufList
dump() const;
30 virtual bool empty() const;
31 virtual bool valid() const;
32 virtual bool requiresRequest() const {return true;}
34 int getMaximum() const {return maximum
;}
37 int match(Auth::UserRequest::Pointer auth_user_request
, Ip::Address
const &src_addr
);
40 Acl::BooleanOptionValue beStrict
; ///< Enforce "one user, one device" policy?
48 #endif /* SQUID_ACLMAXUSERIP_H */