]> git.ipfire.org Git - thirdparty/squid.git/blob - src/auth/basic/UserRequest.h
merge from trunk
[thirdparty/squid.git] / src / auth / basic / UserRequest.h
1 #ifndef _SQUID_SRC_AUTH_BASIC_USERREQUEST_H
2 #define _SQUID_SRC_AUTH_BASIC_USERREQUEST_H
3
4 #include "auth/UserRequest.h"
5 #include "MemPool.h"
6
7 class ConnStateData;
8 class HttpRequest;
9
10 namespace Auth
11 {
12
13 namespace Basic
14 {
15
16 /* follows the http request around */
17
18 class UserRequest : public Auth::UserRequest
19 {
20 public:
21 MEMPROXY_CLASS(Auth::Basic::UserRequest);
22
23 UserRequest() {}
24 virtual ~UserRequest() { assert(LockCount()==0); }
25
26 virtual int authenticated() const;
27 virtual void authenticate(HttpRequest * request, ConnStateData *conn, http_hdr_type type);
28 virtual Auth::Direction module_direction();
29 virtual void module_start(HttpRequest * request, AccessLogEntry::Pointer &al, AUTHCB *, void *);
30 virtual const char *credentialsStr();
31
32 private:
33 static HLPCB HandleReply;
34 };
35
36 } // namespace Basic
37 } // namespace Auth
38
39 MEMPROXY_CLASS_INLINE(Auth::Basic::UserRequest);
40
41 #endif /* _SQUID_SRC_AUTH_BASIC_USERREQUEST_H */