]>
Commit | Line | Data |
---|---|---|
94439e4e | 1 | /* |
bf95c10a | 2 | * Copyright (C) 1996-2022 The Squid Software Foundation and contributors |
bbc27441 AJ |
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. | |
94439e4e | 7 | */ |
8 | ||
9 | #ifndef __AUTH_NTLM_H__ | |
10 | #define __AUTH_NTLM_H__ | |
bbc27441 | 11 | |
a0026a6c AJ |
12 | #if HAVE_AUTH_MODULE_NTLM |
13 | ||
3ad63615 | 14 | #include "auth/Gadgets.h" |
ae578099 | 15 | #include "auth/SchemeConfig.h" |
2d2b0bb7 | 16 | #include "auth/UserRequest.h" |
24438ec5 | 17 | #include "helper/forward.h" |
94439e4e | 18 | |
aa110616 AJ |
19 | class HttpRequest; |
20 | class StoreEntry; | |
f5691f9c | 21 | |
bb8909c3 A |
22 | namespace Auth |
23 | { | |
24 | namespace Ntlm | |
25 | { | |
62e76326 | 26 | |
372fccd6 | 27 | /** NTLM Authentication configuration data */ |
dc79fed8 | 28 | class Config : public Auth::SchemeConfig |
62e76326 | 29 | { |
f5691f9c | 30 | public: |
337b9aa4 AR |
31 | bool active() const override; |
32 | bool configured() const override; | |
33 | Auth::UserRequest::Pointer decode(char const *proxy_auth, const HttpRequest *request, const char *requestRealm) override; | |
34 | void done() override; | |
35 | void rotateHelpers() override; | |
36 | void fixHeader(Auth::UserRequest::Pointer, HttpReply *, Http::HdrType, HttpRequest *) override; | |
37 | void init(Auth::SchemeConfig *) override; | |
38 | void registerWithCacheManager(void) override; | |
39 | const char * type() const override; | |
94439e4e | 40 | }; |
41 | ||
372fccd6 AJ |
42 | } // namespace Ntlm |
43 | } // namespace Auth | |
94439e4e | 44 | |
928f3421 AJ |
45 | extern statefulhelper *ntlmauthenticators; |
46 | ||
a0026a6c | 47 | #endif /* HAVE_AUTH_MODULE_NTLM */ |
94439e4e | 48 | #endif |
f53969cc | 49 |