More documentation will be written later, explaining how to use the
searchfilter and scope, with examples on how to use this to log in
to Microsoft active directory.
When an URL is found to Vary a dummy placeholder object is created
to hold the Vary header information, and the store key algorithm is
changed to include the indicated headers.
Again, fix bandwidth spikes seen when the origin server did not process
a range request.
Ideally the whole "we_do_ranges" check should only be done once, and replies
should only be range processed if this is true. Currently we have the check
in two, maybe even three places is seems.
adrian [Wed, 4 Apr 2001 02:22:10 +0000 (02:22 +0000)]
Make the location of the diskd program a configurable parameter.
(YAY!).
This is configurable through the "diskd_program" entry in the squid
config file. It defaults to $(libexecdir). This means that
./configure --prefix="" --with-libexec-dir="" should now work properly.
wessels [Thu, 29 Mar 2001 06:24:18 +0000 (06:24 +0000)]
When squid is running in daemon mode, this patch causes the parent
squid to exit if the child squid process was killed with SIGKILL.
Previously the parent would spawn a new child process, making it
difficult to stop squid. We may want to add other signals to
the list as well.
wessels [Wed, 28 Mar 2001 21:45:40 +0000 (21:45 +0000)]
Sanity checking in storeDirGetBlkSize. Currently callers don't
check for errors or abnormal values. Make sure fs.blksize is never
zero upon returning from this function. Use 2048 as a default
block size.
adrian [Mon, 26 Mar 2001 01:08:25 +0000 (01:08 +0000)]
Fix a parameter which should be double instead of int.
Its possible that CPU use could skyrocket if the compiler doesn't
do a friendly int -> double typecast for us, which it doesn't have
to..
Submitted by: Jürgen Sandner <juergen.sandner@baypol.bayern.de>
hno [Thu, 22 Mar 2001 06:41:10 +0000 (06:41 +0000)]
21 mar 2001 Robert Collins
* auth/ntlm/helpers/NTLMSSP/ntlm_auth.c: Send error details within
the squid-helper protocol (Kinkie)
* auth/basic/auth_basic.c: Cleanup multiple requests when
credentials recieved (Rob)
* acl.c: Use the connection credentials when testing for
authentication status. (This fixes a recently introduced bug with
persistent NTLM connections). (Rob)
hno [Sat, 17 Mar 2001 20:31:16 +0000 (20:31 +0000)]
From Robert Collins:
I've implemented pthread_cond* in cygwin (available in the 1.3.0
code - CVS HEAD branch), so the native win32 threaded code is no longer
needed. The in-cygwin implementation runs the existing aufs code nearly
unaltered. The attached patch brings in the same file mode details
already implemented in ufs for cygwin (O_BINARY), not unlinking open
files... and #if tests the scheduler settings which aren't present on
cygwin yet.
wessels [Wed, 14 Mar 2001 02:11:25 +0000 (02:11 +0000)]
sd->log.open() and sd->log.close() are NULL for the "null" storage
system. The code was assuming that these functions are defined
for all storage types. That caused coredumps upon reconfigure. Now
only call those functions if non-NULL.
hno [Mon, 12 Mar 2001 04:55:20 +0000 (04:55 +0000)]
From Robert Collins:
The integer types patch introduced a problem with squid.h including
sys/types.h before defining FD_SETSIZE. This may cause problems on
IRIX, NETBSD, and definately does on cygwin ...
attached is a patch against HEAD to alter the location that the
squid_types.h is pulled in. I've done a make clean with this and it
was fine.
The changes to md5.c & h are because it depends on known int types.
hno [Sat, 10 Mar 2001 07:55:35 +0000 (07:55 +0000)]
auth_rewrite update:
Improved NTLMSSP debugging & reliability
Clearer acl.c logic, catches boundary cases.
"Fail open" configure option for NTLM to degrade gracefully
Should fix the compile issues on Solaris 8
hno [Thu, 1 Mar 2001 10:27:54 +0000 (10:27 +0000)]
From Costas Tavernarakis:
The following resolves squid 2.4 bug that on bugzilla is #79,
"NULL pointer access in storeDirSwapLog while writing icons".
ANSI C defines that integers in bitfields declared as 'int' are
either signed or unsigned, depending on the implementation.
gcc (unless -funsigned-bitfields is used) uses signed integers by
default. Sun cc uses unsinged.
Although not explicitly defined, squid expects the two bitfields
at lines 1324-1325 of structs.h to always be declared as signed,
which is not generally true.
Any portable program should always specify whether bitfield integer
types are signed or not.
hno [Mon, 26 Feb 2001 04:49:07 +0000 (04:49 +0000)]
From Chemolli Francesco:
Support for the types int16_t, int32_t, int64_t and their unsigned
counterparts u_int16_t, u_int32_t, u_int64_t. Legacy support for num32
is provided, but I recommend we deprecate num* types and (where struct
packing is useful) we move in time fully to the new types.
wessels [Sat, 24 Feb 2001 02:42:36 +0000 (02:42 +0000)]
Removing the "state == NULL" assertion in comm_write().
Previously, this assertion was always true because we used
safe_free(state), but then state got MemPool-ified. Although
we did NULL fd_table[fd].rwstate, we didn't NULL 'state'.
The assertion is unneeded because fd_table[fd].rwstate will
always be freed if it is set at the beginning of the function.
wessels [Fri, 23 Feb 2001 04:05:56 +0000 (04:05 +0000)]
Changed the way that we pick between O_NDELAY and O_NONBLOCK for
Solaris. From way back we always used O_NDELAY rather than O_NONBLOCK
for SunOS and Solaris. The actual reasons why we assumed O_NONBLOCK is
broken are forgotten.
Recent evidence indicates that O_NONBLOCK on Solaris (v8) works
correctly and is actually required for detecting EOF on kernel
pipes (e.g. with diskd).
This change will make solaris use O_NONBLOCK if its defined.
hno [Wed, 14 Feb 2001 04:45:48 +0000 (04:45 +0000)]
From Robert Collins:
The bug is really more of an unexpected feature: when testing for
content-type on reply mime headers, messages with no entitie will
never match a mime type, so restrictive access configurations will
not let them though. The bad thing is that 304 responses (along
with 1xx & 204) will never have a content-type header. Therefore
they never match and IMS responses to the client always fail. And
at the moment there is no acl for the status line, so we cannot
let the user decide...
hno [Mon, 12 Feb 2001 03:06:15 +0000 (03:06 +0000)]
Cleanup of how "httpd_accel_port virtual" is handled. Now httpd_accel_port
is always (for accelerated request) used if it is set, and if virtual then
the port number is retreived from
a) Host header (when httpd_accel_uses_host_header is on)
b) Transparent redirection/NAT lookup
c) Local endpoint of the socket
Previosly is was a mix where some always overrode httpd_accel_port, and
in some cases virtual was even ignored causing a port number of 0..
hno [Sun, 11 Feb 2001 21:10:34 +0000 (21:10 +0000)]
Removed some old stale "todo" comments about EWOULDBLOCK which no longer
applies (async-io never returns EWOULDBLOCK on overload in the current
implementation)
hno [Sat, 10 Feb 2001 02:35:10 +0000 (02:35 +0000)]
From Robert Collins:
implements a new acl type rep_mime_type, complementary to
req_mime_type, and a new access list http_reply_access which allows acls
to be applied to replies. The prime target is content-type filtering.
One such example would be to only allow a particular set of users the
ability to download tgz. (ie by combining proxy_auth and rep_mime_type).
I created a new acl type rather than moving the request vs reply header
field decision to the calling routine as that seems to be the approach
all over the place.
hno [Fri, 26 Jan 2001 05:54:52 +0000 (05:54 +0000)]
From Kevin Littlejohn:
makes cache_cf.c not try and figure out nobody and nogroup if it's not
going to use them - ie. if squid is being run as a user instead of as root.
It came up because I don't have a nogroup on my machine.
Additions by Henrik Nordstrom:
cache_effective_group now defaults to the GID of cache_effective_user, or
the current user if not started as root. If can always be specified to some
other value if required, but are then subject to the permissions set by the
os (i.e. only root can set the group to a group where he/she is not a member)
wessels [Thu, 25 Jan 2001 05:38:25 +0000 (05:38 +0000)]
cacheCurrentResFileDescrCnt was reporting "Number_FD" rather than
RESERVED_FD. Note the MIB doesn't have a variable for the number
of filedescriptors currently open.