These changesets represents the changes on the squid3/squid3-icap development branch of Squid. If there is any questions please contact squid-dev@squid-cache.org.
| Date | Author | Size | Description | 
|---|
| 2007/06/19 06:00:24 | rousskov | +7 -2 | Before deleting a stale update event, check whether the event is there | 
| 2007/06/19 05:31:18 | rousskov | +1 -0 | Count I/O timeout as a service failure. This helps suspend broken services | 
| 2007/06/19 05:18:21 | rousskov | +4 -0 | Partial bug #1973 fix: Try to revive a suspended service after the | 
| 2007/06/19 05:09:03 | rousskov | +50 -37 | Moved OPTIONS fetch time calculation from scheduleUpdate() to | 
| 2007/06/19 03:19:33 | rousskov | +64 -13 | Added icap_connect_timeout and icap_io_timeout squid.conf options to control | 
| 2007/06/19 03:05:07 | rousskov | +2 -1 | Do not retry server transactions aborted due to request body supply | 
| 2007/06/19 01:17:31 | rousskov | +12 -1 | When handling request body abort, create an error before terminating the | 
| 2007/06/18 23:14:30 | rousskov | +2 -2 | HttpStateData may get stuck if request body producer aborts while the request | 
| 2007/06/18 20:58:46 | rousskov | +1 -1 | When connect() times out, throw an exception instead of calling mustStop() | 
| 2007/06/18 23:14:30 | rousskov | +2 -2 | HttpStateData may get stuck if request body producer aborts while the request | 
| 2007/06/18 20:58:46 | rousskov | +1 -1 | When connect() times out, throw an exception instead of calling mustStop() | 
| 2007/06/18 20:49:08 | rousskov | +1 -2 | Do not stop writing before throwing an exception. If the exception kills the | 
| 2007/06/18 20:39:01 | rousskov | +2 -1 | - Rearranged code to make the order of debugging messages more intuitive. | 
| 2007/06/01 21:23:59 | rousskov | +135 -15 | Bug #1974 fix: Bypass failures of optional ICAP services. | 
| 2007/06/01 20:55:59 | rousskov | +14 -12 | Ignore comm_write notifications if the newly added | 
| 2007/06/01 20:50:16 | rousskov | +2 -2 | Made AsyncJob::callException() virtual so that kids can customize exception | 
| 2007/06/01 20:47:07 | rousskov | +38 -9 | Bug #1981 fix: Tell FwdState that an unregistered and failed Server is | 
| 2007/05/02 16:53:25 | rousskov | +48 -13 | - Preserve virgin body backup if we decided to retry the transaction on pconn | 
| 2007/05/02 16:43:55 | rousskov | +1 -1 | Added a comment. | 
| 2007/04/28 00:16:06 | rousskov | +2 -0 | Disable transaction retries if we are not using a persistent connection. ICAP | 
| 2007/04/25 22:01:09 | rousskov | +2 -2 | Assign cbdataReference result to avoid compiler warnings. | 
| 2007/04/25 21:28:10 | rousskov | +37 -34 | Bug #1819 fix, part 2: retry the ICAP transaction when its pconn fails. | 
| 2007/04/25 21:23:47 | rousskov | +754 -231 | Bug #1819 fix, part 2: retry the ICAP transaction when its pconn fails. | 
| 2007/04/25 20:21:53 | rousskov | +1 -1 | If a consumer leaves without consuming anything, do not tell the producer | 
| 2007/04/25 20:12:39 | rousskov | +4 -4 | Added cbdataProtected parameter to control the last eventAdd parameter. | 
| 2007/04/23 20:06:32 | rousskov | +2 -6 | A failed ICAP RESPMOD transaction could leave the HTTP transaction stuck. | 
| 2007/04/23 16:23:43 | rousskov | +423 -205 | Bug #1819 fix, part 1: simplify ICAPInitiator-ICAPXaction link. | 
| 2007/04/21 03:50:28 | rousskov | +9 -10 | Make sure the entire response body gets to ICAP, even when the end of it | 
| 2007/04/23 16:23:43 | rousskov | +423 -205 | Bug #1819 fix, part 1: simplify ICAPInitiator-ICAPXaction link. | 
| 2007/04/21 03:50:28 | rousskov | +9 -10 | Make sure the entire response body gets to ICAP, even when the end of it | 
| 2007/04/21 03:50:28 | rousskov | +9 -10 | Make sure the entire response body gets to ICAP, even when the end of it | 
| 2007/04/03 16:54:38 | rousskov | +7 -1 | FtpStateData::parseListing() could not handle an empty content buffer. The | 
| 2007/04/03 15:10:32 | rousskov | +4 -3 | - Call storeEntry()->complete() when ending request satisfaction. | 
| 2007/03/21 20:05:14 | rousskov | +31 -38 | - Removed unreachable code after the doIcap() call. The latter never | 
| 2007/03/21 16:21:51 | rousskov | +52 -5 | Copy client-specific request meta-information such as request flags and | 
| 2007/03/08 22:10:35 | rousskov | +1 -1 | - Make GCC3 happy with printf arguments. | 
| 2007/03/08 22:09:35 | rousskov | +32 -18 | - setConsumer is now setConsumerIfNotLate and may fail if the body pipe has | 
| 2007/03/08 22:05:31 | rousskov | +4 -4 | - Use auto-consumption feature to consume data from closing connections for | 
| 2007/03/08 22:03:28 | rousskov | +36 -4 | - BodyPipe is used to read request bodies, including requests for which | 
| 2007/03/08 05:24:22 | rousskov | +3 -1 | - BodyPipe::status() is using a static buffer and, hence, can only be called | 
| 2007/03/08 05:23:09 | rousskov | +4 -0 | - When appending body data, do not append more than the known body size. | 
| 2007/02/20 16:22:30 | rousskov | +87 -122 | - Fixed ieof condition detection. Squid was sending last-chunk without ieof | 
| 2007/02/20 16:04:28 | rousskov | +9 -2 | - Added an expectMoreAfter() method to allow consumers to detect EOF | 
| 2007/02/14 22:52:30 | rousskov | +8 -5 | - When sending last-chunk in Preview, send ieof extension if we wrote | 
| 2007/02/14 07:26:54 | rousskov | +18 -22 | - Synced after deleting BodyReader, ClientBody, MsgPipe*, ICAPClient*, | 
| 2007/02/20 16:22:30 | rousskov | +87 -122 | - Fixed ieof condition detection. Squid was sending last-chunk without ieof | 
| 2007/02/20 16:04:28 | rousskov | +9 -2 | - Added an expectMoreAfter() method to allow consumers to detect EOF | 
| 2007/02/14 22:52:30 | rousskov | +8 -5 | - When sending last-chunk in Preview, send ieof extension if we wrote | 
| 2007/02/14 07:26:54 | rousskov | +18 -22 | - Synced after deleting BodyReader, ClientBody, MsgPipe*, ICAPClient*, | 
| 2007/02/14 07:20:53 | rousskov | +2 -2 | - body_reader is now body_pipe. | 
| 2007/02/14 07:19:43 | rousskov | +283 -391 | - WARNING: The changes below are significant and probably introduce new | 
| 2007/02/14 07:00:44 | rousskov | +103 -45 | - Support asynchronous transaction start. This allows for a better | 
| 2007/02/14 06:49:37 | rousskov | +23 -21 | - The minimum options update gap (currently hard-coded) must be smaller than | 
| 2007/02/14 06:44:28 | rousskov | +10 -8 | - Polished TTL handling to make sure we use the default TTL when the ICAP | 
| 2007/02/14 06:40:45 | rousskov | +61 -59 | - Use asynchronous start and swan song methods that are now supported by | 
| 2007/02/14 06:35:56 | rousskov | +1 -4 | - Buffer size constants are now maintained by BodyPipe. | 
| 2007/02/14 06:35:06 | rousskov | +4 -4 | - Do not use .getRaw() if possible. | 
| 2007/02/14 06:33:45 | rousskov | +771 -624 | - WARNING: The changes below are significant and probably introduce new | 
| 2007/02/14 06:10:21 | rousskov | +444 -313 | - Use BodyPipe instead of MsgPipe for receiving virgin and sending | 
| 2007/02/14 05:43:12 | rousskov | +60 -0 | - Added ICAPInitiator interface that classes initiating ICAP | 
| 2007/02/14 05:26:43 | rousskov | +0 -1145 | - Deleted MsgPipe and related classes. Message pipes had two purposes: | 
| 2007/02/14 04:48:10 | rousskov | +17 -11 | - Moved HttpRequest::body_reader to HttpMsg::body_pipe so that all HTTP | 
| 2007/02/14 04:46:06 | rousskov | +0 -141 | - Removed ClientBody as unused, replaced by BodyReader, then BodyPipe. | 
| 2007/02/14 04:44:10 | rousskov | +470 -218 | - Replaced BodyReader with BodyPipe. BodyReader was a collection of | 
| 2007/02/14 04:40:01 | rousskov | +139 -0 | - Added basic support for asynchronous calls. The calls are implemented | 
| 2007/02/14 02:30:55 | rousskov | +14 -1 | - Support printing refcounted pointers to ostreams. When printing, | 
| 2007/01/29 17:53:00 | rousskov | +14 -6 | - When informing ClientHttpRequest that we are done, do not stop() because | 
| 2007/01/29 17:34:22 | rousskov | +18 -5 | - When destroying ClientHttpRequest, if ICAPClientReqmodPrecache expects | 
| 2007/01/29 16:45:54 | rousskov | +3 -0 | - Added debugging. | 
| 2007/01/27 05:59:40 | rousskov | +13 -16 | - Fixed HttpStateData memory leak visible when no RESPMOD services are | 
| 2006/12/14 05:17:52 | rousskov | +85 -16 | - Added icap_service_failure_limit squid.conf option. The limit | 
| 2006/12/14 00:21:54 | rousskov | +4 -3 | - Do not reset Preview size to zero when expecting a virgin body of unknown | 
| 2006/11/03 15:54:55 | rousskov | +26 -13 | - Polished debugging to help track reasons why Squid marks a service "down". | 
| 2006/10/30 18:18:48 | rousskov | +14 -15 | - Fixed and simplified up/down status reporting by remembering the last | 
| 2006/10/26 06:07:18 | rousskov | +27 -20 | - Polished service selection code to avoid two findFirstService calls in | 
| 2006/10/26 05:40:53 | rousskov | +4 -1 | - Added a comment on how the doIcap-related code should be reorganized | 
| 2006/10/26 05:38:52 | rousskov | +32 -24 | - Renamed doIcap to startIcap and moved more common code there. Changed its | 
| 2006/10/26 05:25:15 | rousskov | +12 -7 | - Do not skip essential services that want the URL, even if they are broken, | 
| 2006/10/26 05:20:12 | rousskov | +2 -2 | - Polished waiting-for-service-probe preconditions. | 
| 2006/10/25 23:06:46 | rousskov | +14 -3 | - Notify ICAP service of connection failures using the newly added | 
| 2006/10/25 23:06:15 | rousskov | +70 -22 | - When ICAP transactions fail to connect to the service many times, the | 
| 2006/10/25 22:22:44 | rousskov | +2 -2 | - Use validated_cbdata when calling back after validating callback_data. | 
| 2006/10/25 17:45:00 | rousskov | +7 -2 | - Ignore broken services. There is no point in contacting them until they | 
| 2006/10/25 17:43:52 | rousskov | +70 -14 | - Distinguish ICAP services that are down because they have not been contacted | 
| 2006/10/25 04:58:05 | rousskov | +54 -35 | - When selecting a matching ICAP class before performing asynchronous | 
| 2006/10/25 04:57:03 | rousskov | +23 -16 | - Supply HTTP request URL path to the ICAP service when figuring out | 
| 2006/10/25 04:56:34 | rousskov | +13 -14 | - Whether a service wants a preview now depends on the HTTP request URL | 
| 2006/10/25 04:55:33 | rousskov | +141 -123 | - Rewrote parsing, storage, and querying of "transfer lists". Each list | 
| 2006/10/25 04:21:33 | rousskov | +4 -0 | - Dump raw OPTIONS response when debugging. | 
| 2006/10/24 14:16:41 | rousskov | +2 -4 | - Replaced assertion with Must() and polished parseHead() comment. | 
| 2006/10/19 06:12:56 | rousskov | +27 -2 | - Make sure there is an accept callback when we are accepting. | 
| 2006/10/18 23:35:41 | rousskov | +4 -4 | - Raised debugging level after discovering that the "cannot send body data to | 
| 2006/10/18 23:31:36 | rousskov | +3 -12 | - Removed temporary "debugs(0,0,HERE)" debugging. | 
| 2006/10/18 21:44:59 | rousskov | +6 -7 | - Do not assert that "size" does not become zero in clientReadBody. The size | 
| 2006/10/09 17:32:00 | rousskov | +21 -2 | - Close or recycle the ICAP connection when it is no longer needed, even if | 
| 2006/10/07 05:19:40 | rousskov | +15 -6 | - When canceling pending comm_read does not seem to work out (how can one | 
| 2006/10/07 05:14:53 | rousskov | +23 -9 | - Do not tell the owner to finish adaptation until we are done sending virgin | 
| 2006/10/07 05:08:58 | rousskov | +6 -3 | - Polished debugging. | 
| 2006/10/07 05:07:18 | rousskov | +1 -0 | - Added a comment to explain how ICAPClientReqmodPrecache vector is deleted. | 
| 2006/10/07 05:05:55 | rousskov | +43 -18 | - When a server wants to abort ICAP adaptation while being called by the ICAP | 
| 2006/10/07 04:53:11 | rousskov | +5 -2 | - Call ownerAbort() before deleting icap helper so that it can inform/abort | 
| 2006/10/06 20:03:37 | rousskov | +10 -9 | - When cloning a request during an ICAP 204 "No Content" REQMOD response, | 
| 2006/10/06 17:53:48 | rousskov | +28 -28 | - Removed tabs. Argh! | 
| 2006/10/06 17:05:03 | rousskov | +11 -7 | - Accept NULL cause as valid (for REQMOD). | 
| 2006/10/06 17:03:25 | rousskov | +69 -66 | - Rewrote the code updating ICAP service options. We no longer mark the | 
| 2006/10/06 16:51:36 | rousskov | +11 -1 | - Catch exceptions that the OPTIONS transaction may throw when it starts. This | 
| 2006/10/06 16:48:08 | rousskov | +4 -3 | - Check that the ICAP service is "up" when we receive notification, not when | 
| 2006/10/06 16:43:03 | rousskov | +343 -372 | - Merged common code from the ICAPClientReqmodPrecache and | 
| 2006/10/06 16:26:15 | rousskov | +73 -74 | - Rewrote communication between a server-side ICAPClient*mod* vector | 
| 2006/10/04 19:34:04 | rousskov | +16 -16 | - Polished debug sections, level, and content of ICAP debug messages. | 
| 2006/10/04 18:09:35 | rousskov | +18 -18 | - Replaced tabs with spaces. | 
| 2006/10/04 18:07:11 | rousskov | +1 -1 | - We have echoed all virgin data when there is no more coming and we have no | 
| 2006/10/04 18:00:33 | rousskov | +5 -0 | - When adapted data is consumed via takeAdaptedBody(), the | 
| 2006/10/04 05:00:23 | rousskov | +25 -5 | - Comm maintains a single timeout per file descriptor so we cannot maintain | 
| 2006/10/03 22:38:52 | rousskov | +1 -0 | - Forgot to return from a switch case. | 
| 2006/10/03 22:21:30 | rousskov | +2 -6 | - Removed misplaced level-1 debugging. | 
| 2006/10/03 22:14:53 | rousskov | +8 -7 | - Allow for multiple calls to mustStop() because we might signal a stop and | 
| 2006/10/03 22:05:00 | rousskov | +11 -2 | - Do not schedule a time-based update of ICAP options if such an update | 
| 2006/10/03 19:53:07 | rousskov | +9 -5 | - When an exception is caught, mark the ICAP connection as non-reusable so | 
| 2006/10/03 19:46:01 | rousskov | +34 -17 | - Stop writing ICAP primary body not when we received everything but when we | 
| 2006/10/03 18:17:52 | rousskov | +1 -1 | - Fixed comment. | 
| 2006/10/03 16:18:03 | rousskov | +3 -3 | - Spellchecked writable. | 
| 2006/10/03 05:24:00 | rousskov | +1 -0 | - Added Tsantilas Christos <chtsanti@users.sourceforge.net> for fixing | 
| 2006/10/03 04:51:32 | rousskov | +2 -1 | - After ICAP 100 Continue, expect new ICAP headers instead of HTTP headers. | 
| 2006/10/03 04:43:52 | rousskov | +11 -13 | - The ieof HTTP chunk-extension was written after chunk-data instead of being | 
| 2006/10/03 04:24:34 | rousskov | +11 -7 | - When detecting the end of the virgin data while maintaining Preview-related | 
| 2006/10/03 03:50:29 | rousskov | +4 -2 | - Initialize pstate to psReadyToParseStartLine when initializing a message. | 
| 2006/10/03 00:18:58 | rousskov | +6 -8 | - We were deleting the "icap" data member and then calling | 
| 2006/10/02 23:02:18 | rousskov | +4 -1 | - Call parent fill*Status() methods to get complete status lines. | 
| 2006/09/30 05:08:06 | rousskov | +2 -2 | - Fixed ICAPXaction_noteCommWrote() profile to match that of IOCB | 
| 2006/09/29 23:15:14 | dwsquid | +25447 -3299 | syncing with HEAD | 
| 2005/11/21 21:23:38 | dwsquid | +3 -2 | late commit for ICAP code reorg | 
| 2005/11/21 21:05:50 | dwsquid | +5415 -5269 | Reorganized ICAP code -- moved to src/ICAP subdirectory and renamed | 
| 2005/11/08 19:52:16 | dwsquid | +0 -3 | Remove some level-0 debugging | 
| 2005/11/07 21:22:52 | dwsquid | +2 -2 | Don't use a local variable for HttpReply that conflicts with | 
| 2005/11/07 20:26:11 | dwsquid | +48 -59 | fixes and cleanup after merging HttpReply objectification changes from HEAD. | 
| 2005/11/04 20:29:06 | dwsquid | +2 -59 | Remove old, unused references to the ICAPAccess class. | 
| 2005/11/04 20:10:20 | dwsquid | +3 -3 | bug: | 
| 2005/11/04 00:21:34 | dwsquid | +53 -35 | Move methodStr() and vectPointStr() to ICAPElements so we can use them | 
| 2005/11/04 00:20:31 | dwsquid | +38 -8 | Fix up ACL checking stuff.  It works better to break deep call chains | 
| 2005/11/03 21:38:33 | dwsquid | +20 -1 | Added "shift" method (as from Perl) for Array class | 
| 2005/11/03 21:36:45 | dwsquid | +180 -100 | These changes make ICAP actually call ACL functions as given by | 
| 2005/11/03 00:28:58 | dwsquid | +17 -14 | In ICAPOptXact::parseResponse(), the HttpReply must be allocted from | 
| 2005/10/21 23:36:33 | dwsquid | +12 -2 | Make icapAclCheckDone() handle the case when there is no ICAP service | 
| 2005/10/17 23:38:14 | rousskov | +3 -1 | - Added boolean negation operator to be able to write "if (!pointer)". | 
| 2005/10/17 23:35:39 | rousskov | +3 -3 | - If a dirty non-stolen buffer is deleted, clean it instead of asserting that | 
| 2005/10/17 23:30:37 | rousskov | +320 -50 | - Obtain ICAP options using ICAPOptXact. This is done when no options | 
| 2005/10/17 23:19:48 | rousskov | +129 -268 | - Rewrote most of the code: Reused existing Squid parsing code. Merged | 
| 2005/10/17 23:15:49 | rousskov | +19 -16 | - Use ICAP::* types and constants from ICAPElements instead of | 
| 2005/10/17 23:11:42 | rousskov | +9 -12 | - Use ICAP::* types and constants from ICAPElements instead of | 
| 2005/10/17 22:58:29 | rousskov | +1771 -2065 | - Big change: Split ICAPXaction into ICAPXaction, ICAPModXact, and ICAPOptXact | 
| 2005/10/17 22:39:13 | rousskov | +11 -10 | - Use ICAP::* types and constants from ICAPElements instead of | 
| 2005/10/17 22:34:13 | rousskov | +61 -1 | - Added ICAPElements to encapsulated common trivial types and constants used | 
| 2005/10/11 22:28:12 | rousskov | +7 -1 | - echoMore() was not called in noteSourceFinish(), causing | 
| 2005/10/11 22:00:20 | rousskov | +220 -216 | - Simplified virgin content handling by splitting the overly complex | 
| 2005/10/10 16:59:25 | rousskov | +12 -28 | - Do not send last-chunk when no body was expected (and, hence, when | 
| 2005/10/07 23:11:38 | rousskov | +424 -164 | - Fixed support for ICAP 200 responses and for 204s outside of Preview. | 
| 2005/10/07 22:40:54 | rousskov | +6 -1 | - Added debugging. | 
| 2005/10/06 05:31:26 | rousskov | +94 -22 | - Revised ICAP parsing code to accomodate 100 and 204 responses. | 
| 2005/10/06 05:25:21 | rousskov | +3 -0 | - Assume that ICAP server does not want Preview by default, that is until | 
| 2005/10/05 22:34:56 | rousskov | +432 -42 | - Wrote initial support for ICAP Preview and 204s. Squid will try to | 
| 2005/10/05 22:30:03 | rousskov | +4 -2 | - Added const version of the content() method. | 
| 2005/10/05 22:24:28 | rousskov | +20 -1 | - Added wantsPreview() method to report whether the service supports Preview | 
| 2005/10/05 18:02:08 | rousskov | +2 -1 | - added TODO notes. | 
| 2005/10/05 17:46:57 | rousskov | +5 -5 | - Added a note that icap_access_check is not leaking here and will delete self. | 
| 2005/10/04 04:25:09 | rousskov | +1 -1 | - Added space after "Encapsulated:", to better match the "usual" header format. | 
| 2005/10/03 23:28:43 | dwsquid | +4 -2 | astyle | 
| 2005/10/03 23:27:57 | dwsquid | +1 -3 | Add a comment to ::parseHead() | 
| 2005/10/03 23:26:16 | dwsquid | +8 -1 | Try to clean up state if we encounter an ICAP header parsing error | 
| 2005/10/03 17:52:01 | dwsquid | +18 -2 | Fix the service-not-found case in ClientRequestContext::icapAclCheckDone() | 
| 2005/10/03 17:48:29 | dwsquid | +10 -7 | ICAPAccessCheck needs to always make the callback, even when there is | 
| 2005/10/03 16:31:12 | dwsquid | +10 -1 | ICAPXaction::expectVirginBody() needs to work with REQMOD where | 
| 2005/10/03 16:24:41 | dwsquid | +2 -2 | sigh, out-of-order code on last commit | 
| 2005/10/03 16:23:06 | dwsquid | +3 -1 | icapAclCheckDoneWrapper() needs a cbdata check | 
| 2005/10/03 16:10:01 | dwsquid | +67 -20 | Added icap access check to REQMOD processing | 
| 2005/10/03 15:49:56 | dwsquid | +3 -3 | Dont see why icap_access_check needs to be a member of HttpStateData | 
| 2005/10/01 05:53:51 | dwsquid | +4 -1 | Fix leak of HttpReply from HttpStateData.  This is a little bit tricky | 
| 2005/10/01 05:48:37 | dwsquid | +40 -32 | Make a proper destructor (and constructor) for HttpStateData | 
| 2005/10/01 05:09:11 | dwsquid | +55 -55 | rename 'leaky' to 'MsgPipeLeaker' | 
| 2005/10/01 04:57:08 | dwsquid | +2 -23 | We no longer need icapMethod() | 
| 2005/10/01 04:54:09 | dwsquid | +5 -3 | protect HttpStateData::icapAccessCheckPending inside ICAP_CLIENT #ifdefs | 
| 2005/10/01 04:30:59 | dwsquid | +8 -2 | Added 'state.wroteHeaders' to ICAPXaction.  After eventAdd() fix, | 
| 2005/10/01 03:39:15 | dwsquid | +1 -1 | MsgPipe events should have weight=0.  Looks like a bug enabled by | 
| 2005/09/30 22:57:21 | dwsquid | +7 -12 | Move clientInterpretRequestHeaders call to doCallouts().  Call it when | 
| 2005/09/30 22:11:13 | dwsquid | +2 -1 | Forgot to delete ICAPAccessCheck after callback | 
| 2005/09/30 21:58:14 | dwsquid | +4 -0 | handle NULL virgin->data->header in expectVirginBody() | 
| 2005/09/30 21:57:15 | dwsquid | +3 -5 | change some debug(0,0)'s | 
| 2005/09/30 20:58:11 | dwsquid | +44 -30 | Mostly just debugging changes and comments. | 
| 2005/09/30 16:26:08 | dwsquid | +1 -9 | takeAdapatedHeaders() should no longer destroy the virgin reply | 
| 2005/09/29 22:56:59 | dwsquid | +77 -5 | Added an expectingBody() method.  Return type is boolean.  theSize | 
| 2005/09/29 22:23:09 | dwsquid | +2 -2 | bug: 'len' undefined here, use contentSize() instead. | 
| 2005/09/29 21:41:29 | dwsquid | +3 -3 | Bug: body_bytes_read was only updated for non-ICAP case.  It needs to | 
| 2005/09/29 21:39:42 | dwsquid | +9 -7 | astyle | 
| 2005/09/29 18:00:44 | dwsquid | +231 -85 | Starting to make ICAP service selection work with icap_access configuration | 
| 2005/09/29 05:17:21 | rousskov | +42 -36 | - Initialized commBuf and bodyParser. | 
| 2005/09/28 21:47:55 | dwsquid | +1 -4 | http_state_flags::headers_pushed is no longer needed | 
| 2005/09/28 21:47:23 | dwsquid | +88 -110 | somewhat significant changes to http reply reading.  Removed char | 
| 2005/09/28 20:36:31 | dwsquid | +1 -3 | reply_hdr will already be terminated by the call to reply->parse() | 
| 2005/09/28 20:29:50 | dwsquid | +9 -20 | Fix some bugs in processReplyHeader() | 
| 2005/09/28 20:27:44 | dwsquid | +10 -10 | cosmetic: renaming HttpStateData's body_buf to request_body_buf to | 
| 2005/09/28 19:53:20 | dwsquid | +6 -6 | cosmetic: in debugging messages change httpProcessReplyHeader to | 
| 2005/09/27 23:10:53 | dwsquid | +9 -4 | Fix code logic around doIcap() call.  Need to call ctx_exit before return | 
| 2005/09/27 20:40:57 | dwsquid | +336 -285 | Use the (external) ICAPServiceRep class in ICAPConfig | 
| 2005/09/27 15:38:51 | dwsquid | +4 -4 | Allow us to use leakfinder macros and still compile when leakfinder is | 
| 2005/09/27 15:32:07 | dwsquid | +91 -53 | ran astyle | 
| 2005/09/27 15:22:39 | dwsquid | +462 -0 | These are for ICAP config and directive parsing | 
| 2005/09/27 15:18:03 | dwsquid | +251 -18 | Add ICAP directives to squid.conf | 
| 2005/09/26 04:31:42 | rousskov | +2 -2 | - Renamed WHEN_SQUID_IS_NOT_HTTP1_1 to WHEN_SQUID_IS_HTTP1_1 to better | 
| 2005/09/24 18:19:23 | dwsquid | +41 -0 | Moved this class definition out of client_side_request.cc into its | 
| 2005/09/24 05:42:34 | rousskov | +4 -0 | - Applied astyle. | 
| 2005/09/24 05:39:30 | rousskov | +8 -7 | - Made icapMethod() constant and polished it. | 
| 2005/09/24 05:30:34 | rousskov | +6 -6 | - Renamed sendingABody() to expectVirginBody() to avoid a mismatch with | 
| 2005/09/24 05:14:52 | rousskov | +3 -1 | - Added comments. | 
| 2005/09/24 04:51:59 | rousskov | +1 -1 | - ICAPXaction tries to throw exceptions (explicitly or via Must()) | 
| 2005/09/23 23:11:58 | dwsquid | +33 -3 | We need two read buffers.   We would prefer to read directly | 
| 2005/09/23 23:08:49 | dwsquid | +2 -1 | clear valid flag in destructor | 
| 2005/09/21 20:36:07 | dwsquid | +15 -15 | We are now hooked into ClientHttpRequest instead of ClientRequestContext | 
| 2005/09/21 20:34:30 | dwsquid | +49 -38 | astyle | 
| 2005/09/21 20:33:37 | dwsquid | +236 -147 | A semi-significant rearrangement of the way that client_side does | 
| 2005/09/21 18:49:53 | dwsquid | +2 -1 | Need to include MemBuf.h | 
| 2005/09/21 14:38:14 | audrus | +26 -7 | *** empty log message *** | 
| 2005/09/20 15:16:01 | audrus | +770 -0 | *** empty log message *** | 
| 2005/09/19 20:51:42 | dwsquid | +13 -6 | astyle | 
| 2005/09/19 20:48:33 | dwsquid | +16 -6 | Fixed a memory leak | 
| 2005/09/19 18:00:09 | dwsquid | +316 -101 | A bunch of fixes for client-side REQMOD | 
| 2005/09/19 17:32:34 | dwsquid | +1 -3 | There is (will be) no virtual bool() implementation in this class | 
| 2005/09/19 16:16:29 | dwsquid | +39 -39 | Make this server-side work when ICAP_CLIENT is defined, but when | 
| 2005/09/18 04:12:42 | dwsquid | +43 -39 | membuf merge fixes | 
| 2005/09/12 23:06:29 | dwsquid | +96 -58 | /usr/local/bin/astyle -cs4 -O --break-blocks -l | 
| 2005/09/12 15:40:19 | audrus | +384 -0 | *** empty log message *** | 
| 2005/09/10 03:59:09 | dwsquid | +82 -61 | Ran astyle ... | 
| 2005/09/08 20:14:44 | dwsquid | +318 -3 | Beginning to add reqmod support | 
| 2005/09/08 07:40:15 | rousskov | +4 -4 | - Use the newly added HttpMsg instead of a more specific HttpReply to | 
| 2005/09/08 07:35:37 | rousskov | +39 -41 | - Synced after moving parts common to HttpReply and HttpRequest to HttpMsg. | 
| 2005/09/08 07:32:01 | rousskov | +5 -1 | - Synced after moving parts common to HttpReply and HttpRequest to HttpMsg. | 
| 2005/09/08 07:29:41 | rousskov | +171 -60 | - Moved parts common to HttpReply and HttpRequest to HttpMsg. HttpMsg is | 
| 2005/09/02 15:48:12 | rousskov | +3 -1 | - Continue the "When is it safe to cancel a read callback?" guessing game with | 
| 2005/09/02 15:27:07 | rousskov | +8 -14 | - Made requestBuf a local variable so that we do not have to figure out | 
| 2005/09/02 15:23:56 | dwsquid | +7 -4 | don't really need to include MsgPipe*.h in MsgPipe.h | 
| 2005/09/01 23:26:54 | dwsquid | +4 -4 | fix the mem_node leak | 
| 2005/09/01 22:56:02 | dwsquid | +7 -6 | When USE_LEAKFINDER is not defined, define an empty LeakFinder | 
| 2005/09/01 22:55:04 | dwsquid | +36 -13 | Rearrange leakfinder calls.  Move add/delete to MsgPipe constructors | 
| 2005/09/01 21:00:46 | rousskov | +21 -8 | - Do not assume that parsing can suspend only due to lack of input data. | 
| 2005/09/01 20:58:10 | rousskov | +20 -7 | - Handle a full output buffer by suspending parsing. The caller should | 
| 2005/09/01 18:36:03 | dwsquid | +26 -11 | Two bugfixes: | 
| 2005/09/01 17:32:00 | rousskov | +6 -10 | - Resurrected setting state.isReading to NULL if we cleared the callback | 
| 2005/09/01 16:44:45 | dwsquid | +2 -2 | Since merging with HEAD, comm_old_write_mbuf now takes MemBuf * | 
| 2005/09/01 16:12:59 | dwsquid | +13 -3 | Fix an assertion triggered by a client abort.  We don't really need | 
| 2005/08/31 20:03:39 | dwsquid | +128 -85 | fixed ICAP-related memory leaks and other bugs.  Note that MsgPipe | 
| 2005/08/31 20:02:22 | dwsquid | +3 -1 | need to cbdataReferenceDone() the ident access list | 
| 2005/08/31 20:01:34 | dwsquid | +6 -1 | don't report anything when there are no pointers being tracked | 
| 2005/08/31 19:39:10 | dwsquid | +26 -17 | applied astyle | 
| 2005/08/26 23:33:25 | dwsquid | +30 -4 | Tracking down some memory leaks... | 
| 2005/08/26 23:32:41 | dwsquid | +189 -21 | convert leakfinder to class LeakFinder.  The old leakfinder.h should | 
| 2005/08/26 23:27:05 | dwsquid | +3 -3 | Two call-ordering bugs; | 
| 2005/08/26 23:25:59 | dwsquid | +2 -2 | Define a null destructor; | 
| 2005/08/26 20:28:41 | dwsquid | +1463 -1230 | apply /usr/local/bin/astyle -cs4 -O --break-blocks -l | 
| 2005/08/26 20:25:06 | dwsquid | +1 -2 | Remove assertion for offset in ::write | 
| 2005/08/26 20:24:13 | dwsquid | +2 -2 | increase debugging levels | 
| 2005/08/26 20:18:55 | dwsquid | +5 -6 | bug fixes from recent merge with HEAD | 
| 2005/08/26 16:16:12 | dwsquid | +7 -5 | note storeEntry offset madness in storeAppend | 
| 2005/08/25 22:09:00 | rousskov | +14 -5 | - Do not parse encapsulated HTTP response header if Encapsulated ICAP header | 
| 2005/08/25 21:52:28 | rousskov | +21 -8 | - Do not parse response body if there is not one according to the Encapsulated | 
| 2005/08/25 21:16:24 | rousskov | +5 -1 | - Buffer and then flush store when packing into store entry to avoid | 
| 2005/08/25 21:13:11 | rousskov | +8 -6 | - Do not try to unregister a close handler if that handler caused the | 
| 2005/08/25 21:11:33 | rousskov | +7 -3 | - Added assertions to catch negative memory offsets earlier. | 
| 2005/08/25 21:09:55 | rousskov | +10 -7 | - Went back to 'int' type for hdr_sz while we are trying to find the source | 
| 2005/08/25 20:51:26 | dwsquid | +89 -31 | Added methods and code so that HTTP-side can stop reading from the | 
| 2005/08/25 19:35:54 | dwsquid | +9 -9 | cosmetic: use FD %d instead of fd %d | 
| 2005/08/25 17:55:18 | rousskov | +7 -5 | - Calculate select loop timeout after all callbacks have been called because | 
| 2005/08/25 16:39:02 | dwsquid | +1 -17 | remove #if MSG_PIPE_USES_MEM_HDR | 
| 2005/08/24 23:34:23 | rousskov | +3 -2 | - Added a comment regarding possible reply leak at the top of | 
| 2005/08/24 22:50:29 | dwsquid | +37 -3 | - add StoreEntry::isAccepting() method to know if its okay to | 
| 2005/08/24 21:28:23 | dwsquid | +1 -5 | remove some assertions | 
| 2005/08/24 21:27:22 | dwsquid | +18 -14 | Convert HttpStateData->reply_hdr to a pointer so we can use new and | 
| 2005/08/24 21:26:17 | dwsquid | +15 -4 | Added a 'valid' flag to MemBuf for debugging memory corruption bugs | 
| 2005/08/24 21:10:49 | rousskov | +4 -9 | - Made sure writeBuf is initialized before we access hasContent(). | 
| 2005/08/24 21:07:29 | rousskov | +7 -2 | - Do not append more than virgin->data->body buffer can handle. | 
| 2005/08/24 20:36:36 | dwsquid | +5 -4 | move abortAdapting() call to the correct location | 
| 2005/08/24 19:13:07 | rousskov | +12 -3 | - Added potentialSpaceSize() to report how much space can be available | 
| 2005/08/24 19:08:44 | rousskov | +6 -2 | - Use min and max buffer sizes for ICAP message pipes as recommended by | 
| 2005/08/24 19:04:46 | rousskov | +1 -1 | - Use min and max buffer sizes for ICAP message pipes as recommended by | 
| 2005/08/24 18:59:05 | rousskov | +2 -2 | - Instead of recommending a fixed size (4KB) buffer, provide min (4KB) and max | 
| 2005/08/24 17:37:08 | dwsquid | +7 -7 | - Need to call adapted->sendSourceStart() in ICAPXaction::parseHeaders | 
| 2005/08/24 17:33:33 | dwsquid | +6 -7 | - Don't update or use currentOffset when sending data to the ICAP client. | 
| 2005/08/24 17:18:07 | rousskov | +2 -0 | - Forgot to call noteSourceStart. | 
| 2005/08/24 15:42:29 | dwsquid | +1 -1 | fix initialization ordering in constructor | 
| 2005/08/24 15:27:58 | rousskov | +5 -3 | - Consume adapted content after it was written to the store entry. | 
| 2005/08/24 15:15:20 | rousskov | +43 -12 | - Stop reading when we read everything we wanted so that the transaction | 
| 2005/08/24 15:13:16 | rousskov | +2 -2 | - Polished debugging. | 
| 2005/08/24 14:21:17 | rousskov | +1 -1 | - Encapsulated offsets use decimal integers, not hex (Ralf Horstmann) | 
| 2005/08/24 06:19:14 | rousskov | +198 -44 | - Initial implementation of HTTP encapsulation and ICAP parsing code. | 
| 2005/08/24 06:09:57 | rousskov | +9 -7 | - Accept protocol prefix when parsing status lines. | 
| 2005/08/24 06:06:08 | rousskov | +89 -10 | - Moved parsing state-detection logic common to any MIME-like protocol from | 
| 2005/08/24 05:58:28 | rousskov | +23 -55 | - Moved parsing state-detection logic common to any MIME-like protocol from | 
| 2005/08/24 05:47:12 | rousskov | +19 -2 | - Added StringToInt() wrapper around strtol. Returns the end of the parsed | 
| 2005/08/24 05:45:25 | rousskov | +2 -2 | - Polished comments. | 
| 2005/08/24 05:44:41 | rousskov | +2 -3 | - Made terminate() public because some HTTP parsing routines need it, | 
| 2005/08/24 05:43:31 | rousskov | +1 -1 | - fixed method name typo in debug(). | 
| 2005/08/24 05:39:22 | rousskov | +293 -1 | - Added ChunkedCodingParser, an incremental parser for chunked transfer coding | 
| 2005/08/23 23:17:53 | dwsquid | +49 -16 | - Added HttpStateData::abortAdapting() | 
| 2005/08/23 15:42:29 | rousskov | +60 -7 | - Added MsgPipeEnd to encapsulate common parts of the MsgPipeSource and | 
| 2005/08/23 15:36:54 | rousskov | +31 -18 | - When abort or finish messages are sent, set the source to NULL under | 
| 2005/08/20 06:18:37 | rousskov | +7 -7 | - Polished debugging messages. | 
| 2005/08/20 06:17:25 | rousskov | +27 -25 | - All messages were being rewritten as "SourceStart". Fixed. | 
| 2005/08/20 06:15:05 | rousskov | +89 -39 | - Guarded async note*() calls to catch exceptions, provide a single point | 
| 2005/08/20 06:09:03 | rousskov | +2 -2 | - Named MsgPipes to ease debugging. | 
| 2005/08/19 23:33:52 | rousskov | +6 -6 | - polished LOOPBACK/pipe->send() code separation | 
| 2005/08/19 23:16:24 | dwsquid | +61 -37 | ran astyle | 
| 2005/08/19 23:14:32 | dwsquid | +23 -23 | change debugging levels | 
| 2005/08/19 22:57:41 | dwsquid | +40 -22 | created a transactionComplete() method because there were too many | 
| 2005/08/19 22:56:36 | dwsquid | +7 -0 | put loopback testing calls inside #ifdefs | 
| 2005/08/19 22:35:12 | rousskov | +44 -7 | - Implemented send*() methods. The other end of the pipe is now notified, | 
| 2005/08/19 21:58:38 | dwsquid | +134 -111 | A reasonably stable state for ICAP progress.  This works for simple | 
| 2005/08/19 20:18:50 | rousskov | +4 -1 | - Added ICAPXaction, ICAPServiceRep, and TextException | 
| 2005/08/19 20:18:07 | rousskov | +68 -0 | - Added initial implementation of an exception that carries origin | 
| 2005/08/19 20:13:42 | rousskov | +72 -0 | - Added an ICAP service "representative" that maintains information about a | 
| 2005/08/19 20:11:55 | rousskov | +533 -0 | - Added ICAPXaction which receives virgin HTTP messages, communicates with the | 
| 2005/08/19 20:08:41 | rousskov | +3 -2 | - added hasContent() method | 
| 2005/08/19 20:07:41 | rousskov | +11 -6 | - made sure that cleaning a buffer that has not been initialized yet does | 
| 2005/08/19 20:05:43 | rousskov | +62 -150 | - renamed ICAPModule to ICAPClient because it sounded more appropriate | 
| 2005/08/18 22:41:00 | dwsquid | +141 -48 | update to HTTP <-> ICAP interaction | 
| 2005/08/18 05:14:33 | rousskov | +81 -21 | - Added consume() and append*() methods to allow the buffer to be used in a | 
| 2005/08/18 04:57:59 | rousskov | +4 -1 | - Added recommended initial size and max capacity for ICAP MsgPipe buffer, | 
| 2005/08/17 23:49:25 | dwsquid | +36 -14 | misc ICAP related changes/progress | 
| 2005/08/17 22:05:53 | dwsquid | +924 -0 | adding ERR_ICAP_FAILURE | 
| 2005/08/17 22:01:26 | dwsquid | +221 -70 | Rough outline of ICAP and related code changes.  This compiles and | 
| 2005/08/17 21:57:55 | rousskov | +2 -1 | - added destructor so that we do not forget to implement it if needed | 
| 2005/08/17 20:02:33 | rousskov | +178 -0 | - The ICAP Anchor implements message pipe sink and source interfaces.  It | 
| 2005/08/17 19:55:55 | rousskov | +49 -0 | - ICAPModule collects public ICAP interfaces for use by Squid code that is | 
| 2005/08/17 19:52:46 | rousskov | +256 -0 | - Added a mostly protocol-agnostic unidirectional "message pipe" to allow | 
| 2005/08/16 17:19:48 | dwsquid | +14 -2 | Add --enable-icap-client option | 
| 2005/08/16 17:19:12 | dwsquid | +14 -1 | Adding ICAP hooks to reply processing | 
| 2005/08/16 17:18:54 | dwsquid | +12 -1 | Adding ICAP source files | 
| 2005/08/16 17:18:20 | dwsquid | +61 -0 | adding |