]>
git.ipfire.org Git - thirdparty/squid.git/blob - src/acl/ExtUser.cc
2 * Copyright (C) 1996-2015 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 /* DEBUG: section 28 Access Control */
15 #include "acl/ExtUser.h"
16 #include "acl/FilledChecklist.h"
17 #include "acl/RegexData.h"
18 #include "acl/UserData.h"
19 #include "client_side.h"
21 ACLExtUser::~ACLExtUser()
26 ACLExtUser::ACLExtUser(ACLData
<char const *> *newData
, char const *newType
) : data (newData
), type_ (newType
) {}
28 ACLExtUser::ACLExtUser (ACLExtUser
const &old
) : data (old
.data
->clone()), type_ (old
.type_
)
32 ACLExtUser::operator= (ACLExtUser
const &rhs
)
34 data
= rhs
.data
->clone();
40 ACLExtUser::typeString() const
52 ACLExtUser::match(ACLChecklist
*cl
)
54 ACLFilledChecklist
*checklist
= Filled(cl
);
55 if (checklist
->request
->extacl_user
.size()) {
56 return data
->match(checklist
->request
->extacl_user
.termedBuf());
63 ACLExtUser::dump() const
69 ACLExtUser::empty () const
75 ACLExtUser::clone() const
77 return new ACLExtUser(*this);