/*
- * $Id: client_side_reply.cc,v 1.103 2006/05/06 22:13:18 wessels Exp $
+ * $Id: client_side_reply.cc,v 1.104 2006/05/07 15:13:24 wessels Exp $
*
* DEBUG: section 88 Client-side Reply Routines
* AUTHOR: Robert Collins (Originally Duane Wessels in client_side.c)
safe_free(tempBuffer.data);
cbdataReferenceDone(http);
HTTPMSGUNLOCK(reply);
- fwd = NULL; // refcounted
}
clientReplyContext::clientReplyContext(ClientHttpRequest *clientContext) : http (cbdataReference(clientContext)), old_entry (NULL), old_sc(NULL), deleting(false)
* A refcounted pointer so that FwdState stays around as long as
* this clientReplyContext does
*/
- fwd = FwdState::fwdStart(http->getConn().getRaw() != NULL ? http->getConn()->fd : -1,
- http->storeEntry(),
- http->request);
+ FwdState::fwdStart(http->getConn().getRaw() != NULL ? http->getConn()->fd : -1,
+ http->storeEntry(),
+ http->request);
/* Register with storage manager to receive updates when data comes in. */
if (EBIT_TEST(entry->flags, ENTRY_ABORTED))
if (http->flags.internal)
r->protocol = PROTO_INTERNAL;
- fwd = FwdState::fwdStart(http->getConn().getRaw() != NULL ? http->getConn()->fd : -1,
- http->storeEntry(),
- r);
+ FwdState::fwdStart(http->getConn().getRaw() != NULL ? http->getConn()->fd : -1,
+ http->storeEntry(),
+ r);
}
}
/*
- * $Id: client_side_reply.h,v 1.11 2006/05/05 21:33:56 wessels Exp $
+ * $Id: client_side_reply.h,v 1.12 2006/05/07 15:13:24 wessels Exp $
*
*
* SQUID Web Proxy Cache http://www.squid-cache.org/
void startSendProcess();
StoreIOBuffer holdingBuffer;
HttpReply *reply;
- FwdState::Pointer fwd;
void processReplyAccess();
static PF ProcessReplyAccessResult;
void processReplyAccessResult(bool accessAllowed);
/*
- * $Id: forward.cc,v 1.139 2006/05/05 21:33:56 wessels Exp $
+ * $Id: forward.cc,v 1.140 2006/05/07 15:13:24 wessels Exp $
*
* DEBUG: section 17 Request Forwarding
* AUTHOR: Duane Wessels
* a transaction. It is a static method that may or may not
* allocate a FwdState.
*/
-FwdState *
+void
FwdState::fwdStart(int client_fd, StoreEntry *entry, HttpRequest *request)
{
/*
errorAppendEntry(entry, anErr); // frees anErr
- return NULL;
+ return;
}
}
ErrorState *anErr = errorCon(ERR_SHUTTING_DOWN, HTTP_SERVICE_UNAVAILABLE);
anErr->request = HTTPMSGLOCK(request);
errorAppendEntry(entry, anErr); // frees anErr
- return NULL;
+ return;
}
switch (request->protocol) {
case PROTO_INTERNAL:
internalStart(request, entry);
- return NULL;
+ return;
case PROTO_CACHEOBJ:
cachemgrStart(client_fd, request, entry);
- return NULL;
+ return;
case PROTO_URN:
urnStart(request, entry);
- return NULL;
+ return;
default:
FwdState *fwd = new FwdState(client_fd, entry, request);
peerSelect(request, entry, fwdStartCompleteWrapper, fwd);
- return fwd;
+ return;
}
/* NOTREACHED */
~FwdState();
static void initModule();
- static FwdState * fwdStart(int fd, StoreEntry *, HttpRequest *);
+ static void fwdStart(int fd, StoreEntry *, HttpRequest *);
void startComplete(FwdServer *);
void startFail();
void fail(ErrorState *err);