]> git.ipfire.org Git - thirdparty/squid.git/blame - ChangeLog
removed mysterious tabs
[thirdparty/squid.git] / ChangeLog
CommitLineData
9f802cb1 1Changes to squid-1.2.beta11 (Jan 6, 1998):
2
fd82d0b0 3 - Fixed fake 'struct rusage' definition which prevented compling
4 on Solaris 2.4.
5 - Fixed copy-by-ref bug for request->headers in
6 clientRedirectDone() (Michael O'Reilly).
812db943 7 - Workaround for Solaris pthreads closing FD 0 upon fork()
8 (Michael O'Reilly).
05fd71a7 9 - Fixed shutdown bug with outgoing UDP sockets; we need to
10 disable their read handlers.
11 - For comm_poll(), use the fast 50 msec timeout only when
12 USE_ASYNC_IO is defined.
1fbc6de3 13 - Fixed pointer bug when freeing AS# ACL entries.
14 - Fixed forgetting to reset Config.npeers to zero in free_peer().
0f6bdbfa 15 - Fixed ICP bug causing excessive TIMEOUTs with sibling
16 neighbors. We must call the ICP reply callback even for
17 sibling misses.
18 - Fixed some dnsserver-related reconfigure bugs. Need to
19 use cbdataLock, etc in fqdncache.c. Also don't want to
20 use ipcacheQueueDrain() and fqdncacheQueueDrain().
21 - Fixed persistent connection bug. We were incorrectly
22 deciding that non-200 replies without content-length
23 would not have a reply body.
24 - Fixed intAverage() precedence bug.
25 - Fixed memmove() 'len' arg bug.
26 - Changed algorithm for determining alive/dead state of peers.
27 Instead of using a fixed number of unacknowledged ICP
28 replies, it is now based on timeouts. If there are no ICP
29 replies received from a peer within 'dead_peer_timeout'
30 seconds, then we call it dead.
31 - Added calls to getCurrentTime() in
32 comm_{select,poll}_incoming() when ALARM_UPDATES_TIME is not
33 being used.
34 - Fixed shutdown bug when the incoming and outgoing ICP socket
35 is the same file descriptor.
e970f357 36 - Added buffered writes for storeWriteCleanLogs() (Stewart
37 Forster).
38 - Patches for Qnx4 (Jean-Claude MICHOT).
39 - Fixed returning void functions which seems to be a GCC-ism.
e5f4e1b0 40 - New configure script options (Henrik Nordstrom):
41 --enable-new-storekey=[sha|md5(|url)] (was --enable-hashkey)
42 --enable-acltree
43 --enable-icmp
44 --enable-delay-hack
45 --enable-useragent-log
46 --enable-kill-parent (this should be named -hack)
47 --enable-snmp
48 --enable-time-hack
49 --enable-cachemgr-hostname[=hostname] (new)
50 --enable-arp-acl (new)
51 - Added Doug Lea malloc-2.6.4 to the distribution, so that
52 people easily can try a decent malloc package if they syspect
53 their malloc is broken. --enable-dlmalloc (Henrik Nordstrom).
54 - Made XMALLOC_DEBUG_COUNT working again. Requires a small stub
55 function (Henrik Nordstrom).
56 - Removed top-level Makefile. People must now run 'configure'
57 before 'make'.
714ace98 58 - Fixed checkFailureRatio() implementation.
82b3c7d9 59 - Made 'squid -z' behave like the 1.1 version.
e5f4e1b0 60
fd82d0b0 61
ab9a3f7e 62Changes to squid-1.2.beta10 (Jan 1, 1998):
63
64 - Fixed content-length bugs for 204 replies, 304 replies,
65 and HEAD requests (Henrik Nordstrom).
66 - Fixed errorAppendEntry() bug in gopherReadReply().
67 - Basic support for FTP URL typecodes (;type=X).
9c965c1b 68 - Support for access controls based on ethernet MAC addresses
ab9a3f7e 69 (Dale).
70 - Initial URN support; see
71 http://squid.nlanr.net/Squid/urn-support.html
72 - Fixed client-side persistent connections for objects with
73 bad content lengths (Henrik Nordstrom).
74 - Fixed bad call to storeDirUpdateSwapSize() for objects which
75 never reach SWAPOUT_DONE state.
68e3a9df 76 - Fixed up poll() #defines in squid.h (Stewart Forster).
77 - Changed poll() timeout from 1000 msec to 50 msec for
78 better performance under low load (Stewart Forster).
e7a1fde6 79 - Changed storeWriteCleanLogs() to write objects in the LRU
80 list order instead of the random hash table order.
109ff6af 81 - Fixed FTP bug when data socket connections fail or timeout.
82 - Reuse FTP data connection when possible (Henrik Nordstrom).
83 - Added configure options (Henrik Nordstrom)
84 --enable-store-key=sha|md5
85 --enable-xmalloc-statistics
86 --enable-xmalloc-debug
78743365 87 --enable-xmalloc-debug-count
88 --async-io
109203bf 89 - Fixed confusing with the use/meaning of ERR_CANNOT_FORWARD
90 by creating ERR_FORWARDING_DENIED and changing the
91 content of the ERR_CANNOT_FORWARD text.
4e9c07c1 92 - Fixed pipeline request bug from using strdup() (Henrik
93 Nordstrom).
94 - Call clientReadRequest() directly instead of commSetSelect()
95 for pipelined requests (Henrik Nordstrom).
1b02b5be 96 - Fixed 4k page leak in icpHandleIMSReply();
97 - Renamed 'icp*' functions to 'client*' names in client_side.c.
e7a1fde6 98
b90a0f8d 99Changes to squid-1.2.beta8 (Dec 2, 1997):
100
eae03fc8 101 - Fixed accessLogLog() to log ident from Proxy-Authorization
102 request header (BoB Miorelli).
226f9ba2 103 - Fixed #includes, prototypes, etc. in SNMP source files.
104 - Moved 'POLLRDNORM' and 'POLLWRNORM' macro checks from
105 include/config.h.in to src/squid.h
106 - Moved 'num32' typedefs from src/typedefs.h to
107 include/config.h.in.
108 - Moved snmplib/md5.c to lib/md5.c.
109 - Added MD5 cache key support.
110 - Removed xmalloc() return check in uudeocde.c
111 - Added 'ifdef' support to cf_gen.c for optional code (e.g. SNMP)
112 - Changed 'client' program to provide easier cache manager access,
113 e.g.: 'client mgr:info'
114 - Fixed 'client' to send 'Connection' instead of 'Proxy-Connection'
115 for simulated keep-alive requests.
116 - Removed 'fd' arg from clientProcess* functions.
9e3468d5 117 - Fixed bugs from using errorSend() on persistent/pipelined
226f9ba2 118 client connections. A latter request should not be allowed to
119 write to the client fd until the current request completes.
120 Now use errorAppendEntry() for such situations.
121 - Fixed content-length bugs. We were using content-length == 0
122 to also indicate a lack of content-length reply header. But
123 'content-length: 0' might appear in a reply, so now use -1 to
124 indicate that no content length given.
125 - Split up clientProcessRequest() into smaller chunks so it
126 might be easier to follow.
127 - renamed various client_side.c functions to start with 'client'
128 instead of 'icp'.
129 - Fixed a 'cbdata leak' from the comm.c close handlers.
130 - Fixed a 'cbdata leak' from the comm.c connect routines.
131 - Fixed comm_select() and comm_poll() to stop looping on the
132 incoming HTTP/ICP sockets. If there are fewer than 7 FD's
133 ready for I/O, the incoming sockets might not get service, so
134 comm_select() would be called for up to 7 times until the
135 'incoming_counter' was incremented enough to trigger a call
136 to comm_select_incoming(). Now we make sure
137 comm_select_incoming() gets called if select returns less
138 than 7 ready FD's.
9e3468d5 139 - Added errorpage '%B' token to generate FTP URLs with a '%2f'
140 inserted at the start of the url-path. calls ftpUrlWith2f().
141 (Henrik Nordstrom).
226f9ba2 142 - Changed fqdncache.c to use LRU double-linked list instead of qsort()
143 for replacement and cachemgr output.
144 - Changed ipcache.c to use LRU double-linked list instead of qsort()
145 - Changed hash_insert() and hash_join() to return void.
146 for replacement and cachemgr output.
147 - Moved StoreEntry->method member to MemObject->method.
148 - Made StoreEntry->flags 16 bits.
149 - Made StoreEntry->refcount 16 bits.
150 - Changed URL-based public cache key to always include the request
151 method.
eae03fc8 152
95bc9f0b 153Changes to squid-1.2.beta7 (Nov 24, 1997):
154
6a11653c 155 - Fixed poll() for Linux (David Luyer).
156 - SHA optimizations (David Luyer).
157 - Fixed errno clashes with macro on Linux (David Luyer).
158 - Fixed storeDirCloseSwapLogs(); logs might not be open.
159 - Fixed storeClientCopy2() bug. Detect when there is
160 no more data to send for objects in STORE_OK state.
19ee64b1 161 - Fixed FTP truncation bug when ftpState->size == 0, e.g.
162 especially directory listings.
95bc9f0b 163 - Mega FTP fix from Henrik Nordstrom. A better job of
164 implementing the '%2f' hack.
165 - Fixed some pipelined request bugs. storeClientCopy() was
166 being given the wrong StoreEntry, and we had a race condition
167 which is now handled by storeClientCopyPending().
99077fe6 168 - Added initial SNMP support.
6a11653c 169
2c9b45c9 170Changes to squid-1.2.beta6 (Nov 13, 1997):
171
1b5516d3 172 - Fixed Authorized responses getting swapped out when they
173 don't have Proxy-Revalidate reply header.
174 - Fixed Proxy Authentication support. We never sent back
175 a 407 reply, and were incorrectly incrementing the passwd
176 before comparing it.
177 - Fixed stat()ing pathnames for default values before parsing
178 config file (Ron Gomes).
179 - Fixed logging request and response headers on separate lines
180 (Ron Gomes).
181 - Fixed FTP Authentication message (Henrik Nordstrom).
182 - Changed Proxy Authentication to trigger a reread of the passwd
183 file if a password check fails (Henrik Nordstrom).
184 - Changed FTP to retry the first CWD with a leading slash if it
185 fails without one.
186
8c17a569 187Changes to squid-1.2.beta5 (Nov 6, 1997):
188
90045285 189 - Track the 'keep-alive ratio' for a peer as the ratio of
190 the number of replies including 'Proxy-Connection: Keep-Alive'
191 compared to the number of requests sent. If the peer does
192 not support Persistent connections then this ratio will tend
193 toward zero. If the ratio is less than 50% after 10 requests
194 then we'll stop sending Keep-Alive.
8c3994aa 195 - Proper support for %nn escapes in FTP, and numerous
196 other fixes (Henrik Nordstrom).
197 - Support for Secure Hash Algorithm and framework for other
198 hash functions as cache keys.
199 - Fixed SSL snprintf() bug which broke SSL proxying.
200 - Fixed store_dir swap log bug from reconfigure (SIGHUP).
8c17a569 201 - Fixed LRU Reference Age bug. The arg to pow() must be
8031bd43 202 minutes, not seconds.
90045285 203
9ddfb255 204Changes to squid-1.2.beta4 (Oct 30, 1997):
205
a493f974 206 - Fixed DST bug in rfc1123.c
207 - Changed default http_accel_port to 80.
208 - added errorCon() as a ErrorState constructor function
209 (Max Okumoto).
210 - Added ERR_FTP_FAILURE message for ftpFail().
211 - For FTP, the timeout callback must be moved to the 'data'
212 descriptor when data transfer begins. Otherwise we are
213 likely to get a timeout on the control descriptor.
214 - Fixed double-free bug in httpRequestFree().
215 - Fixed store_swap_size counting bug in storeSwapOutHandle().
216
409a6aad 217Changes to squid-1.2.beta3 (Oct 29, 1997):
218
219 - Initialize _res.options to RES_DEFAULT in dnsserver.c.
220 - Fix assertions which assumed 4-byte pointers.
221 - Fix missing % in fqdncache.c snprintf().
222
5a2d610b 223Changes to squid-1.2.beta2 (Oct 28, 1997):
224
8c3994aa 225 - Fixed aiops.c and async_io.c so that they actually compile
f5b8bbc4 226 with USE_ASYNC_IO (Arjan de Vet).
227 - Fixed errState->errno causing problems with some macros
228 (Michael O'Reilly).
d287f51e 229 - Fixed memory leaks in pconn.c (Max Okumoto).
0866009b 230 - Enhanced 'client' program with 'ping' behaviour (Ron Gomes).
272547b5 231 - Fixed InvokeHandlers() from calling memCopy() for ALL
232 store_client's with callbacks. A store_client might be reading
233 from disk.
5a2d610b 234 - Rewrote storeMaintainSwapSpace(). No longer will we scan one
272547b5 235 bucket at a time. Instead we'll maintain a single LRU
236 list. When an object is 'touched' we move it to the
237 top of this list. When we need disk space, we delete
238 from the bottom.
5a2d610b 239 - Removed storeGetSwapSpace().
f5b8bbc4 240
871f0b8a 241Changes to squid-1.2.beta1 ():
242
243 - Reworked storage manager to not keep objects in memory during
244 transit. In other words, no separate NOVM distribution.
245 - Lots of cleanup and debugging for beta release.
246 - Use snprintf() everywhere instead of sprintf().
247 - The 'in_memory' hash table has been replaced with a
248 doubly-linked list. New objects are added to the head of
249 the list. When memory space is needed, old objects are
250 purged from the tail of the list.
251
0edfe7a2 252Changes to squid-1.2.alpha7 ():
253
c4958532 254 - fixes fixes fixes.
255 - Made Arjan's PROXY_AUTH ACL patch standard.
0edfe7a2 256
8905b90c 257Changes to squid-1.2.alpha6 ():
258
6684fec0 259 - Simpler cacheobj implementation.
6605655c 260 - persistent connection histogram
8872e1f8 261 - SERVER-SIDE PERSISTENT CONNECTIONS:
262 - Added pconn.c
263 - Addec Cofig.Timeout.pconn; default 120 seconds
264 - Added httpState->flags
265 - Added flags arg to httpBuildRequestHeader()
266 - Added HTTP_PROXYING and HTTP_KEEPALIVE flags
267 - Added 'Connection' to allowed HTTP headers (http-anon.c)
268 - Added 'Proxy-Connection' to allowed HTTP headers
269 (http-anon.c)
a7736231 270 - Merged proxyhttpStart() with httpStart() and created
8872e1f8 271 new httpBuildState().
272 - New httpPconnTransferDone() detects end-of-data on
273 persistent connections.
6684fec0 274
88738790 275Changes to squid-1.2.alpha5 ():
276
277 - New configuration system. Everything is generated from
278 'cf.data.pre', including the main parser, setting defaults,
279 outputting current values, and freeing memory.
280 This also involved moving some of the local data structures
281 (e.g. struct _acl *AclList in acl.c) to the Config
282 structure. (Max Okumoto)
283 - No more '/i' for regular expressions. Now insert a '-i'
284 to switch to case-insensitive. Use '+i' for case-sensitive.
285 - When you have a variable named the same as its type, sizeof()
286 gets the wrong one (fde).
287 - Need to flush unbuffered logs before fork().
288 - Added two fields swap log: refcount and e->flag.
289 - Removed all the .h files for each .c file. Now #include stuff
290 is in either: defines.h, enums.h, typedefs.h, structs.h,
291 or protos.h, globals.h. This greatly reduces dependencies
292 between the various source files.
293 - globals.c is generated from globals.h by a Perl script.
8ee3ca2c 294 - Started customizable error texts.
88738790 295
97f674c8 296Changes to squid-1.2.alpha4 ():
297
ec973719 298 - New MIME configuration, regular expression based
299 - Added request_timeout config option
300 - Multiple HTTP sockets (Lincoln Dale).
301 - Moved 'fds_are_n_free' check to httpAccept().
302 - s/USE_POLL/HAVE_POLL/; make poll() default if available.
7e49f700 303 - Changed storeRegister to use offsets and make immediate
304 callbacks if appropriate.
305 - Removed icpDetectClientClose(). Some of that functionality
306 goes into clientReadRequest() and the rest into
307 httpRequestFree().
b1b387d1 308 - Moved IP lookups to commConnect stuff.
309 - Added support for retrying connect().
858164fc 310 - New inline debug() macro (David Luyer).
e174e0fe 311 - Replace frequent gettimeofday() calls with alarm(3) based
312 clock. Need to add more gettimeofday() calls to get back
a59968c7 313 high-resolution timestamp logging (Andres Kroonmaa).
0153d498 314 - Added support for Cache-control: proxy-revalidate;
315 based on squid-1.1 patch from Mike Mitchell.
ec973719 316
3b08d32d 317Changes to squid-1.2.alpha3 ():
318
319 - Implemented persistent connections between clients and squid.
320 - Moved various FD tables (comm.c, fdstat.c, disk.c) to a single
321 table in fd.c.
322 - Removed use of FD as an identifier in certain callback
323 operations (ipcache, fqdncache).
324 - General code cleanup.
325 - Fixed typedefs for callback functions.
326 - Removed FD lifetime/timeout dichotomy. Now we only have
327 timeouts, however the lifetime concept/keyword may still
328 linger in certain places.
329 - Change Makefile 'realclean' target to 'distclean'
330 - Changed config file parsing of time specifications to use
331 parseTimeLine().
332 - Removed storetoString.c
333
334Changes to squid-1.2.alpha2 ():
74cebec0 335
336 - Merged squid-1.1.9, squid-1.1.10 changes
337
7b41ec97 338Changes to squid-1.2.alpha1 ():
339
340 - Unified peer selection algorithm.
75e88d56 341 - aiops.c and aiops.h are a threaded implementation of
342 asynchronous file operations (Stewart Forster).
343 - async_io.c and async_io.h are complete rewrites of the old
344 versions (Stewart Forster).
6ad85e8a 345 - Rewrote all disk file operations of squid to support
75e88d56 346 the idea of callbacks except where not required (Stewart
347 Forster).
75e88d56 348 - Background validation of 'tainted' swap log entries (Stewart
349 Forster).
350 - Modified storeWriteCleanLog to create the log file using the
351 open/write rather than fopen/printf (Stewart Forster).
352 - Added the EINTR error response to handle badly interrupted
353 system calls (Stewart Forster).
6ad85e8a 354 - UDP_HIT_OBJ not supported, removed.
355 - Different sized 'cache_dirs' supported.
75e88d56 356
e924600d 357==============================================================================
7b41ec97 358
88738790 359Changes to squid-1.1.14 (July 11, 1997):
360
361 - Another try at log_url crap. Added icpState->log_url
362 member. Set mem_obj->log_url in new_MemObject() which
363 means passing more args to storeCreateEntry(). Also added
364 urlClean() which calls urlParse(); needed for ICP logging.
365 - Clean URLs will be truncated at '?' if present.
366 - Give fd_note() the clean URL.
367
368Changes to squid-1.1.13 (July 9, 1997):
369
370 - Fixed storeLog() coredump on mem->log_url.
371 - Fixed string bounds bug if a redirector returns a short
372 hostname which require appending 'append_domain' (David
373 Lamkin).
374 - Added 'fake_user_agent' to configuration because HTTP
375 anonymizing strips the User-Agent which some servers require.
376
377Changes to squid-1.1.12 (July 5, 1997):
378
379 - Fixed dnsserver buffer overflow bug and other problems related
380 to long, bogus domain names.
381 - Fixed occasional incorrect ERR_DNS_FAIL errors caused when
382 an IP cache entry gets released about the same time an
383 ICP query timeout occurs.
384 - Fixed setrlimit() bugs seen on DUNIX 4.0; rl.rlim_max == 0.
385 - Only strip 'Proxy-authorization' header when USE_PROXY_AUTH
386 is defined and proxy_auth is configured (Ron Gomes).
387 - Added missing calls to reset socket timeouts for SSL
388 and passthrough requests.
389 - Fixed "Available number of file descriptors" value in
390 cachemgr info output.
391 - Fixed coredump in proxyAuthenticate() if password file
392 has an entry with only a user name (Jordan Hrycaj).
393 - Security patch for usernames and passwords in URLs.
394 + ftpget would insert a BASE URL including the username and
395 password for directory listings IF the original request did
396 NOT include the the trailing slash. This could be disabled
397 with a command line option, but is enabled by default. Now
398 its #ifdefd out.
399 + Usernames and passwords could be logged to access.log and
400 store.log. Now a new element,
401 StoreEntry->MemObject->log_url, holds a copy of the requested
402 URL without the name and password. This isn't 100% fixed yet
403 because log_url gets generated when the StoreEntry gets
404 created. If the StoreEntry never gets created, then the URL
405 with name and password will get logged. Also, the name and
406 password are not stripped from ICP requests. Also, this
407 changes store.log. Previously we logged StoreEntry->key
408 which would look different than the URL for private entries,
409 but now we'll always log the URL.
410 + Finally, we now set REQ_AUTH for any request that includes a
411 name or password. This prevents the request from being
412 cached (!) and prevents it from being sent to neighbor
413 caches. In other words, its treated just as if an
414 Authorization request header were present.
415 - Fixed Byte-Range handling so that valid, whole objects
416 are not released.
417
418Changes to squid-1.1.11 (June 14, 1997):
419
420 - Clean up NeXTStep compiler warnings (Karsten Heinze, Ed Knowles).
421 - Don't forward 'Proxy-Authorization' headers (Chris Pascoe).
422 - Fixed up Host: header parsing (Henrik Nordstrom).
423 - Changed DefaultObjectsPerBucket to 20 in cache_cf.c.
424 - Fixed parsePathname() bug for magic word "none".
425 - Fixed ipcache_release to rename entries which get stuck with locks.
426 - Fixed "eventDelete(peerCheckConnect, e);" bug when the DNS lookup
427 is pending.
428 - Add sys/types.h to lib/safe_inet_addr.c for NeXTSTEP (Timo
429 Hennerich).
430 - Fixed cur_len decrement bug in diskHandleRead()
431 (Michael O'Reilly).
432 - Added contrib/rredir.pl from Peter Eisenhauer.
433 - Always forward requests with 'Byte-Range' headers (Ron Gomes).
434 - Fixed StoreEntry client offset bug which could trigger a
435 fatal_dump().
436 - Fixed noticing that dnsservers have shut down during restart.
437 - Added contrib/nextstep installer package from Gerben Wierda.
438 - Modified storeDirClean() to remove swap files where the
439 number is being used, but the file is in the wrong directory.
440 - Allow PURGE method on all protocols.
441 - Added 'icp_hit_stale' option.
442 - Fixed proxy auth refresh bug (Chris Pascoe).
443 - Don't check for other filename extensions if an FTP URL
444 ends with .txt (Ed Knowles).
445 - Relocated ERR_NO_CLIENT_BIG_OBJ check to eliminate incorrect
446 (but harmless) error message.
447
6ad85e8a 448Changes to squid-1.1.10 (April 24, 1997):
449
450 - Require 0 <= multicast ttl <= 128.
451 - Changed 'unsigned int inaddr_none' to 'struct in_addr no_addr'.
452 - Added debug_trap() if unlocking a StoreEntry which still
453 has registered clients.
454 - Added missing storeUnregister() calls.
455 - Fixed storeClientListAdd() bug of adding same FD twice.
456 - Fixed reconfigure/SIGHUP to wait 'shutdown_lifetime' seconds
457 after receiving signal (Ron Gomes).
458 - Added missing commSetSelect() in icpDetectClientClose()
459 (Mark Treacy).
460 - Fixed multicast group member counting bug with fake
461 StoreEntry's.
462 - Only enable ICP_FLAG_SRC_RTT if the peer is ICP_VERSION_2.
463 - Fixed compiling unlinkd in a separate directory (Assar Westerlund).
464 - Fixed comm_select_incoming SEGV for poll() version when using
465 udp_{incoming,outgoing}_address (Mark Treacy).
466 - Fixed some SIGHUP related memory problems with redirectors,
467 ipcache, and fqdncache, and peerCountMcastPeers*().
468 - Make the unlinkd and pinger programs configurable (Ron Gomes,
469 Neil Murray).
470 - Add handshake to unlinkd program (Ron Gomes).
471 - Exit if a configured program doesn't exist (Neil Murray).
472 - Abort if unlinkd fails to start (Ron Gomes).
473 - Added -m option to ftpget for defining default MIME type.
474 (Neil Murray).
475 - Optimized comm_select() functions (Mark Treacy).
476 - Fixed ipcache_release() to not release locked entries;
477 instead expire them immediately.
478 - Fixed up rebuild code to handle swapfile/URL clash
479 cases better.
480 - Added safe_inet_addr() to protect from bogus IP addresses
481 (Arjan de Vet).
482 - Fixed handling of ssl_proxy and passthrough_proxy when not
483 behind a firewall.
484
485
486Changes to squid-1.1.9 (March 30, 1997):
487
488 - Fixed aclIpNetworkCompare for USE_SPLAY_TREE; was applying
489 netmask to non-local variable through pointer. (Ansgar
490 Hockmann).
491 - Fixed cachemgr bug incorrectly assigning connect() return
492 value (Nigel Metheringham).
493 - Fixed diskHandleWrite bug: not setting write_daemon = PRESENT.
494 - Fixed situation where all requests would be handled by
495 "single parent" and other peers would never be queried
496 again.
497 - Fixed ftpget bug causing program to continue after printing
498 usage.
499 - Changed 'reference_age' to be the maximum for the dynamcially
500 computed value (Mark Treacy).
501 - Added external 'unlinkd' process to unlink swap files.
502 - Added more dnsserver status information to cachemgr output.
503 - In httpReadReply: extend FD lifetime only after successful
504 read, not every read.
505 - In httpBuildRequestHeader: link size of 'ybuf' to MAX_URL.
506 - Added routines to count number of members of each multicast
507 peer.
508 - Fixed multicast ICP bug causing unnecessary timeouts.
509 - Added error messages if setuid/setgid functions fail.
510 - Added non-POSIX tempnam.c replacement for NeXTStep (Gerben
511 Wierda).
512 - Removed redundant file:// --> ftp:// check (Willy TARREAU).
513 - Removed check for reply->code == 200 in icpGetHeadersForIMS().
514 - Fixed IP cache bug which caused 'dns_children 0' to break;
515 - Deny access to dangerous TCP ports (7, 9, 19).
516 - Removed single-line functions: fdstat_biggest_fd(),
517 comm_get_fd_lifetime(), comm_get_fd_timeout().
518 - Removed storeCheckExpired() from storeGetSwapSpace() as
519 likely cause of slowing down cache when exceeding the high
520 water mark.
521 - Fixed storeCheckExpired() to not always check the
522 LRU expiration age (Mark Treacy).
523 - Lowered 'store_objects_per_bucket' to 20 so that
524 storeMaintainSwapSpace() runs frequently enough to
525 keep up with incoming objects.
526 - Fixed FTP to use the Authorization header only when the
527 usernames match.
528 - Fixed another continuation-lines-not-starting-with-NNN bug
529 in ftpget.
530 - Added 'client_db' config option to disable keeping statistics
531 for each client address.
532 - Added support for using ICMP data stuffed into ICP replies
533 for peer selection algorithm. Enable with 'query_icmp'
534 in squid.conf.
535 - Fixed net_db design bug where _net_db_peer structures pointed
536 to 'peer' structures that get freed and reallocated during a
537 reconfigure.
538 - Moved comm.c fd_lifetime[] array into FD_ENTRY structure.
539 - Cleaned up storeCopy(). debug_trap on requested offset <
540 e_lowest_offset.
541 - Cleaned up fdstat_init() and fdstat_update().
542 - Cleaned up ftp_login_parser().
543
e924600d 544Changes to squid-1.1.8 (March 3, 1997):
545
546 - Fixed neighborsUdpAck() coredump bug for source-ping and
547 non-peer ICP replies.
548 - Prevent ipcache_gethostbyname from changing an IP_DISPATCHED
549 entry to IP_CACHED; fqdncache too.
550 - Made send_announce non-blocking.
551 - Force release of negative-cached objects upon receipt of
552 no-cache request.
553 - Ignore ACLs which fail to parse.
554 - Added 'proxy_auth_ignore' regular expression list (Andreas
555 Lamprecht).
556 - Changed how failed TCP connections affects peer up/down
557 status. Now retry TCP connections at regular intervals in the
558 background and don't mark the peer as 'up' until a connection
559 succeeds.
560 - Okay to increase FD_SETSIZE on FreeBSD 2.2.x (Peter Wemm).
561 - Fixed HTTP anonymizer bug in 'standard' mode.
562 - Fixed aclMatchDomainList() coredump for unresolvable addresses.
563 - Changed default disk low/high water marks to 90/95%.
564 - Prevent ftpget buffer overflow (Riku Saikkonen).
565
566Changes to squid-1.1.7 (February 25, 1997):
468c23d3 567
6ad85e8a 568 - Fixed non-default port numbers for FTP URLs (John Saunders).
468c23d3 569 - Fixed urlParse to leave trailing slashes on FTP URLs. Although
570 stripping the slashes offers a slight hit rate increase, it
571 breaks some proxies which return HTTP redirects.
572 - Initialize struct tm in parse_rfc1123() (Henrik Hempelmann).
573 - Fixed parseHttpRequest() to use memcpy instead of strncpy;
574 caused POST's with NULL bytes to fail (Joe Ramey).
575 - Fixed another HTTP reply code 0 bug (Neil Murray).
576 - Changed code structure in ipcache_nbgethostbyname() to
577 maybe get around some trashed-stack problems.
578 - Added WARNING if blocking gethostbyname() gets called.
579 - Fixed calling commSetSelect() with FD < 0 bug in ssl.c and
580 pass.c.
2ec29a62 581 - Moved 'append_domain' operation to urlParse().
582 - Fixed too many arguments bug in diskHandleWrite, caused
583 coredumps when write fails (due to full disk).
77f33b26 584 - Fixed extra unlocking on partial reads from dnsservers.
585 - Fixes for 'Splay' trees in acl.c (Ed Knowles)
586 - Support for balanced binary trees in acl.c (Arjan de Vet).
91de5d47 587 - Made HTTP anonymizing a standard feature and settable in
588 squid.conf (disabled by default).
4dcdb109 589 - Ignore ICP_MISS replies from multicast-responding parents
590 which would violate the domain restrictions.
591 - Fixed another diskHandleWrite coredump bug when freeing
592 list of pending blocks.
593 - Added support for 'src' ACLs in cache_host_acl lines.
c7686fee 594 - Fixed ftpget bug when PASV connect times out.
595 - Fixed adding duplicate IP cache entry for failed BLOCKING lookups.
596 - Changed peer IP addresses (for ICP) to be refreshed every hour.
597 - Accomodated Solaris bug requiring suid privs for getrusage()
598 (Arjan de Vet).
468c23d3 599
678d8a69 600Changes to squid-1.novm.6 (February 7, 1997):
601
602 - Merged squid-1.1.6 changes.
603
870bd0f9 604Changes to squid-1.1.6 (February 7, 1997):
1febb85b 605
606 - Fix redirector to make sure the redirector child process is
607 is alive and not busy before using it (Brent Foster).
608 - Fixed ACL joining bug.
870bd0f9 609 - Fixed up support for multicast; see Release Notes for
610 details.
1febb85b 611 - Fixed ftpget to properly handle multi-line replies that
612 don't begin with "NNN-".
613 - Changed store maintenance to randomize bucket order
614 each time after completion.
615 - Set RLIMIT_VMEM to the maximum.
616 - Syntax change: "edge" to "peer" everywhere.
617 - Change redirector stats to also show number of rewritten
618 requests (Andrew Humphrey).
619 - Changed HTTP anonmyizing to remove 'denied' headers
620 by default. Define USE_PARANOID_ANONYMIZER to only pass
625917ea 621 'allowed' headers instead (Bernd Ernesti).
870bd0f9 622 - Added 'Splay' trees (in #ifdefs) for fast IP access checking
623 (Ed Knowles).
1febb85b 624 - Fixed 'COMM_INPROGRESS' typo bug (Balint Nagy Endre).
625 - Added support for PURGE method to remove cached objects.
626 - Upgraded scripts/check_cache.pl for v1.1 (Bertold Kolics).
627 - Fixed announcement file descriptor leak (Balint Nagy Endre).
628 - Fixed [^0-9] sscanf bug for some compilers (Jim Carroll).
629 - Upgrade to autoconf-2.12
625917ea 630 - Added 'dns_defnames' option to allow dnsserver to interpret
631 single-component hostnames.
625917ea 632 - Refuse to run as root without defining 'cache_effective_user'.
1febb85b 633
870bd0f9 634Changes to squid-1.novm.5 (February 6, 1997):
c95a0781 635
636 - Fixed stuck objects (and FD leak) due to not unlocking
637 objects in storeAbort().
cab88bee 638 - Merged squid-1.1.5 changes.
4b7f7b84 639
625917ea 640Changes to squid-1.1.5 (January 22, 1997):
e3a664b4 641
bb97dd37 642 - Fixed ACL parsing to join ACL entries with the same name
643 (Markus Stumpf).
644 - Fixed BIT_SET/BIT_TEST typo in getDefaultParent() (Ed Knowles).
645 - Removed comm_read() and commHandleRead().
646 - Fixed rotating special files (Kolics Bertold).
647 - Fixed sending HTTP reply code 0 in error messages.
648 - Fixed ftpget to recognize 'NetWare' servers and skip whitespace
649 before filenames.
650 - Changed ftpget default Content-Type to application/octet-stream.
651 - Added .rpm MIME type (Nigel Metheringham).
652 - Changed storeDirClean() to create missing directories.
61ba670d 653 - Removed icpState->buf and storeCopy() call in icpGetHeadersfForIMS().
e3a664b4 654 - Fixed *_ip_list parsing bug (Hiroyuki Inoue).
655 - Fixed bad comm_write() calls in passStart() and sslStart()
656 (Martin Boening).
7fd2a4e7 657 - Changed storeMaintainSwapSpace() to scan hash table buckets in
658 random order.
659 - Added dynamic LRU Age expiration feature. Expiration age is
660 calculated as a function of store_swap_size so that object
661 deletion rate matches the addition rate and we avoid emergency
662 object purge mode.
bb97dd37 663
625917ea 664Changes to squid-1.novm.4 (January XX, 1997):
d3954477 665
666 - Fixed storeRegister loop in icpHandleIMSReply().
1f5ec3ed 667 - Merged squid-1.1.4 changes.
d3954477 668
3e65cb76 669Changes to squid-1.1.4 (January 13, 1997):
115c7870 670
671 - Created USE_GNUREGEX define to fix forcing GNU regex on
672 Solaris and NeXTStep.
673 - Changed SQUID_MAXFD to be a C variable.
674 - Added QUICKSTART file.
675 - Fixed ident so the identd request comes from the same IP
676 address as the original connection was made to (Russell
677 Street).
678 - Added '!' condition feature for the 'firewall_ip' list
679 (Hiroyuki Inoue).
680 - Added 'udp_hit_obj_size' option (Mark Treacy).
681 - Fixed cachemgr.cgi to print 'NEVER' instead of '27Y ago'.
3e65cb76 682 - Fixed finding FTP end-of-transfer marker in the middle
683 of the file.
684 - More ipcache fixes for long-pending requests which get preempted.
62a0995a 685 - Fixed cachemgr.cgi to parse password from URL (Peter Wemm).
686 - Fixed cachemgr.cgi to keep password in HTML form field (Peter
687 Wemm).
688 - Fixed reporting Maximum Resident Size (Peter Wemm).
689 - Handle unexpected data from a redirector (Brent Foster).
115c7870 690
691Changes to squid-1.novm.3 (January 7, 1996):
03c91395 692
693 - Merged squid-1.1.3 changes.
694
695Changes to squid-1.novm.2 (January 7, 1996):
696
697 - Mega changes to make Squid not store objects in VM.
74946a0f 698
9a325041 699Changes to squid-1.1.3 (January 7, 1997):
c92978ac 700
7a77c4b4 701 - Changed inet_addr("X") to inet_addr("255.255.255.255")
702 (Dan Riley).
703 - Fixed matchInsideFirewall() bug when using 'firewall_ip' but
704 not 'inside_firewall' (Tai Jin).
705 - check for text == NULL in icpSendERROR().
706 - Don't make inaddr_none static in ftpget.c (Davide Migliavacca).
707 - Fixed ipcache FMR bug for long-pending requests.
708 - Fixes for NeXTSTEP 3.3 (Tethpub Znek).
709 - add storeWriteCleanLog() call in fatal().
710
75a4803a 711Changes to squid-1.1.2 (December 18, 1996):
712
e12ec0cc 713 - Fixed (negative) caching of HTTP objects witch consist of
714 only some HTTP headers.
715 - Fixed up SSL neighbor selection algorithm to be just
716 like the one in pass.c.
717 - Fixed incorrect squid.conf comment about setting an objcache
718 password to 'none'. Added keyword 'disable' to disable an
719 objcache function (Markus Gyger).
720 - Further Cache.Announce.on fixes (Ernest Yik).
721 - Add theOutIcpConnection to comm_select_incoming() for improved
722 ICP performance (Stewart Forster).
723 - Added access.log documentation to Release-Notes-1.1.txt
724 - Added support for TRACE method.
c1827ffa 725 - Added 'log_icp_queries on|off' to config (David Luyer).
726 - Added hierarchy tag to common HTTP format access.log (David Luyer).
e12ec0cc 727 - Moved second SQUID_MAXFD/FD_SETSIZE check to after #includes.
728 - Added reverse DNS lookups for 'dstdomain' ACLs when the URL
729 contains an IP address.
730 - Made HTTP reply header parsing more robust to deal with
731 bad 304 replies from squid-1.1.beta27 and earlier.
c1827ffa 732 - Changed reqnum passed in ICP replies to encode request method
733 in high byte.
58e7e5cc 734 - Fixed neighbor round-robin bug (Uwe Doering).
735 - Calculate accurage percentages for ICP and HTTP requests in
736 cachemgr 'client list'.
737 - Fixed refresh lm-factor calculations to allow percent = 0.
738 - Make sure DNS lookups don't remain PENDING for a very long time.
e12ec0cc 739
04279aad 740Changes to squid-1.1.1 (December 15, 1996):
e119289e 741
742 - Fixed announcement bug. Announcements were always off unless
743 a file was specified.
744 - Fixed wrong number of args to examine_select() debug.
745 - Fixed null-string content-type
746 - Don't cache replies with 'Set-Cookie:' headers.
747 - Fixed bug when client issues IMS, Squid has stale object and
748 Squid's lastmod time is greater than the client IMS time.
749 A 304 reply would be appropriate for Squid, but not the client
750 (diagnosed by Mark Treacy).
751 - Fixed httpBuildRequestHeader() content length bug which breaks for
752 really large POST requests (Takahiro Yugawa).
753 - Fixed 'passthrough_proxy' to pick up port number from list of
754 neighbors.
6f4d3ac9 755 - Ensure pid file is world-readable if umask is set otherwise
756 (Doug Urner).
04279aad 757 - Collect statistics on a few more HTTP headers (Ed Knowles).
e119289e 758
2b17a56e 759Changes to squid-1.1.0 (December 6, 1996):
760
761 - Fixed inequality bug in neighborUp().
762 - Fixed off-by-one ack_deficit bug in neighborUp() (Joe Ramey).
763 - Fixed pfds[] ABW bug for USE_POLL (Joe Ramey).
764 - Added anonymizer options; compile with USE_ANONYMIZER (Lutz
765 Donnerhacke).
766 - Added Gauntlet proxy support to ftpget (Mukaigawa Shin'ichi).
c62bf0f1 767 - Changed UDP_HIT_OBJ to be disabled by default.
2b17a56e 768 - Updated doc/Release-Notes-1.1.txt
769
770==============================================================================
771
74313381 772Changes to squid-1.1.beta28 (December 5, 1996):
773
8fa71551 774 - Fixed missing CR on Not-Modified replies (Balint Nagy Endre)
775 - Fixed not truncating multi-word content-types.
776 - Fixed ABR bug due to too-small redirector buffers.
777 - Fixed ABR in httpBuildRequestHeader().
1baa4e8a 778 - Removed asynch_io code.
8fa71551 779
4945cebf 780Changes to squid-1.1.beta27 (December 4, 1996):
781
782 - Fixed wrong number of args to debug().
783 - Make failure to start any dnsservers fatal.
784 - Fixed dnsGetFirstAvailable() to skip dead dnsservers.
785 - Fixed loop detection for two squids on the same host (Mark
786 Treacy)
787 - Fixed strcasecmp bug which broke some POST requests.
788
9e393211 789Changes to squid-1.1.beta26 (December 3, 1996):
89659cff 790
dcfe6390 791 - Another 'rm -rf' fix for store.c (Bernd Ernesti).
792 - Use of the Host: header for httpd_accel requests is now
793 disabled unless 'httpd_accel_uses_host_header' is set.
794 - Have configure check for libgnumalloc.a.
89659cff 795 - Added support for using poll() instead of select(); enable
796 USE_POLL_OPT in src/Makefile (Stewart Forster, Anthony
797 Baxter).
798 - Fixed httpBuildRequestHeader() 'strcat' bug (Andres Kroonmaa).
799 - Changed store.log to include date, last-modified, and
800 expires timestamps, plus content-type.
801 - Added content-type to access.log too.
802 - parse HTTP timestamps directly in httpParseReplyHeaders().
803 - moved timestampsSet() to storeTimestampsSet().
804 - fixed ACL '/32' bug (Ansgar Hockmann).
dcfe6390 805
3ac5bf55 806Changes to squid-1.1.beta25 ():
807
575e5b1a 808 - Check if we should delete-behind large objects when above LOW
809 water mark.
3ac5bf55 810 - Merged request header parsing code from http.c and pass.c
811 into httpBuildRequestHeader().
575e5b1a 812 - Fixed 'rm -rf' command in store.c.
813 - Changed viz_hack stuff to use multicast.
3ac5bf55 814
c5a0c043 815Changes to squid-1.1.beta24 ():
816
817 - Added 'cache_stoplist_pattern' to squid.conf
818 - Remove trailing slashes from FTP URLs.
819 - Added 'passthrough_proxy' support.
1bc5033b 820 - Added "default parent" support with a 'default' option for
821 cache_host config line.
1a10e02d 822 - Upgraded autoconf to 2.10.
6b98c7ae 823 - Strip Proxy-Connection request headers.
1bc5033b 824 - Do not return UDP_HIT for objects which will soon be stale.
825 - Parse/Filter HTTP request headers in passthrough module.
826 - Fixed parsing hostnames with dashes in 'src' ACLs.
827 - Added warning message when forwarding loops detected.
828 - Split getSingleParent() into getSingleParent() and
829 neighborsCount().
99fcf739 830 - Dont check sibling caches for REFRESH requests.
831 - Add X-Forwarded-For: header which is the comma-separated
832 list of client addresses along the request path.
833 - Fixed icpDetectClientClose() to check if Content-Length
834 bytes have been delivered.
c5a0c043 835
4f4905f1 836Changes to squid-1.1.beta23 (November 25, 1996):
837
7acb0b24 838 - Fixed "viabuf" memory leak.
4f4905f1 839
ef97e96c 840Changes to squid-1.1.beta22 (November 25, 1996):
841
6219258f 842 - Fixed xstrncpy() bug in mime_get_header().
843 - Fixed Via: header.
844 - Fixed Host: header for proxy requests.
845 - Fixed re-initializing client_db and net_db hash tables upon
846 SIGHUP (Cord Beermann).
847 - Mucked with regex stuff so HP users don't have to put up with
848 GNUregex (Markus Gyger).
849 - Changed SQUID_MAXFD back to FD_SETSIZE.
850 - Fixed checking Max-age in httpSendRequest().
851 - Made failure to fork ftpget fatal.
852 - Call *FreeMemory() routines only if debugging.
853
96e84919 854Changes to squid-1.1.beta21 (November 22, 1996):
855
431d84c5 856 - Fixed setting entry->timestamp for NOT MODIFIED replies.
857 - Changed old HTTP/1.1 Forwarded: header to new Via:.
431d84c5 858 - Fixed needlessly calling storeSwapFullPath() in
859 storeSwapOutHandle() (Mark Treacy).
860 - Simplified hash linking (Mark Treacy).
861 - Write pid_filename by default (Markus Gyger).
862 - Changed "Invalid dnsserver output" to non-fatal debug_trap()
863 (Joe Ramey).
864 - Changed STORE_IN_MEM_BUCKETS to the prime 229 (Neil Murray).
59b9e1b4 865 - Changed FD_SETSIZE to SQUID_MAXFD (Jonathan Larmour).
866 - Strip :port from Host: header if present.
867 - Reschedule fqdncache_dnsHandleRead() to prevent dnsservers
868 from getting stuck (Makoto Ishisone).
869 - Fixed handing SSL requests inside firewalls (Akira Sato).
870 - Fixed passthrough neighbor selection bug (Akira Sato).
871 - Removed 'post_buf' stuff from http.c.
6982963c 872
431d84c5 873Changes to squid-1.1.beta20 (November 17, 1996):
58336fe1 874
875 - Changed neighbor_domain_type to neighbor_type_domain in
876 squid.conf.
58336fe1 877 - Changed all 'xstrerror' debug messages to section 50.
878 - More const fixes (Markus Gyger).
879 - Added xstrncpy() which null-terminates (Markus Gyger).
8ea68e8d 880 - Fixed Cache-Control counting in HTTP reply header stats.
85ec1ab9 881 - Relocated rfc1738_unescape() calls in ftpget so that
882 ftp://foo.org/%2fbar/ works (Jonathan Larmour).
396b6d21 883 - Fixed forwarding loop for a pair of neighbors behind a firewall.
884 - Cleaned up ftpget non-blocking flags (Jean-Hugues ROYER).
58336fe1 885
3f7009a3 886Changes to squid-1.1.beta19 (November 13, 1996):
887
4621df3e 888 - Fixed havoc-wreaking getsockname() bug (Noriyuki Soda
889 <soda@sra.co.jp>).
3f7009a3 890 - Fixed InvokeHandlers() debug_trap bug.
891 - Lock entry while calling swapin handler in case someone tries to
892 release it.
893 - Changed configure to allow overriding of XTRA_LIBS in config.site.
4621df3e 894 - Fixed comm_accept() FMR bug.
895 - Replaced MemObject->fd_of_first_client structure member with
896 storeFirstClientFD() function.
3f7009a3 897
fe26d5d1 898Changes to squid-1.1.beta18 (November 13, 1996):
899
900 - Fixed 'void *buf' bug icpCreateMessage() (Jean-Hugues ROYER).
901 - Fixed more NULL 'friends' bugs.
902 - Added debug_trap for NULL mem->clients in InvokeHandlers()
903 (Mark Treacy).
904
4a45acc4 905Changes to squid-1.1.beta17 (November 12, 1996):
906
907 - Fixed NULL friends coredump in neighbors_open().
908 - Added setting HAVE_TEMPNAM back to the configure script.
909 - Fixed h_errno bug on NeXTStep (frank@langen.bull.de).
910 - Fixed expiresMoreThan() bug causing all UDP_MISS replies.
911 - Changed 'background.c' to 'event.c' and merged all periodic
912 functions into an event queue.
913 - Renamed httpParseHeaders() to httpParseReplyHeaders().
914 - Added support for sending HTTP/1.1 'Cache-Control: max-age=X'
915 in requests. The max-age value is taken from the
916 'refresh_pattern' rules.
917 - Added support for parsing max-age in client request.
918 - Split icpUdpSend() into simpler icpUdpSend() plus
919 icpCreateMessage().
920 - Force storeAbort() for dispatched objects in
921 asciiLifetimeHandle().
922 - Fixed firewall-related bug when the DNS lookup fails.
923 - Fixed '#define HAVE_GETRUSAGE' bug (Takahiro Yugawa).
924 - Made storeStartDeleteBehind() quiet for 'no-proxy' neighbors.
925 - Fixed log_quote() signed/unsigned bug (Ron Gomes).
926
f39d06a2 927Changes to squid-1.1.beta16 (November 8, 1996):
9d98b6ba 928
929 - Fixed type of Config.level{One,Two}Dirs.
930 - Fixed calling storeRegister and storeUnregister with NULL a entry.
931 - Fixed objcache "squid.conf" request and now require a
932 password for it (Jan.Harkes@cwi.nl).
933 - Added check for dotted-quads in matchInsideFirewall()
934 (Andreas Lamprecht).
935 - Fixed up some HTTP/1.1 Cache-Control parsing (Ed Knowles).
936 - Fixed IP ACL memset() bug when -DPURIFY=1.
937 - Resurrected storeEntryValidToSend().
938 - Moved storeSetPrivateKey() calls to storeReleaseRequest().
939 - Added separate config line (neighbor_type_domain) for modifying
940 neighbor type (parent vs. sibling) for certain domains. Adding
941 it to cache_host_domain doesn't provide needed flexibility.
942 - Added User-Agent log patch (Joe Ramey).
943 - Added httpd-accel Host: patch (Miguel A.L. Paraz).
944 - Changed ident lookup stuff to require the lookup before
945 checking ACL's. If you have 'ident_lookup on' then this
946 may cause noticable delay while waiting for the ident
947 lookup.
2a88be88 948 - Fixed storeSwapOutHandle() FMR bug.
4a45acc4 949 - Stopped inserting incorrect Host: header for proxy-HTTP requests.
9d98b6ba 950
86b61a3f 951Changes to squid-1.1.beta15 ():
952
953 - Fixed entry->clients[].fd initialization bug causing all
954 large objects to get stuck.
193efd1c 955 - Changed /www.nlanr.net/Squid/ to /squid.nlanr.net/Squid/.
86b61a3f 956
f71d7952 957Changes to squid-1.1.beta14 ():
958
959 - Added pw_encrypt() check to configure.
960 - Added 'cache_stop_relist' for a regular expression based
961 stoplist.
962 - Fixed checkRefresh() to not cause IMS request for objects
963 which have not yet expired, but are past the LM-factor.
964 - Fixed asciiConnLifetimeHandle() to force storeAbort() for
965 pending objects.
0ee4272b 966 - Made lots of variables and args 'const' (Markus Gyger).
f836f80d 967 - Added cachemgr password support in squid.conf (Yaroslav M.
968 Levchenko). Each cachemgr operation may have a separate
969 password. Shutdown and all "log" operations must be
970 password-protected.
971 - Removed debug_trap() calls in squid_error_entry().
972 - Removed InvokeHandlers() call from StoreAbort().
0230ad3e 973 - Added icpHandleAbort() to deliver abort messages, if at all.
ae7d848d 974 - Added passthrough module (pass.c) for POST, et. al.
650c98da 975 - Fixed purify bugs in storeCloseLog() and storeSwapInHandle().
0230ad3e 976 - Merged store 'pending list' into 'client list.'
6982963c 977 - Made number of first- and second-level swap directories
978 configurable (Ralph Loader).
f71d7952 979
9c1d8929 980Changes to squid-1.1.beta13 (November 1, 1996):
981
861f7d39 982 - Fixed base64_code[] typo bug (Joe Ramey).
983 - Fixed errors being returned as empty objects.
984 - Changed order of sanity checks in neighborsUdpAck().
9c1d8929 985 - Made swap log pathname configurable with 'store_swap_log'.
986 - Made 'http_accel virtual 80' same as -V on command line.
987 - Fixed string termination bug in base64_decode() (Joe Ramey).
861f7d39 988
55b34d8e 989Changes to squid-1.1.beta12 (October 31, 1996):
727348b4 990
991 - Fixed ICMP 'pinger' failure detection.
992 - Fixed handling of no-cache for negative-cached objects.
55b34d8e 993 - Replaced protoUnregister() call in icpDetectClientClose().
994 - Fixed calling storeReleaseRequest() on unlocked objects.
727348b4 995
21da08b3 996Changes to squid-1.1.beta11 (October 29, 1996):
0d3b2381 997
b5cc294e 998 - Fixed rfc1123() to use actual RFC1123 time format.
999 - Made Store Hash parameters configurable
1000 - store_objects_per_bucket
1001 - store_avg_objects_size
1002 - Fundamental changes to object TTLs; now think in terms of
1003 refresh times. Replaced 'ttl_pattern' with 'refresh_pattern'.
1004 - Dropped 'http', 'ftp', and 'gopher' config options.
1005 - Added a single 'maximum_object_size' value.
1006 - Moved storeStartDeleteBehind() calls from http/ftp/gopher to
1007 storeAppend().
1008 - Moved storeClientListAdd() call from store to client/icp
1009 because of storeClientCopy() race condition between IMS
1010 replies and objects in delete behind mode.
1011 - renamed TCP_EXPIRED* to TCP_REFRESH*.
1012 - Stopped appending error messages to partially delivered
1013 objects.
e7aa3d17 1014 - Removed protoUnregister() call in icpDetectClientClose()
1015 as probable cause of storeReleaseRequest() warnings.
b5cc294e 1016
e2971793 1017Changes to squid-1.1.beta10 (October 24, 1996):
91b74eb8 1018
1019 - Fixed neighborsUdpAck() coredump bug and made debug messages
1020 more consistent.
1021 - Removed old REQ_ACCEL test (Miguel A.L. Paraz)
1022 - Fixed process RSS value for SGI (Ed Knowles).
1023 - Fixed parseAddressLine() to use gethostbyname(3) because
1024 its called before ipcache_init(). (Miguel A.L. Paraz)
1025 - Fixed announce bug since beta7 causing caches to be announced
1026 regardless of 'announce_to' setting. (Paul Southworth)
1027 - Fixed pinger 'last_check_time' bug.
1028 - Changed storeEntry->flag and storeEntry->refcount back to
1029 32-bit ints.
1030 - Removed extra "\r\n" for abort error messages.
1031 - Numerous hash fixes from Mark Treacy.
360f7bea 1032 - Renamed rfc850 to rfc1123.
e2971793 1033 - Changed storeRelease to not make recursive call for HEAD
1034 objects.
1035 - Changed return value semantics of storeRelease().
91b74eb8 1036
1a1ca352 1037Changes to squid-1.1.beta9 (October 21, 1996):
1038
1039 - Added 'make depend' target to Makefiles.
1040 - Fixed changing the wrong instance of 'opt_catch_signals'
1baa4e8a 1041 in tools.c for beta8.
1a1ca352 1042 - Fixed xmemcpy macros in include/config.h (Ed Knowles).
1fb83a91 1043 - Fixed logging of "TCP_EXPIRED_MISS/304."
1a1ca352 1044
5ecceaa4 1045Changes to squid-1.1.beta8 ():
1046
1047 - Added client_db.c; keeps stats on clients, use cachemgr
1048 to view client list.
1049 - Stop sending ICP_OP_DENIED to clients if 95% of their
1050 queries are denied (then they'll think we're dead).
366b96f1 1051 - Fixed objects getting stuck in VM when handling aborted
1052 requests in icpHandleIMSReply().
a4be6552 1053 - If IMS verification fails, send the old object and log it
1054 as TCP_EXP_FAIL_HIT.
1055 - Added Host: header to HTTP requests.
10660f97 1056 - Disable dnsservers with 'dns_children 0' in the config file.
1057 - Disable ftpget with 'ftpget_program none' in the config
1058 file. Also ftpget is disabled for http_accel mode.
6211a7c1 1059 - Changed cachemgr stats/objects listing format.
1060 - Added some missing "entry->refcount++"
1061 - Changed StoreEntry->timestamp to be the last verification time.
1062 (was the stored-on-disk time).
1063 - Fixed stuck objects from "304 Not Modified" responses without
1064 final blank line.
1065 - Added failure detection to icmpRecv().
0b6d1622 1066 - Fixed backwards logic in debug_trap().
72827a42 1067 - Fixed neighbor caches remaining in 'DEAD' state. Reorganized
1068 handling ICP replies so neighborsUdpAck gets called for
1069 most every reply.
5ecceaa4 1070
19037ac2 1071Changes to squid-1.1.beta7 (October 14, 1996):
6ac8a46c 1072
1073 - Combined and renamed comm_set_select_handler() functions.
e2b8bf57 1074 - Fixed netdbPingSite() not checking n->next_ping_time.
1075 - Fixed acl.c to use regular gethostbyname() because IP cache
1076 isn't initialized while reading config file.
1077 - Linked ftpget with debug.o and removed lib/debug.c,
1078 lib/log.c.
19037ac2 1079 - Fixed matchDomainName() coredump for late ICP packets.
1080 - Removed date string from syslog messages.
1081 - Fixed ftpget BASE HREF.
1082 - Fixed pinger to check squid socket every 10 seconds.
6ac8a46c 1083
e90100aa 1084Changes to squid-1.1.beta6 ():
1085
1086 - Fixed lots of function prototypes, etc (Ed Knowles).
1087 - Added multicast patch (Martin Hamilton).
e2b8bf57 1088 - Replaced 'struct hostent' with 'struct ipcache_addrs' in IP
1089 cache.
cafd0944 1090 - Added ipcacheCycleAddrs() to round-robin IP addresses.
e2b8bf57 1091 - Added ipcacheRemoveBadAddr() to remove addresses from failed
1092 connect()'s.
1093 - Changed comm_connect() to comm_nbconnect() and removed other
1094 nonblocking connection handling code from other modules.
1095 - Improved cache memory usage. Now cache_mem specifies the
1096 size of the in-memory data pool. Hot objects use whatever
1097 space is not used by in-transit objects.
cafd0944 1098 - Removed 'max_hot_object_size' config option.
1099 - Fixed virtual-host coredump bug (Aaron Hopkins).
e90100aa 1100
300acab6 1101Changes to squid-1.1.beta5 (October 7, 1996):
1102
1103 - Fixed coredump in storeFreeMemory().
1104 - Fixed displaying repeated IP addresses in IP cache contents.
1105 - Added parent/sibling modifiers to cache_host_domain lines.
1106 - Added 'miss_access' to restrict fetching HTTP MISS requests.
1107 Use this to force your peer caches to use you as a sibling and
1108 not as a parent.
1109 - Added browser ACL patch (Carson Gaspar).
1110 - Added reading ACLs from file patch (Arjan de Vet).
6d2296d4 1111 - Squid-1.0 changes up to 1.0.18.
ee1d3cec 1112 - Added release/cleanup functions to net_db.c.
7efcb4b8 1113 - Added 'minimum_direct_hops' config option.
300acab6 1114
0ac25a67 1115Changes to squid-1.1.beta4 (September 26, 1996):
67508012 1116
1117 - Fixed coredump in icpStateFree() when calling
1118 checkFailureRatio().
1119 - Added more stuff to net_db.c.
1120 - Fixed memory leak in stat_ipcache_get().
1121 - Changed __P back to _PARAMS.
9d90e665 1122 - Fixed authorization parsing bug in ftp.c (Yoichi Shinoda).
1123 - Allow ICP socket on priveledged ports.
1124 - Added trap for STORE_PENDING objects when lock_count == 0.
1125 - Replaced 'cache_hot_vm_factor' with 'max_hotvm_obj_size'.
1126 - Moved ICMP socket to external 'pinger' program.
a65bb524 1127 - Moved tvSubMsec() to lib/util.c.
1128 - Moved accessLogTime() to debug.c.
4d1c96c0 1129 - Fixed handling of race condition in icpHandleIMSReply().
1130 - Fixed "\r\n\0" bug in gopherSendRequest();
1131 - Fixed cachemgr output for non-table browsers (Cord Beermann).
1132 - Moved accept() for dnsserver into Squid.
67e7a3e0 1133 - New SVR4 config stuff in contrib directory (Markus Gyger).
a88cc58a 1134 - Includes squid-1.0 changes up to 1.0.17.
73d94b9e 1135 - Fixed storeWriteCleanLog() bug which caused released objects
1136 to be kept.
0ac25a67 1137 - Added *FreeMemory() routines.
67508012 1138
1139Changes to squid-1.1.beta3 (September 16, 1996):
86ee2017 1140
1141 - s/()/(void)/
1142 - Fixed 8k page leak in icmpRecv().
473471f2 1143 - Use strerror() if available instead of sys_errlist[].
1144 - Misc ANSI-related cleanup.
d4488506 1145 - Added 'cache_stoplist' to specify things which should
1146 never get saved to disk.
1147 - Merged some parsing routines into parseWordlist().
1148 - Fixed icpHandleIMSReply() bug when HTTP reply headers
1149 received in multiple reads.
1150 - Changed all ipcache_nbgethostbyname() handler functions
1151 to be void.
1152 - Fixed bug when storeLockObject() fails for UDP_HIT_OBJ
1153 replies.
1154 - Simplified storeGet().
1155 - Removed meta_data.hash_links member.
caebbe00 1156 - Includes squid-1.0 changes up to 1.0.16.
e1d9800b 1157 - s/__STRICT_ANSI__/__STDC__/g
86ee2017 1158
67508012 1159Changes to squid-1.1.beta2 (September 12, 1996):
4c5cabe1 1160
49e75273 1161 - Switched to ANSI style coding.
b8d8561b 1162 - Fixed UDP_HIT_OBJ objects ignoring 'proxy-only' setting.
4c5cabe1 1163 - Added setting cachemgr.cgi fields from query string
1164 (Neil Murray).
1165 - Split log type TCP_IFMODSINCE into TCP_IMS_HIT and
1166 TCP_IMS_MISS
1167 - Replaced proto_hit() and proto_miss() with proto_count()
1168 which looks at log_type argument to calcultate hits
1169 and misses.
1170 - Split CacheInfo into HTTPCacheInfo and ICPCacheInfo.
1171 - Placed call to proto_count() just after log_append()
1172 so we only need it in one place.
1173 - Made a lot of proto.c functions static and added prototypes.
ce2869d0 1174 - Fixed icpProcessRequest() bug. Need to check EXPIRED
1175 before IMS.
eebe8724 1176 - Fixed aclDestroyDenyInfoList() to NULL free'd lists.
1177 - Fixed storeDirClean() to unlink files which should be
1178 directories (Cord Beerman).
be083e42 1179 - Added ICMP support. Source ping will use ICMP packets if
1180 compiled with -DUSE_ICMP=1 and started with root privleges.
4c5cabe1 1181
a09d6f9d 1182Changes to squid-1.1.beta1 (September 12, 1996):
36fd4d12 1183
1184 - Fixed stupid coredump bug in storeGetSwapSpace().
1185 - Cleaned up gopher.c; prototypes, make functions static, etc.
1186 - Added READ_DEFERRED entry flag. Only extend lifetime when
1187 first entering deferred mode.
1188 - Added debug_trap() to replace some fatal_dump()'s. Now use
1189 debug_trap for non-fatal errors. If -C option is set,
1190 then debug_trap is the same as fatal_dump.
1191
7690e8eb 1192Changes to squid-1.1.alpha18:
1193
7939435c 1194 - Fixed storeCheckPurgeMem() to both 'purge' *and* 'release'
1195 objects as needed.
7690e8eb 1196 - Fixed up RWStateCallbackAndFree() to prevent it from getting
1197 called twice.
1198 - Added 'deny_info' support for redirecting denied requests to
1199 a specific URL (maex@space.net).
1200 - Fixed protoUnregister() to not abort objects being swapped in.
d54ac2a3 1201 - Fixed parent-stays-dead-bug by removing PING_WAITING
1202 check in icpHandleIcpV?().
7690e8eb 1203 - Changed debug log timestamp format.
1204 - Fixed coredump-causing bugs in icpHandleIMSReply().
1205 - Fixed FMR bug in neighborsUdpAck() for UDP_HIT_OBJ replies.
1206 - Fixed up InvokeHandlers() to clear handler before calling.
35b9d444 1207 - Added -k signal option to signal a running Squid (Markus Gyger).
c28f8352 1208 - Removed dynamic_array code.
7939435c 1209
1ee4fb1a 1210Changes to squid-1.1.alpha17:
1211
1212 - Added more IMS support. Now Squid issues IMS requests for
1213 expired objects in the cache. Log type will be either
1214 TCP_EXPIRED_HIT if the server sends "304 Not Modified" or
1215 TCP_EXPIRED_MISS if the server send a new object.
49789bff 1216 - Added Config.expireAge and 'expire_age' to config.
1ee4fb1a 1217 - Fixed storeGetMemSpace() bug; need to check
1218 storeCheckPurgeMem() instead of storeEntryLocked().
1219 - Renamed icp_hit_or_miss() to icpProcessRequest().
1220 - Changed mkrfc850() to use normal variable instaed of a
1221 pointer.
1222 - Removed store_entry member from fd_table[] in comm.h.
1223 - Changed httpSendRequest to not tack Squid onto the 'User-Agent'
1224 line, Use HTTP/1.1 'Forwarded' instead.
1225 - Removed icpProcessHIT() which only called icpSendMoreData().
1226 - Removed icpProcessIMS() which only called icpGetHeadersForIMS().
1227 - Removed some 'Reset header fields for reply' crap.
1228 - added old_entry member to icpStateData for handling IMS
1229 requests.
1230 - Added 'locks' member to ipcache_entry; need to lock an
1231 ipcache entry during ipcache_call_pending().
1232 - Removed ipcache_call_pending_badname().
1233 - Cleaned up setting/clearing IP_LOOKUP_PENDING bit.
1234 - Removed storeEntryLocked() trap in storePurgeMem().
1235 - Added storeCheckExpired().
1236 - Removed storeWalkThrough() and removeOldEntry(), changed
1237 storePurgeOld() to do the walking through instead.
30ba5128 1238 - Added storeConfigure() so HUP signal affects store_swap size.
49789bff 1239 - Replaced some parsing functions with parseMinutesLine().
1240 - Added StoreEntry flag bit ENTRY_NEGCACHED.
1241 - Added storeNegativeCache().
1ee4fb1a 1242
1c481e00 1243Changes to squid-1.1.alpha16:
1244
e4289d4f 1245 - Fixed ipcache TTL bug from new ipcache_parsebuffer().
1246 - Copied recent ipcache.c changes to fqdncache.c
1247 - Copied icpHandleIcpV2() fix to icpHandleIcpV3().
1248 - incorporate squid-1.0.12 changes.
1249
70cbd177 1250Changes to squid-1.1.alpha15:
1251
1252 - Removed 'bad swap_status' trap in icpHandleIcpV2.
1253 Now skip ICP replies for StoreEntry's with ping_status
1254 != PING_WAITING.
1255 - Fixed numerous compiler problems.
1256
1450414d 1257Changes to squid-1.1.alpha14:
1258
1259 - Fixed ENTRY_DISPATCHED bug. ENTRY_DISPATCHED was not always
1260 getting set (e.g. for requests matching hierarchy_stoplist).
1261 This could cause multiple calls to storeAbort() for the same
1262 entry.
1263 - With ENTRY_DISPATCHED now fixed, call squid_error_entry()
1264 from protoUnregister() for StoreEntries which have not
1265 been dispatched.
1266 - Fixed 'quick_abort' parsing bug.
1267 - NULL terminate too-long URL strings in urlParse(). Still
1268 need fix to somehow handle these.
d5d836c0 1269 - Added shadow password patch from John Saunders
1270 <johns@rd.scitec.com.au>
1450414d 1271 - Added _dns_ttl_ hack from bne@CareNet.hu to get real TTL
1272 values from DNS queries. See Release-Notes-1.1.txt for more
1273 info.
d5d836c0 1274 - Added better '304 Not Modified' reply from Jaeyeon Jung
1275 <jyjung@cosmos.kaist.ac.kr>.
17d32ba1 1276 - Rewrote ipcache_parsebuffer().
1450414d 1277 - Fixed stupid clientProxyAuthCheck() bugs.
1278 - Made IP cache size configurable with 'ipcache_size'.
1279 - Fixed bug parsing 'cache_swap_low'.
1280 - Added -b option to ftpget to limit data transfer rate
1281 (bytes/sec). Specify on 'ftpget_options' in config file.
1282 - Miscellaneous filedescriptor management cleanup.
1283 - Renamed function getFromCache() to protoStart().
6bf5b6ec 1284 - Added delays when forking dnsservers, redirectors, and
1285 ftpget.
1450414d 1286 - Includes 1.0 changes up to 1.0.11.
1287
1288Changes to squid-1.1.alpha13:
1289
1290 - oops, there was no alpha13.
46aea673 1291
d744f553 1292Changes to squid-1.1.alpha12:
1293
57b7e562 1294 - Rewrote storeGetMemSpace().
1295 - Fixed hot_vm accounting; only count objects which are added
1296 to the IN_MEMORY table.
616e163d 1297 - Changed protoUndispatch() to never call squid_error_entry().
57b7e562 1298 Should fix storeSwapOutHandle() and 'HELP! Someone is
1299 swapping out a bad entry' coredumps.
1300 - Report all error pages to the debug log.
d744f553 1301 - Added -i option which forces IP cache entry to be invalidated
1302 just after an object retrieval begins.
af00901c 1303 - Includes all squid-1.0 changes up to squid-1.0.10.
2546fcb3 1304 - Added patch from srb@cuci.nl (Stephen R. van den Berg) for
1305 - ttl_force_pattern
1306 - quick_abort min pct max
1ce5b828 1307 - Added a proxy authentication patch from Jon Thackray
1308 <jrmt@uk.gdscorp.com>. Must add -DUSE_PROXY_AUTH=1 to src/Makefile.
c85e0538 1309 - Cleaned up calling maintenance functions from main().
616e163d 1310
dd263318 1311Changes to squid-1.1.alpha11:
1312
1313 - Fixed sscanf() bug in storeDirClean()
1314 - Fixed coredump in squid_error_entry() on Config.errHtmlText.
dfdb0343 1315 - Added redirector stats entry to cachemgr.cgi.
dd263318 1316 - Call ipcache_purgelru() during an idle timeout.
1317 - Changed fqdnFromAddr() to copy inet_ntoa() result into a
1318 static buffer.
1387baa5 1319 - Fixed storeDirClean() printf format.
dd263318 1320
9cc8a658 1321Changes to squid-1.1.alpha10:
1322
2e0569ed 1323 - Fixed directory increment bug in storeDirClean().
9cc8a658 1324 - Misc little changes trying to track town random coredumps.
1325 - Includes all squid-1.0 changes up to squid-1.0.8.
2e0569ed 1326
004b3381 1327Changes to squid-1.1.alpha9:
1328
1329 - Fixed parsing of redirected URLs.
1330 - Changed URL redirection to pass in client address, ident, and method.
1331 - Fixed NULL pointer coredump in log_append().
1332 - Don't swap negative-cache objects to disk (storeCheckSwappable())
1333 - Only purge MemObject if entry is swapped to disk.
1334 - Includes all squid-1.0 changes up to squid-1.0.7
cd2e6c01 1335 - Fixed purify free memory errors in clientAccessCheck().
004b3381 1336
642a7c42 1337Changes to squid-1.1.alpha8:
1338
eaa77841 1339 - Removed all references to hierarchy.log.
1340 - Changed hierarchy_log_append() to hierarchyNote() and added
1341 _hierarchyLogData structure.
642a7c42 1342 - Fixed "tty input" bug where a reverse lookup request was
1343 written to stdout.
1344 - Cleaned up pointers in protoUnregister().
0a5b9b32 1345 - Includes all squid-1.0 changes up to squid-1.0.6.
2546fcb3 1346 - cache_swap 0 is allowed (proxy only server, no swapping), mainly
1347 intended for fast maintenance startups where the system already
1348 has to be running, but the disk(s) have not been fsck'd yet.
1349 - quick_abort actually works now
1350 - quick_abort functionality made conditional
1351 - ttl_pattern storage wasn't being cleaned upon a reread of
1352 the config file (the patterns were added only, got duplicates)
1353 - ttl_force_pattern a new config option to override the settings
1354 of certain pages despite (or because) of enforced low expiry times
2546fcb3 1355
98d030e6 1356Changes to squid-1.1.alpha7:
1357
c10b625a 1358 - Added 'tcp_recv_bufsize' option to config.
1359 - Changed NEIGHBOR to SIBLING where appropriate.
1360 - Split UDP_HIT_OBJ into {PARENT,SIBLING}_UDP_HIT_OBJ
1361 - Misc casts and cleanup from running Insight.
1362 - Replaced all get*() functions with direct references to
1363 Config structure.
98d030e6 1364 - Removed 'http_stop', 'ftp_stop', and 'gopher_stop' from config.
1365 - Added 'ssl_proxy' config for forwarding all SSL requests to
1366 another proxy.
1367 - Includes all squid-1.0 changes up to squid-1.0.5.
c10b625a 1368
40878e17 1369Changes to squid-1.1.alpha6:
1370
1371 - Changed storage manager to use a two level directory
1372 structure. This makes squid-1.1 incompatible with squid-1.0!
4349cb51 1373 (Mark Treacy).
40878e17 1374 - Added last modification time to the StoreEntry structure, and
1375 the swap log.
1376 - Changed how memory passed to comm_write() gets freed. Now
1377 pass in a free handler function which gets called when the
1378 RWStateData structure is destroyed.
1379 - Other misc cleanup.
1380 - Added a reverse-address-lookup cache (``fqdncache'').
1381 - Added support for threaded ACLs for destination IP addresses
1382 and source hostnames.
1383 - Use aclMatchDomainList() instead of aclMatchWord() for domain names.
1384 - Renamed cachemgr 'stats/general' to 'stats/ipcache'.
1385 - Added 'log_fqdn' option to config file.
1386 - Added 'client_netmask' to config file.
1387
baa49bd2 1388Changes to squid-1.1.alpha5:
fb3310f1 1389
baa49bd2 1390 - Got Asynchronous I/O stuff to compile and run on IRIX 5.3
fb3310f1 1391 - Cleaned up diskHandleWrite()
1392 - Added free() handler to struct dwrite_q so diskHandleWrite()
1393 can free memory after its been written.
1394 - Changed file_open() to not allow files to be opened O_RDWR.
1395 - Changed file_open() to always set O_APPEND for O_WRONLY files.
14ea2549 1396 - Includes all squid-1.0 changes up to squid-1.0.2.
fb3310f1 1397
499109b3 1398Changes to squid-1.1.alpha4:
1399
1400 - Fixed Asynchronous Disk I/O routines to basically work.
1401 - Fixed memory write bugs when using the redirector.
1402 - Added support for non-anonymous FTP urls without needing a
1403 password in the URL.
1404
27386800 1405Changes to squid-1.1.alpha4:
1406
1407 - Changed cachemgr detailed filedescriptor info to be a separate item.
1408 - 'no-cache' reload now discards bad IP cache entries too.
1409 - Added 'echo request' URL hack: http://cachehost:3128/echo
1410 - Added URL redirector feature.
1411 - Addeed 'ident_lookup' option to config file
8929e8c7 1412 - Fixed http to never rely on blocking IP cache lookups.
1413 - Removed need for locked IP cache entries.
f13e2386 1414 - Changed free page stacks to always free pages if more than
1415 'max' are allocated.
27386800 1416
1ef4c6c1 1417Changes to squid-1.1.alpha3:
983061ed 1418
898f5d1d 1419 - Added Asynchronous Disk I/O routines from Pete Bentley.
27386800 1420 (NOTE, not yet working for IRIX 5.3).
1ef4c6c1 1421 - Made squid native access log the default format.
1422
1423Changes to squid-1.1.alpha2:
1424
1425 - Added support for RFC931/ident
1426
1427==============================================================================
9cc8a658 1428
6d2296d4 1429Changes to squid-1.0.18 (October 7, 1996):
1430
1431 - Added INADDR_NONE to cachemgr.c for Solaris.
1432 - Added checks to deal with Harvest Cached neighbors which don't
1433 handle Squid's ICP version 2.
1434
233794cd 1435Changes to squid-1.0.17 (September 24, 1996):
1436
1437 - Fixed cachemgr.cgi to handle an arbitrary IP address (Ron
1438 Gomes)
1439 - Fixed syslog() calls to use syslog(X, "%s", buf) (Yoichi
1440 Shinoda).
1441 - Copied ipcache locking stuff from v1.1.
1442 - Copied httpConnect() from v1.1 for non-blocking DNS lookups.
1443 - Fixed "\r\n\0" bug in gopherSendRequest();
1444
caebbe00 1445Changes to squid-1.0.16 (September 16, 1996):
1446
1447 - Fixed shadow passwd support (John Saunders).
1448 - Added checkFailureRatio() to detect high fail:success ratios
1449 and go into ICP "hit only" mode for 5 minutes when the ratio
1450 exceeds 1.
1451 - Added ip_acl_destroy() to reset 'local_ip' and 'firewall_ip'
1452 on HUP signal.
1453
1454Changes to squid-1.0.15 (September 13, 1996):
1455
1456 - Fixed stupid bugs from moving icpState->flags to
1457 request->flags.
1458
1459Changes to squid-1.0.14 (September 13, 1996):
1460
1461 - Added '#if DELAY_HACK' code for Mike Groeneweg
1462 <mikeg@scorpion.murdoch.edu.au>.
1463 - Fixed debug bug in ttlSet().
1464 - Moved icpState->flags to request->flags.
1465 - Fixed edgeWouldBePinged() to skip SIBLINGS and NO-CACHE
1466 requests.
1467 - Fixed bad SET/TEST in httpProcessReplyHeader() (Miguel A.L.
1468 Paraz).
1469
1470Changes to squid-1.0.13 (September 12, 1996):
1471
1472 - Fixed ftpget parsing PASV reply bug (Carson Gaspar).
1473 - Forced include of <netinet/in_systm.h> for NeXT (Holger
1474 Hoffstaette).
1475 - Promulgate tcp_outgoing_addr to ftpget with -o option (Edward
1476 Moy).
1477 - add Date: header to Squid-generated Gopher objects (Geoffrey
1478 Keating).
1479 - cachemgr.cgi HTML fixes (Cord Beermann).
1480 - Collapsed some config parsing functions to parseOnOff().
1481 - Added config option: memory_pools on|off
1482 - Added config option: udp_hit_obj on|off
1483 - Added config option: forwarded_for on|off
1484 - Copied better stmem.c and stack.c routines from v1.1 code.
1485 - Added support for HTTP/1.1 Cache-Controls 'private' and
1486 'no-cache'.
1487 - Copied dnsserver "hello/alive" test from v1.1 code.
1488
1c481e00 1489Changes to squid-1.0.12 (September 3, 1996):
1490
1491 - Fixed urlCheckRequest() to allow CONNECT/SSL requests.
1492 - Change default socket send/receive buffers to 16k (in
1493 configure) instead of 8k, mainly for Solaris.
1494 - Fixed urlParse() to remove trailing dots from hostnames.
1495 - Added 'ttl_pattern/i' config tag for case-insensitive
1496 regular expressions.
1497 - Fixed swapin_complete_handler FMW bug in storeSwapInHandle().
1498 - Removed 'Invalid object detected' trap in storeValidToSend().
1499
a8f7d3ee 1500Changes to squid-1.0.11 (August 30, 1996):
1501
1502 - Fixed ENTRY_DISPATCHED bug. Now set ENTRY_DISPATCHED
1503 only in getFromCache().
1504 - Added missing newlines to a number of debug messages.
1505 - NULL-terminate long URL's in urlParse().
1506 - Changed configure to remove libmalloc for FreeBSD
1507 - Changed ftpget to assume a single space between date and
1508 filename in Unix sytle listings.
1509 - Added urlCheck() to check for supported method/protocol
1510 combinations and return "501 Not Implemented" when
1511 appropriate.
1512 - Added ftpget check for negative port numbers in PASV
1513 reply.
1514 - Added shadow password support for cachemgr shutdown.
1515
af00901c 1516Changes to squid-1.0.10 (August 26, 1996):
1517
1518 - Fixed INADDR_NONE not being set for ftpget.c.
1519 - Remove "Connection: Keep-Alive" lines from HTTP requests
1520 since Squid doesn't support them.
1521 - Fixed IP Address/netmask bug. Now 1.2.3.4/255.255.255.0 is
1522 equivalent to 1.2.3.0/255.255.255.0.
1523
1524Changes to squid-1.0.9 (August 22, 1996):
1525
1526 - Cleaned up ipcache_purgerlu().
1527 - Fixed ipcache_gethostbyname() to release expired entries.
1528 - Added check for numeric addresses to ipcache_nbgethostbyname().
1529 - Added Date: field to ftpget's HTTP header output.
1530 - Added temporary hack to httpProcessReplyHeaders() to allow
1531 caching of non-HTTP objects fetched from neighbors when
1532 the header does not have Date, Expires, or Last-Modified.
1533 - Added a check for a valid ICP socket before sending ICP
1534 queries.
1535 - Fixed SSL code to unregister DNS lookups if client aborts.
1536 - Removed lib/host_cache.c from distribution.
1537 - Made IP cache stats output sorted by last reference.
1538 - Added ICP internet-draft to docs directory.
1539
9cc8a658 1540Changes to squid-1.0.8 (August 19, 1996):
1541
1542 - Added ftpget fixes from carson@lehman.com and moy@parc.xerox.com.
1543 - Fixed -s option to enable syslog logging.
1544 - Added 'err_html_text' for configurable error messages.
1545 - Fixed protoDispatchDNSHandle() to not try a direct fetch if
1546 host is beyond firewall_ip list.
1547 - Changed storeDirClean() to handle one directory per call and
1548 not keep the dirhandle open between calls.
1549 - Changed .zip MIME type to "application/x-zip-compressed".
1550 - Added new 'url_regex' ACL type, regular expression match over
1551 the whole URL.
1552 - Removed xrealloc() call from storeClientListAdd().
1553
004b3381 1554Changes to squid-1.0.7 (August 14, 1996):
1555
1556 - Added "store_clean" routines to periodically remove orphaned
1557 swap files.
1558 - Increased StoreEntry->method_t from 3 to 4 bits, probably fixes
1559 storeGenerate*Key() coredumps.
1560 - Added debugging to examine_select().
1561 - Added peer address to debugging for Ignored ICP packets.
1562
65159151 1563Changes to squid-1.0.6 (August 12, 1996):
1564
1565 - Fixed coredump in icpStateFree() for bad requests.
1566 - Fixed configure bug in determining FD_SETSIZE.
1567 - Fixed garbage collection to stop if SIGTERM received.
1568 - Fixed pid file to be written just before 'ready to serve requests'.
1569 - Fixed CheckQuickAbort() lock_count bug.
1570 - Fixed setting the hierarchy code for access.log when the
1571 hierarchy.log is disabled.
1572 - Fixed urlParse() to fail for URLs longer than MAX_URL bytes.
1573 - Fixed icpDetectClientClose() to detect TCP half-close and
1574 not abort the connection.
1575
1576Changes to squid-1.0.5 (July 25, 1996):
1577
1578 - Added ICP_OP_RELOADING to be used instead of ICP_OP_DENIED
1579 for -Y option.
1580 - Moved hierarchy_code for access.log from MemObject to
1581 request_t so simultaneous client readers don't get the same
1582 hierachy code.
1583
1584Changes to squid-1.0.4 (July 24, 1996):
1585
1586 - Fixed ftpget logic/precedence bug
1587 - Fixed ttlSet() to choose TTL as offset from when the object
1588 was originally served, not the current time.
1589 - Fixed configure bug with setting GETTIMEOFDAY_NO_TZP.
1590 - Removed unnecessary call to ipcache_gethostbyname() in
1591 sslConnect().
1592 - Fixed stupid memset() bug in gopher.c causing
1593 a huge block of stack memory to be zeroed.
1594
1595Changes to squid-1.0.3 (July 18, 1996):
1596
1597 - Fixed FTP to send 'Ascii' or 'Binary' based on MIME encoding,
1598 not content-type.
1599 - Changed icpHierarchical() to allow IMS requests to neighbors
1600 if they all support Squid's private keys.
1601 - Fixed icpUdpSend() to not ask for a HIT_OBJ reply if the
1602 HTTP request included 'Pragma: no-cache'.
983061ed 1603
14ea2549 1604Changes to squid-1.0.2 (July 16, 1996):
1605
1606 - Fixed HTTP code in access.log for TCP_IFMODSINCE requests.
1607 - Fixed SSL to not read again until previous write is complete.
1608 - Added CPU usage percentage in cachemgr 'info' output.
1609 - Fixed bug when removing a neighbor. Forgetting to decrement
1610 friends->n causes a duplicate ICP query to be sent in
1611 neighborsUdpPing().
1612 - Increased some MAX_URL sized character buffers to prevent
1613 overflows.
1614
30a4f2a8 1615Changes to squid-1.0.1 (July 8, 1996):
1616
1617 - Fixed ftpget server looping on socket EOF condition.
1618 - Fixed SA_RESETHAND undefined bug.
1619 - Fixed half-hour timezone offset bug.
1620 - Fixed parse_rfc850() to return -1 instead of 0 upon error.
1621 - Added patch for Motorola systems from Tony Lorimer.
1622 - Added support for HTTP PUT method.
1623 - Added check for <netinet/tcp.h> for HP-UX.
1624 - Added GNU General Public License.
1625 - Changed ttlSet() to use Date field if Last-Modified is absent.
1626 - Changed http.c to not save objects from neighbors which do
1627 not have Date, Last-Modified, or Expires values.
1628 - Changed some large local character arrays to static.
1629
1630Changes to squid-1.0.0 (July 1, 1996):
1631
1632 - Fixed beta17 "fd_lifetime" typo bug
1633 - Added 'firewall_ip_list' to configuration options
1634 - Set resolver options to disable searching default domains
1635 and parent domains.
1636 - Added blocking-rebuild -F option.
1637 - Fixed storeMaintainSwapSpace to be called every 10 seconds.
1638 - Fixed ICP_HIT_OBJ bug causing objects to get stuck in VM.
1639 - Fixed matching the ends of domain names (e.g. bar.com no
1640 longer matches foobar.com).
1641 - Fixed checking return code from fprintf() while writing the
1642 clean swap log.
1643 - Fixed fatal_dump from storeSwapoutHandle running out of disk
1644 space.
1645 - Added disabling of a neighbor cache if 95% of replies are
1646 UDP_DENIED.
1647 - Added accounting for misc memory/data structures
1648 - Added 'no-query' option for 'cache_host' config line
1649 - Added error reporting to SSL requests.
1650 - Fixed SSL bug, client abort was not closing the server
1651 side connection.
1652 - Fixed checking hierarchy_stoplist bug.
1653 - Fixed ipcache error messages by giving each entry its
1654 own string.
1655 - Use sigaction() instead of signal() if available.
1656 - Fixed ipcache bug causing some lookups to get stuck in
1657 PENDING state if all dnsservers are busy.
1658 - Fixed domain name matching bug when using '.com' instead of
1659 'com'.
1660 - Fixed close_handler coredump bug in comm.c.
1661 - Removed unnecessary DNS lookup of hostnames in WAIS URLs.
1662
1663Changes to squid-1.0.beta17 (June 12, 1996):
1664
1665 - Fixed another ipcache coredump problem where an entry could
1666 be released between writing to and reading from dnsserver.
1667 - Fixed store.c bug of purging aborted objects.
1668 - Cleaned up checkLifetimes() function to make it simpler.
1669 - Added visible_hostname support to ftpget.
1670 - Fixed null edge dereferencing bug for UDP_HIT_OBJ.
1671
1672Changes to squid-1.0.beta16 (June 10, 1996):
1673
1674 - Fixed two coredump-causing bugs in ipcache_unregister().
1675 - Changed 'close_handler' to a linked list.
1676 - Changed freeing of protodispatch_data structures to use
1677 new close_handler (attached to client FD).
1678 - Fixed URL handling to accomodate browswers which do not handle
1679 relative URL parsing.
1680
1681Changes to squid-1.0.beta15 (June 9, 1996):
1682
1683 - Fixed storeSwapoutHandle coredump bug
1684 - Fixed DNS lookup failure of neighbor hosts after a few hours
1685 of operation
1686 - Changed memcpy() to memmove() for overlapping memory copies
1687 - Changed store rebuidling to unlink the log-last-clean file
1688 in case of a crash during rebuild
1689 - Added forwarding loop detection
1690 - Changed all memcpy to use xmemcpy which is memmove, bcopy, or
1691 memcpy.
1692 - Fixed coredump bug from partial dnsserver reads, manifest on
1693 FreeBSD and NetBSD.
1694
1695Changes to squid-1.0.beta14 (June 7, 1996):
1696
1697 - Fixed coredump bug in icp.c when generating ``Not Modified''
1698 replies.
1699 - Fixed SSL bug which assumed the requested host name would
1700 already be in the IP cache.
1701 - Fixed names of generated HTTP reply headers.
1702
1703Changes to squid-1.0.beta13 (June 7, 1996):
1704
1705 - Fixed coredump bug where StoreEntry key was free'd too soon.
1706 - Fixed UDP_HIT_OBJ bug: cancel the hierarchy timeout and set
1707 the ping_status to DONE for UDP_HIT_OBJ replies.
1708
1709Changes to squid-1.0.beta12 (June 6, 1996):
1710
1711 - Fixed problem when using udp_outgoing_addr where no ICP
1712 packets would be recieved because they were getting sent
1713 to the "outgoing" instead of the "incoming" socket.
1714 - Fixed objects hanging around in cache after a keychange.
1715 - Added ability to restrict neighbor caches with ACLs.
1716 ('cache_host_acl').
1717 - Fixed ssl FD mismatch bug.
1718 - Fixed INADDR_NONE bug on 64bit systems.
1719 - Fixed store rebuilding bug; temporary log file was not being
1720 truncated.
1721 - Made all external processes communicate with TCP sockets
1722 (no more Unix domain sockets).
1723 - Semi-major rewrite of ipcache implementation.
1724 - Fixed a couple memory bugs found by purify.
1725 - Fixed sending large (>8192 bytes) HTTP requests.
1726 - Added "lazy" server IP address ACL checks (type 'dst').
1727 - Changed handling of IMS requests. Now will return "304
1728 Not Modified" if the requested object is in the cache
1729 and not expired.
1730
1731Changes to squid-1.0.beta11 (June 1, 1996):
1732
1733 - Fixed serious memory leak of MemObject->reply structures.
1734
1735
1736Changes to squid-1.0.beta10 (May 31, 1996):
1737
1738 - Fixed bug when request arrives in fragmented IP packets.
1739 - Fixed ACL bug which denied cache manager access while in
1740 httpd_accel mode.
1741 - Changed ftpget to "fail nicely" for sites which do not allow
1742 PORT requests (if compiled with PASVONLY).
1743 - Fixed Unix domain socket off-by-one bug in ftpget.
1744 - Fixed lingering sockets after shutdown by SIGTERM.
1745 - Added dnsserver use histogram to ipcache stats.
1746 - Changed domain ACL's to match only the end of the hostname, not
1747 just anywhere in the string.
1748 - Fixed setuid bugs when pid_filename was not defined
1749 - Fixed zero-sized object getting stuck in VM.
1750 - Configure checks for working UNIX domain stream sockets
1751 - Rotate cache.log before the others
1752 - SIGUSR2 now toggles between full and normal debugging
1753 - Close and restart ftpget server during logfile rotation
1754 - Added memory pools for request_t and MemObject data structures.
1755 - Added new address binding options for more control
1756
1757Changes to squid-1.0.beta9 (May 23, 1996):
1758
1759 - Fixed storeToString() coredump bug on 'swap_buf'
1760 - Added back the CIDR notation functionality to decoding IP
1761 address ACLs.
1762 - Fixed ftpget listing parsing coredump bug.
1763 - Fixed neighborsUdpAck() coredump for late-arriving ICP replies.
1764
1765Changes to squid-1.0.beta8 (May 22, 1996):
1766
1767 - More friendly CFLAGS and LDFLAGS for configure
1768 - ACL_ALLWEEK bugfix
1769 - Added missing increment of UDP connection counter.
1770 - Changed ftpget select to check for EWOULDBLOCK/EAGAIN
1771 (workaround for broken Solaris select(2)).
1772 - Fixed MALLINFO calls for Linux
1773 - Fixed strerror() problems on SunOS 4.1.x
1774 - Fixed DefaultAnnounceRate; set to zero by defult.
1775 - Changed all port variables to u_short.
1776 - Created AF_UNIX versions of comm_open(), comm_connect().
1777 - Changed ftpget server to use UNIX domain socket.
1778 - Removed RESET_SIGNAL_HANDLER check--always reset the signal
1779 handler.
1780 - Added instrumentation of basic IPCache stats.
1781 - Fixed calculation of neighbor average RTT.
1782 - Added 'outbound_addr_list' to config
1783 - Change getFirstParent() to getFirstUpParent().
1784 - Changed ftpget to use an additional pipe() for crash detection
1785 - Added ICP_OP_DENIED message type
1786 - Added patches for Nextstep port from Luke Howard
1787 <lukeh@vurt.schnet.edu.au>
1788 - Added a lifetime to HTTP server connections being deferred.
1789 - Added IP address ranges in 'src' ACLs
1790 - Added FQDN's in 'src' ACLs
1791 - Fixed request structure free-memory-read/coredump bug.
1792 - Changed icp.c to select on client socket to detect aborts.
1793 - Better compliance with HTTP/1.1 *DRAFT* regarding which reply
1794 codes can be cached.
1795 - Added 'hierarchy_stoplist' configuration option.
1796 - Changed mallopt option M_MXFAST to 512 bytes.
1797 - Added -Y option to only return UDP_HIT or UDP_DENIED during
1798 store reload.
1799 - Added UDP_HIT_OBJ type. Just like a UDP_HIT, but object data
1800 is returned in the UDP packet if it will fit; saves a TCP
1801 connection. Not compiled in by default, add -DUDP_HIT_WITH_OBJ
1802 to src/Makefile DEFINES.
1803
1804Changes to squid-1.0.beta7:
1805
1806 - Fixed comm_udp_sendto continuous loop bug
1807 - Fixed URLs-with-colon-but-no-port-number bug
1808 - Fixed sending ICP queries for HEAD requests
1809 - Changed 'server_list' output. Added RTT, Fetches, Hits, Misses,
1810 and percents.
1811 - Fixed setuid bug causing some logs to be owned by root.
1812 - Fixed virtual host mode (-V option)
1813 - Added read(2) instrumentation for HTTP and FTP.
1814 - Changed neighbor initialization to continue if DNS lookup fails.
1815 - Lint cleanup
1816
1817Changes to squid-1.0.beta6:
1818
1819 - Fixed null error message coredump in ftpget.
1820 - Added -m Method option to `client'.
1821 - Fixed ftpget server bug with missing trailing slash.
1822 - Removed 'connect_ports' from config, use general ACLs instead.
1823 - Changed requested listen queue length to 1/4 of getMaxFD().
1824 - Rewrote SSL/CONNECT handlers. Now doesn't use a StoreEntry.
1825 - Fixed some aborted objects getting stuck in VM bug.
1826 - Fixed ftpget PASV reply sscanf to work for VMS ftpd.
1827 - Changed FTP URL parsing to use urlParse().
1828 - Changed ftpget to skip RETR command if URLs ends with '/'.
1829 - Changed ftpget to display README at the bottom if there are other
1830 server messages.
1831 - Changed ftpget to not reopen a new data connection
1832 if one is already open.
1833 - Fixed handling of FTP URLs with spaces (and other unsafe characters)
1834 - Changed ftpget to only generate BASE HREF if the FTP URL does
1835 not end with '/'.
1836
1837Changes to squid-1.0.beta5:
1838
1839 - Fixed cachemgr to send 'HTTP/1.0' on request so it works
1840 with beta4 fixes to icp.c.
1841
1842Changes to squid-1.0.beta4:
1843
1844 - Added a handler to restart the ftpget server.
1845 - Fixed access checks for ICP by parsing the requested URL.
1846 - Added "magic marker" to ftpget-generated errors so they can
1847 be negative-cached.
1848 - Added a small run-time check to configure to see if signal
1849 handlers should be restarted after invocation (ala SYSV).
1850 - Determine Maximum filedescriptors in configure and change
1851 FD_SETSIZE if needed.
1852 - Changed read stall algorithm for HTTP. No don't wait until
1853 the object is in DELETE_BEHIND mode to stall the server read
1854 and wait for the client to catch up. Also changed from 4k to
1855 16k read buffer.
1856 - Fixed HTTP request parsing to check for blank line at the
1857 end of all requests. Symptoms were "connection reset"
1858 messages.
1859
1860Changes to squid-1.0.beta3:
1861
1862 - Added ftpget '-C minport:maxport' option
1863 - Fixed PROTO_MAX fencepost bug in stat_init().
1864 - Fixed Fixed CheckQuickAbort() coredump.
1865 - Fixed disabling store.log and hierarchy.log when set to "none"
1866 - Fixed numerous problems related to setuid().
1867 - Fixed 'check_cache.pl' to use new swaplog format (without "FILE").
1868 - Fixed ACL coredumps when checking NULL words.
1869 - Changed pid_filename to be written and unlinked as root.
1870 - Added "-i seconds" option to 'client' for testing IMS GET.
1871 - Fixed a bug where an IMS request caused the valid object to
1872 get ejected from the cache.
1873 - Fixed continual DEAD_PARENT/REVIVE bug
1874 - Fixed ERR_INVALID_URL bug for URLs with a password field.
1875 - Added to Release-Notes info about converting 'cache/log' and
1876 difference between stoplists and ttl_pattern.
1877
1878Changes to squid-1.0.beta2:
1879
1880 - Fixed /bin/csh "$#argv" leftover in RunCache.
1881 - Fixed ACL day-of-week bitmask bug.
1882 - Fixed missing checks for WAIS in some places.
1883 - Fixed chdir(swappath(0)) bug; do chdir() after storeInit().
1884 - Changed enumerated structure members to be defined outside
1885 of the structure itself (for AIX).
1886 - Changed ftpget to fork before reading the request and make
1887 sure the entire request is read.
983061ed 1888
234967c9 1889Changes to squid-1.0.beta1 (Apr 19, 1996) from Harvest cached-1.4.pl3:
2d15012a 1890
2d15012a 1891 - Added a "server mode" to ftpget. Now the (much smaller)
1892 ftpget process forks for each FTP request.
234967c9 1893 - Added support for If-Modified-Since GET requests.
1894 - Added support for SSL and https objects.
1895 - Added background processing for rebuilding the disk store
1896 while serving requests. Cache can now serve requests immediately.
1897 - Added a 'reconfigure' feature activated by SIGHUP. The config
1898 file is re-read and most changes will take effect.
1899 - Added an internal flag for using private keys with ICP queries
1900 to neighbors. If any neighbor returns a reqnum field of zero,
1901 then disable using private keys. But still use private
1902 keys for things with bypass the ICP query step (such as POST
1903 and IMS-GET).
1904 - Added a function to verify content-lengths. Objects with
1905 mismatched (but non-zero) content lenghts will be ejected.
1906 - Added clean shutdown mode. On SIGTERM the incoming HTTP socket
1907 is closed. Active clients are given a lifetime of 30 seconds
1908 (configurable). Process exits when all sockets are closed.
1909 - Added support for large POST objects.
1910 - Added "store.log" which logs RELEASE/SWAPIN/SWAPOUT events.
1911 - Added announce feature to squid; no longer external program.
1912 If enabled, a running cache will announce itself every 24 hrs.
1913 - Added support for FTP URLs with non-default ports.
1914 - Added new Access Control List scheme.
1915 - Added Forwarded: header to proxy HTTP requests (HTTP/1.1 feature).
1916 - Added weights neighbors.
1917 - Added urlParse() which strips off default ports and
1918 makes hostnames all lowercase.
2d15012a 1919 - Added (section,level) debugging and 'debug_options' config line.
1920 - Added 'pid_filename' to configuration file.
234967c9 1921 - Added 'visible_hostname' to configuration file.
1922 - added 'ftp_user' to configuration file.
1923 - added 'dns_positive_ttl' to configuration file.
1924 - added 'dns_negative_ttl' to configuration file.
1925 - Added 'shutdown_lifetime' to configuration file.
1926 - Fixed bug where cache process would "spin" on large objects
1927 being deferred.
1928 - Fixed byte order conversion bug on setting echo port.
2d15012a 1929 - Changed meaning of command line -b (buffered logs) option.
1930 Now the default behaviour is unbuffered logs, use -b to make
1931 them buffered.
2d15012a 1932 - Changed WAIS code to always be fully compiled in.
234967c9 1933 - Changed the storage manager to use the notion of private and
1934 public keys. Requests are now private until the reply headers
1935 have been read.
1936 - Changed access logging significantly. Entries to "access.log"
1937 are written when the client connection closes. Every connection
1938 is logged exactly once, always with a valid size.
2cf0aa81 1939 - Changed access log format (non-common) to include request
1940 method and sub-second timestamps.
234967c9 1941 - Changed handing of ECONNRESET (connection reset) errors.
1942 Now treated like any other read error.
1943 - Changed 'rotate logs' to be activated by SIGUSR1.
1944 - Changed configure script to look specifically for tm_gmtoff
1945 and set HAVE_TM_GMTOFF.
1946 - Changed configure script to look specifically extended mallinfo
1947 structure and set HAVE_EXT_MALLINFO
1948 - Changed ICP reply code to use negative TTL value as UDP_HIT
1949 threshold so we never return a HIT on neg-cached objects.
1950 - Changed ftpget to use select(2) on I/O for timeouts. ftpget
cdd8d814 1951 now exits immediately if stdin goes away.
234967c9 1952 - Changed handling of '-z' option. Now only execute 'rm -rf ...' if
1953 -U option also given.
1954 - Removed the command line -d (debug) option. Use 'debug_options'
1955 in config file.
1956 - Removed all code and references to binary port.
1957 - Removed dual logging to stderr/cache.log.
1958 - Removed old IP access controls ('proxy_allow', etc.)