]> git.ipfire.org Git - thirdparty/squid.git/blobdiff - src/client_side_request.h
SourceFormat: enforcement
[thirdparty/squid.git] / src / client_side_request.h
index 62894d799d74f30350af62e8f8db59be7734271a..f30335d171311e7651f64257416651f31e322d6b 100644 (file)
@@ -1,6 +1,6 @@
 
 /*
- * $Id: client_side_request.h,v 1.37 2008/02/12 23:07:52 rousskov Exp $
+ * $Id$
  *
  *
  * SQUID Web Proxy Cache          http://www.squid-cache.org/
  *  it under the terms of the GNU General Public License as published by
  *  the Free Software Foundation; either version 2 of the License, or
  *  (at your option) any later version.
- *  
+ *
  *  This program is distributed in the hope that it will be useful,
  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  *  GNU General Public License for more details.
- *  
+ *
  *  You should have received a copy of the GNU General Public License
  *  along with this program; if not, write to the Free Software
  *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA.
@@ -41,7 +41,7 @@
 #include "client_side.h"
 #include "AccessLogEntry.h"
 #include "dlink.h"
-#include "ICAP/AsyncJob.h"
+#include "base/AsyncJob.h"
 
 #if USE_ADAPTATION
 #include "adaptation/forward.h"
@@ -61,8 +61,8 @@ class ClientRequestContext;
 
 class ClientHttpRequest
 #if USE_ADAPTATION
-    : public Adaptation::Initiator, // to start adaptation transactions
-    public BodyConsumer     // to receive reply bodies in request satisf. mode
+        : public Adaptation::Initiator, // to start adaptation transactions
+        public BodyConsumer     // to receive reply bodies in request satisf. mode
 #endif
 {
 
@@ -100,8 +100,7 @@ public:
     char *uri;
     char *log_uri;
 
-    struct
-    {
+    struct {
         int64_t offset;
         int64_t size;
         size_t headers_sz;
@@ -114,17 +113,16 @@ public:
     struct timeval start_time;
     AccessLogEntry al;
 
-    struct
-    {
+    struct {
         unsigned int accel:1;
         unsigned int intercepted:1;
+        unsigned int spoof_client_ip:1;
         unsigned int internal:1;
         unsigned int done_copying:1;
         unsigned int purging:1;
     } flags;
 
-    struct
-    {
+    struct {
         http_status status;
         char *location;
     } redirect;
@@ -138,8 +136,10 @@ public:
 
 #if USE_ADAPTATION
     // AsyncJob virtual methods
-    virtual bool doneAll() const { return Initiator::doneAll() && 
-                                      BodyConsumer::doneAll() && false;}
+    virtual bool doneAll() const {
+        return Initiator::doneAll() &&
+               BodyConsumer::doneAll() && false;
+    }
 #endif
 
 private:
@@ -159,7 +159,7 @@ public:
 #if USE_ADAPTATION
 
 public:
-    bool startAdaptation(Adaptation::ServicePointer);
+    void startAdaptation(const Adaptation::ServiceGroupPointer &g);
 
     // private but exposed for ClientRequestContext
     void handleAdaptationFailure(bool bypassable = false);
@@ -187,7 +187,9 @@ private:
 
 /* client http based routines */
 SQUIDCEXTERN char *clientConstructTraceEcho(ClientHttpRequest *);
-SQUIDCEXTERN ACLChecklist *clientAclChecklistCreate(const acl_access * acl,ClientHttpRequest * http);
+
+class ACLFilledChecklist;
+SQUIDCEXTERN ACLFilledChecklist *clientAclChecklistCreate(const acl_access * acl,ClientHttpRequest * http);
 SQUIDCEXTERN int clientHttpRequestStatus(int fd, ClientHttpRequest const *http);
 SQUIDCEXTERN void clientAccessCheck(ClientHttpRequest *);