#define SQUID_ACLFILLED_CHECKLIST_H
#include "acl/Checklist.h"
+#if USE_AUTH
+#include "auth/UserRequest.h"
+#endif
+#if USE_SSL
+#include "ssl/support.h"
+#endif
-class AuthUserRequest;
class ExternalACLEntry;
class ConnStateData;
+class HttpRequest;
/** \ingroup ACLAPI
ACLChecklist filled with specific data, representing Squid and transaction
void operator delete(void *);
ACLFilledChecklist();
- ACLFilledChecklist(const acl_access *, HttpRequest *, const char *ident);
+ ACLFilledChecklist(const acl_access *, HttpRequest *, const char *ident);
~ACLFilledChecklist();
public:
virtual bool hasReply() const { return reply != NULL; }
public:
- IpAddress src_addr;
- IpAddress dst_addr;
- IpAddress my_addr;
+ Ip::Address src_addr;
+ Ip::Address dst_addr;
+ Ip::Address my_addr;
struct peer *dst_peer;
+ char *dst_rdns;
HttpRequest *request;
HttpReply *reply;
char rfc931[USER_IDENT_SZ];
- AuthUserRequest *auth_user_request;
-
+#if USE_AUTH
+ Auth::UserRequest::Pointer auth_user_request;
+#endif
#if SQUID_SNMP
char *snmp_community;
#endif
#if USE_SSL
- int ssl_error;
+ /// SSL [certificate validation] errors, in undefined order
+ Ssl::Errors *sslErrors;
#endif
ExternalACLEntry *extacl_entry;
private:
- virtual void checkCallback(allow_t answer);
-
-private:
- CBDATA_CLASS(ACLFilledChecklist);
-
ConnStateData * conn_; /**< hack for ident and NTLM */
int fd_; /**< may be available when conn_ is not */
bool destinationDomainChecked_;
bool sourceDomainChecked_;
-
-private:
/// not implemented; will cause link failures if used
ACLFilledChecklist(const ACLFilledChecklist &);
/// not implemented; will cause link failures if used
ACLFilledChecklist &operator=(const ACLFilledChecklist &);
+
+ CBDATA_CLASS(ACLFilledChecklist);
};
/// convenience and safety wrapper for dynamic_cast<ACLFilledChecklist*>