Squid Web Cache master
Loading...
Searching...
No Matches
User.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 1996-2025 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
9#ifndef SQUID_SRC_AUTH_DIGEST_USER_H
10#define SQUID_SRC_AUTH_DIGEST_USER_H
11
12#if HAVE_AUTH_MODULE_DIGEST
13
14#include "auth/digest/Config.h"
15#include "auth/User.h"
16#include "rfc2617.h"
17
18namespace Auth
19{
20namespace Digest
21{
22
24class User : public Auth::User
25{
26 MEMPROXY_CLASS(Auth::Digest::User);
27
28public:
29 User(Auth::SchemeConfig *, const char *requestRealm);
30 ~User() override;
31 int32_t ttl() const override;
32
33 /* Auth::User API */
35 void addToNameCache() override;
36
37 HASH HA1;
38 int HA1created;
39
40 /* what nonces have been allocated to this user */
41 dlink_list nonces;
42
43 digest_nonce_h * currentNonce();
44};
45
46} // namespace Digest
47} // namespace Auth
48
49#endif /* HAVE_AUTH_MODULE_DIGEST */
50#endif /* SQUID_SRC_AUTH_DIGEST_USER_H */
51
#define MEMPROXY_CLASS(CLASS)
HTTP Authentication.
Definition Config.h:19
char HASH[HASHLEN]
Definition rfc2617.h:31
struct _Cache Cache