]>
Commit | Line | Data |
---|---|---|
f5691f9c | 1 | /* |
bbc27441 | 2 | * Copyright (C) 1996-2014 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 | ||
f7f3304a | 9 | #include "squid.h" |
616cfc4c | 10 | #include "auth/basic/Scheme.h" |
582c2af2 | 11 | #include "Debug.h" |
5817ee13 AJ |
12 | #include "helper.h" |
13 | ||
9f3d2b2e | 14 | /* for Auth::Config */ |
5817ee13 AJ |
15 | #include "auth/basic/auth_basic.h" |
16 | ||
c6cf8dee | 17 | Auth::Scheme::Pointer Auth::Basic::Scheme::_instance = NULL; |
f5691f9c | 18 | |
c6cf8dee | 19 | Auth::Scheme::Pointer |
d6374be6 | 20 | Auth::Basic::Scheme::GetInstance() |
f5691f9c | 21 | { |
5817ee13 | 22 | if (_instance == NULL) { |
d6374be6 | 23 | _instance = new Auth::Basic::Scheme(); |
5817ee13 AJ |
24 | AddScheme(_instance); |
25 | } | |
26 | return _instance; | |
f5691f9c | 27 | } |
28 | ||
29 | char const * | |
c6cf8dee | 30 | Auth::Basic::Scheme::type() const |
f5691f9c | 31 | { |
32 | return "basic"; | |
33 | } | |
34 | ||
5817ee13 | 35 | void |
c6cf8dee | 36 | Auth::Basic::Scheme::shutdownCleanup() |
5817ee13 | 37 | { |
d6374be6 AJ |
38 | if (_instance == NULL) |
39 | return; | |
5817ee13 | 40 | |
d6374be6 AJ |
41 | _instance = NULL; |
42 | debugs(29, DBG_CRITICAL, "Shutdown: Basic authentication."); | |
5817ee13 AJ |
43 | } |
44 | ||
9f3d2b2e | 45 | Auth::Config * |
d6374be6 | 46 | Auth::Basic::Scheme::createConfig() |
5817ee13 | 47 | { |
372fccd6 | 48 | Auth::Basic::Config *newCfg = new Auth::Basic::Config; |
9f3d2b2e | 49 | return dynamic_cast<Auth::Config*>(newCfg); |
5817ee13 | 50 | } |