]>
Commit | Line | Data |
---|---|---|
f5691f9c | 1 | /* |
b8ae064d | 2 | * Copyright (C) 1996-2023 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_BASIC_SCHEME_H |
10 | #define SQUID_AUTH_BASIC_SCHEME_H | |
f5691f9c | 11 | |
a0026a6c AJ |
12 | #if HAVE_AUTH_MODULE_BASIC |
13 | ||
602d9612 | 14 | #include "auth/Scheme.h" |
f5691f9c | 15 | |
c6cf8dee AJ |
16 | namespace Auth |
17 | { | |
18 | namespace Basic | |
19 | { | |
d6374be6 | 20 | |
63be0a78 | 21 | /// \ingroup AuthAPI |
c6cf8dee | 22 | class Scheme : public Auth::Scheme |
f5691f9c | 23 | { |
24 | ||
25 | public: | |
c6cf8dee | 26 | static Auth::Scheme::Pointer GetInstance(); |
d6374be6 | 27 | Scheme() {}; |
337b9aa4 | 28 | ~Scheme() override {} |
f5691f9c | 29 | |
30 | /* per scheme */ | |
337b9aa4 AR |
31 | char const *type() const override; |
32 | void shutdownCleanup() override; | |
33 | Auth::SchemeConfig *createConfig() override; | |
f5691f9c | 34 | /* Not implemented */ |
d6374be6 AJ |
35 | Scheme(Scheme const &); |
36 | Scheme &operator=(Scheme const &); | |
f5691f9c | 37 | |
38 | private: | |
c6cf8dee | 39 | static Auth::Scheme::Pointer _instance; |
f5691f9c | 40 | }; |
41 | ||
d6374be6 AJ |
42 | } // namespace Basic |
43 | } // namespace Auth | |
44 | ||
a0026a6c | 45 | #endif /* HAVE_AUTH_MODULE_BASIC */ |
d6374be6 | 46 | #endif /* SQUID_AUTH_BASIC_SCHEME_H */ |
f53969cc | 47 |