]>
Commit | Line | Data |
---|---|---|
f5691f9c | 1 | /* |
ef57eb7b | 2 | * Copyright (C) 1996-2016 The Squid Software Foundation and contributors |
f5691f9c | 3 | * |
bbc27441 AJ |
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. | |
f5691f9c | 7 | */ |
8 | ||
d6374be6 AJ |
9 | #ifndef SQUID_AUTH_DIGEST_SCHEME_H |
10 | #define SQUID_AUTH_DIGEST_SCHEME_H | |
f5691f9c | 11 | |
a0026a6c AJ |
12 | #if HAVE_AUTH_MODULE_DIGEST |
13 | ||
602d9612 | 14 | #include "auth/Scheme.h" |
f5691f9c | 15 | |
c6cf8dee AJ |
16 | namespace Auth |
17 | { | |
18 | namespace Digest | |
19 | { | |
d6374be6 | 20 | |
63be0a78 | 21 | /// \ingroup AuthSchemeAPI |
22 | /// \ingroup AuthAPI | |
c6cf8dee | 23 | class Scheme : public Auth::Scheme |
f5691f9c | 24 | { |
25 | ||
26 | public: | |
c6cf8dee | 27 | static Auth::Scheme::Pointer GetInstance(); |
d6374be6 AJ |
28 | Scheme() {}; |
29 | virtual ~Scheme() {} | |
f5691f9c | 30 | |
31 | /* per scheme */ | |
32 | virtual char const *type () const; | |
c6cf8dee | 33 | virtual void shutdownCleanup(); |
9f3d2b2e | 34 | virtual Auth::Config *createConfig(); |
5817ee13 | 35 | |
f5691f9c | 36 | /* Not implemented */ |
d6374be6 AJ |
37 | Scheme(Scheme const &); |
38 | Scheme &operator=(Scheme const &); | |
f5691f9c | 39 | |
40 | private: | |
c6cf8dee | 41 | static Auth::Scheme::Pointer _instance; |
56a49fda | 42 | |
f5691f9c | 43 | }; |
44 | ||
d6374be6 AJ |
45 | } // namespace Digest |
46 | } // namespace Auth | |
47 | ||
a0026a6c | 48 | #endif /* HAVE_AUTH_MODULE_DIGEST */ |
d6374be6 | 49 | #endif /* SQUID_AUTH_DIGEST_SCHEME_H */ |
f53969cc | 50 |