]> git.ipfire.org Git - thirdparty/squid.git/blame - src/auth/negotiate/User.h
SourceFormat Enforcement
[thirdparty/squid.git] / src / auth / negotiate / User.h
CommitLineData
bbc27441 1/*
4ac4a490 2 * Copyright (C) 1996-2017 The Squid Software Foundation and contributors
bbc27441
AJ
3 *
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.
7 */
8
aa110616
AJ
9#ifndef _SQUID_AUTH_NEGOTIATE_USER_H
10#define _SQUID_AUTH_NEGOTIATE_USER_H
11
a0026a6c
AJ
12#if HAVE_AUTH_MODULE_NEGOTIATE
13
aa110616
AJ
14#include "auth/User.h"
15
16namespace Auth
17{
18
dc79fed8 19class SchemeConfig;
aa110616
AJ
20
21namespace Negotiate
22{
23
24/** User credentials for the Negotiate authentication protocol */
25class User : public Auth::User
26{
aa110616 27 MEMPROXY_CLASS(Auth::Negotiate::User);
741c2986
AJ
28
29public:
dc79fed8 30 User(Auth::SchemeConfig *, const char *requestRealm);
39bfd3eb 31 virtual ~User();
6c6d9beb 32 virtual int32_t ttl() const override;
aa110616 33
46b1e6bf 34 /* Auth::User API */
638cfbc4 35 static CbcPointer<Auth::CredentialsCache> Cache();
283c905d
FC
36 virtual void addToNameCache() override;
37
aa110616
AJ
38 dlink_list proxy_auth_list;
39};
40
aa110616
AJ
41} // namespace Negotiate
42} // namespace Auth
43
a0026a6c 44#endif /* HAVE_AUTH_MODULE_NEGOTIATE */
aa110616 45#endif /* _SQUID_AUTH_NEGOTIATE_USER_H */
f53969cc 46