]>
Commit | Line | Data |
---|---|---|
928f3421 AJ |
1 | #ifndef __AUTH_AUTHENTICATE_STATE_T__ |
2 | #define __AUTH_AUTHENTICATE_STATE_T__ | |
3 | ||
2f1431ea AJ |
4 | #if USE_AUTH |
5 | ||
928f3421 | 6 | #include "auth/UserRequest.h" |
1c756645 AJ |
7 | #include "cbdata.h" |
8 | ||
9 | namespace Auth | |
10 | { | |
928f3421 | 11 | |
928f3421 AJ |
12 | /** |
13 | * CBDATA state for NTLM, Negotiate, and Digest stateful authentication. | |
14 | */ | |
a9336c23 A |
15 | class StateData |
16 | { | |
1c756645 AJ |
17 | public: |
18 | StateData(const AuthUserRequest::Pointer &r, RH *h, void *d) : | |
a9336c23 A |
19 | data(cbdataReference(d)), |
20 | auth_user_request(r), | |
21 | handler(h) {} | |
1c756645 AJ |
22 | |
23 | ~StateData() { | |
24 | auth_user_request = NULL; | |
25 | cbdataReferenceDone(data); | |
26 | } | |
27 | ||
928f3421 AJ |
28 | void *data; |
29 | AuthUserRequest::Pointer auth_user_request; | |
30 | RH *handler; | |
928f3421 | 31 | |
1c756645 AJ |
32 | private: |
33 | CBDATA_CLASS2(StateData); | |
34 | }; | |
928f3421 | 35 | |
1c756645 | 36 | } // namespace Auth |
928f3421 | 37 | |
2f1431ea | 38 | #endif /* USE_AUTH */ |
928f3421 | 39 | #endif /* __AUTH_AUTHENTICATE_STATE_T__ */ |