]>
Commit | Line | Data |
---|---|---|
94439e4e | 1 | /* |
2 | * auth_ntlm.h | |
3 | * Internal declarations for the ntlm auth module | |
4 | */ | |
5 | ||
6 | #ifndef __AUTH_NTLM_H__ | |
7 | #define __AUTH_NTLM_H__ | |
3ad63615 | 8 | #include "auth/Gadgets.h" |
2d2b0bb7 AR |
9 | #include "auth/User.h" |
10 | #include "auth/UserRequest.h" | |
11 | #include "auth/Config.h" | |
aa839030 | 12 | #include "helper.h" |
94439e4e | 13 | |
14 | #define DefaultAuthenticateChildrenMax 32 /* 32 processes */ | |
15 | ||
f5691f9c | 16 | class NTLMUser : public AuthUser |
62e76326 | 17 | { |
f5691f9c | 18 | |
19 | public: | |
b001e822 | 20 | MEMPROXY_CLASS(NTLMUser); |
f5691f9c | 21 | NTLMUser(AuthConfig *); |
22 | ~NTLMUser(); | |
56a49fda AJ |
23 | |
24 | virtual void deleteSelf() const; | |
25 | virtual int32_t ttl() const; | |
26 | ||
94439e4e | 27 | dlink_list proxy_auth_list; |
28 | }; | |
29 | ||
d85b8894 | 30 | MEMPROXY_CLASS_INLINE(NTLMUser); |
b001e822 | 31 | |
f5691f9c | 32 | typedef class NTLMUser ntlm_user_t; |
33 | ||
94439e4e | 34 | /* configuration runtime data */ |
62e76326 | 35 | |
f5691f9c | 36 | class AuthNTLMConfig : public AuthConfig |
62e76326 | 37 | { |
f5691f9c | 38 | |
39 | public: | |
5c926411 | 40 | AuthNTLMConfig(); |
f5691f9c | 41 | virtual bool active() const; |
42 | virtual bool configured() const; | |
a33a428a | 43 | virtual AuthUserRequest::Pointer decode(char const *proxy_auth); |
f5691f9c | 44 | virtual void done(); |
45 | virtual void dump(StoreEntry *, const char *, AuthConfig *); | |
a33a428a | 46 | virtual void fixHeader(AuthUserRequest::Pointer, HttpReply *, http_hdr_type, HttpRequest *); |
f5691f9c | 47 | virtual void init(AuthConfig *); |
48 | virtual void parse(AuthConfig *, int, char *); | |
15fab853 | 49 | virtual void registerWithCacheManager(void); |
f5691f9c | 50 | virtual const char * type() const; |
6bf4f823 | 51 | int keep_alive; |
94439e4e | 52 | }; |
53 | ||
f5691f9c | 54 | typedef class AuthNTLMConfig auth_ntlm_config; |
94439e4e | 55 | |
928f3421 AJ |
56 | extern statefulhelper *ntlmauthenticators; |
57 | ||
94439e4e | 58 | #endif |