]>
Commit | Line | Data |
---|---|---|
bbc27441 AJ |
1 | /* |
2 | * Copyright (C) 1996-2014 The Squid Software Foundation and contributors | |
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_BASIC_USER_H |
10 | #define _SQUID_AUTH_BASIC_USER_H | |
11 | ||
12 | #include "auth/User.h" | |
13 | #include "auth/UserRequest.h" | |
14 | ||
aa110616 AJ |
15 | namespace Auth |
16 | { | |
17 | ||
18 | class Config; | |
bf929433 | 19 | class QueueNode; |
aa110616 AJ |
20 | |
21 | namespace Basic | |
22 | { | |
23 | ||
24 | /** User credentials for the Basic authentication protocol */ | |
25 | class User : public Auth::User | |
26 | { | |
aa110616 AJ |
27 | MEMPROXY_CLASS(Auth::Basic::User); |
28 | ||
741c2986 | 29 | public: |
d4806c91 | 30 | User(Auth::Config *, const char *requestRealm); |
aa110616 AJ |
31 | ~User(); |
32 | bool authenticated() const; | |
aa110616 | 33 | bool valid() const; |
de76457e | 34 | |
aa110616 AJ |
35 | /** Update the cached password for a username. */ |
36 | void updateCached(User *from); | |
37 | virtual int32_t ttl() const; | |
38 | ||
39 | char *passwd; | |
40 | ||
bf929433 | 41 | QueueNode *queue; |
aa110616 AJ |
42 | |
43 | private: | |
c7baff40 | 44 | Auth::UserRequest::Pointer currentRequest; |
aa110616 AJ |
45 | }; |
46 | ||
aa110616 AJ |
47 | } // namespace Basic |
48 | } // namespace Auth | |
49 | ||
50 | #endif /* _SQUID_AUTH_BASIC_USER_H */ | |
f53969cc | 51 |