Ryan Bloom [Fri, 16 Mar 2001 23:04:56 +0000 (23:04 +0000)]
Cleanup the build process a bit more. The Apache configure
script no longer creates its own helper scripts, it just
uses APR's.
Submitted by: jean-frederic clere <jfrederic.clere@fujitsu-siemens.com>
Chuck Murcko [Fri, 16 Mar 2001 07:28:08 +0000 (07:28 +0000)]
This is a fix that went into v1.3 quite a while back, but not into v2.0.
It sorts out the problem when a password protected reverse proxy URL
sends a Proxy-Authenticate to a browser instead of a WWW-Authenticate.
This patch covers the changes to the httpd-2.0 tree.
Submitted by: Graham Leggett
Reviewed by: Chuck Murcko
Bill Stoddard [Fri, 16 Mar 2001 04:17:38 +0000 (04:17 +0000)]
Avoid using sscanf to determine the HTTP protocol number in
the common case because sscanf is a performance hog. From
Mike Abbot's Accelerating Apache patch number 6.
Submitted by: Mike Abbot <mja@trudge.engr.sgi.com>
Reviewed by: Bill Stoddard
Jeff Trawick [Thu, 15 Mar 2001 22:09:27 +0000 (22:09 +0000)]
Fix a security exposure in mod_access. Previously when IPv6
listening sockets were used, allow/deny-from-IPv4-address rules
were not evaluated properly (PR #7407). Also, add the ability to
specify IPv6 address strings with optional prefix length on Allow
and Deny.
Note: A bit more of PR #7407 remains dealing with a problem with
double-reverse lookups when an IPv6 listening socket is used.
Graham Leggett [Wed, 14 Mar 2001 21:16:41 +0000 (21:16 +0000)]
Pull in the Connection handling part of the v1.3 patch for HTTP/1.1.
Some preliminary HTTP/1.1 work
Some comments and fixes
PR:
Obtained from:
Reviewed by:
Greg Stein [Tue, 13 Mar 2001 02:13:55 +0000 (02:13 +0000)]
*) mod_dav.c: allow PUT to a WORKING resource (this actually the only valid
place to do a PUT(!))
*) util.c: add a comment. allow validation to proceed without a lock
database (the rest of the code supported it; one erroneous check disabled
that work)
*) util_lock.c: allow dav_unlock() to be a no-op when a lock provide isn't
present; this allows DELETE to work.
Bill Stoddard [Mon, 12 Mar 2001 17:29:02 +0000 (17:29 +0000)]
*) Reimplement the Windows MPM (mpm_winnt.c) to eliminate calling
DuplicateHandle on an IOCompletionPort (a practice which
MS "discourages"). The new model does not rely on associating
the completion port with the listening sockets, thus the
completion port can be completely managed within the child
process. A dedicated thread accepts connections off the network,
then calls PostQueuedCompletionStatus() to wake up worker
threads blocked on the completion port.
[Bill Stoddard]
Ken Coar [Sun, 11 Mar 2001 23:22:32 +0000 (23:22 +0000)]
Bring forward the suexec umask setting option from 1.3, and
also fix some configure.in bits that would define macros
that needed to be numbers as strings instead.
Chuck Murcko [Sun, 11 Mar 2001 11:08:22 +0000 (11:08 +0000)]
remove ProxyNoCache and ProxyCacheForceCompletion config directives,
since we no longer directly cache from this module
PR:
Obtained from:
Submitted by:
Reviewed by:
Ken Coar [Fri, 9 Mar 2001 20:20:31 +0000 (20:20 +0000)]
Bring forward the -V option for suexec from 1.3.20-dev. It looks
like the umask() option needs to be brought forward, as well.
Is this still 2.0.14-dev?
Bill Stoddard [Fri, 9 Mar 2001 18:28:55 +0000 (18:28 +0000)]
Fix a Windows seg fault on startup when multiple listen directives are being used.
The pool pointer in the local address field in apr_sock_t is not initialized until a
request is received. in general, we should not rely on the addressed in apr_sock_t
when doing work on the listen_recs.
Ryan Bloom [Thu, 8 Mar 2001 20:03:37 +0000 (20:03 +0000)]
Always clear the C-L if we are going to try to parse the file. It is
impossible for us to determine if there is going to be an SSI tag in the
file until we have actually scanned it all. By that time, it is likely
that the first chunk of data, and the headers have been sent to the client,
and it is too late to clear the C-L. If we are parsing the file, we have
to just assume we are going to change the content.
Ryan Bloom [Wed, 7 Mar 2001 17:01:28 +0000 (17:01 +0000)]
Fix content-length computation. We ONLY compute a content-length if
We are not in a 1.1 request and we cannot chunk, and this is a keepalive
or we already have all the data.
Jeff Trawick [Tue, 6 Mar 2001 21:46:12 +0000 (21:46 +0000)]
Report unbounded containers in the config file. Previously, a typo
in the </container> directive could result in the rest of the config
file being silently ignored, with undesired defaults used.
Jeff Trawick [Mon, 5 Mar 2001 20:15:15 +0000 (20:15 +0000)]
Rely on APR to determine whether or not we have netinet/tcp.h. This test
requires a special work-around for IRIX 6.5, which will be in APR soon.
There is no need for it in Apache.
The include of netinet/tcp.h was removed from perchild.c and threaded.c.
They no longer seem to be needed there.
Ryan Bloom [Mon, 5 Mar 2001 06:16:28 +0000 (06:16 +0000)]
Make the old_write filter use the ap_f* functions for buffering the data.
This has been tested with a couple of directory listings, but it could
probably use a bit more testing before being declared stable.
Ryan Bloom [Mon, 5 Mar 2001 04:43:56 +0000 (04:43 +0000)]
Another chunk of code from http to core. This should continue to build
on all platforms. The next job is to shuffle functions back and forth
so that the server builds without mod_http.
Ryan Bloom [Sun, 4 Mar 2001 17:44:07 +0000 (17:44 +0000)]
The ap_r* vote is now over. The decision was decidedly for the OLD_WRITE
filter. This adds a note in the STATUS file to ensure that it gets
modified to use the correct functions before we release.
For completeness, the vote was:
macros: rbb wrowe
old_write: gstein stoddard coar ben jwoolley
Ryan Bloom [Sun, 4 Mar 2001 06:27:27 +0000 (06:27 +0000)]
Move more code from the http module into the core server. This
is core code, basically the default handler, the default input
and output filters, and all of the core configuration directives.
All of this code is required in order for the server to work, with or
without HTTP. The server is closer to working without the HTTP
module, although there is still more to do.
I tried to fix Windows, but somebody should probably make sure I did
it correctly.
Jeff Trawick [Sat, 3 Mar 2001 01:46:16 +0000 (01:46 +0000)]
Fix some APR-ization issues:
1) we're using an apr_time_t file mtime, but trying to fit it in
a time_t entry in the cache and in parameters to the cache
access routines; use apr_time_t everywhere
2) we need to use apr_fileperms_t instead of mode_t for APR
file permissions
Ryan Bloom [Fri, 2 Mar 2001 22:46:33 +0000 (22:46 +0000)]
Allow modules to query the MPM about it's execution profile. This
query API can and should be extended in the future, but for now,
max_daemons, and threading or forking is a very good start.
Non-Unix MPM's do have the MPM query function, although there is no
garauntee that the information is perfect, please check.
Jeff Trawick [Fri, 2 Mar 2001 19:46:08 +0000 (19:46 +0000)]
in rfc1413_query():
use the buflen variable even on ASCII machines to get rid of a
warning from the SGI compiler as well as to make it go a wee
bit faster
Ryan Bloom [Fri, 2 Mar 2001 06:58:00 +0000 (06:58 +0000)]
Modify mod_include to send blocks of data no larger than 9k.
Without this, mod_include will wait until the whole file is parsed,
or the first tag is found to send any data to the client.
Submitted by: Paul J. Reder <rederpj@raleigh.ibm.com>
Greg Stein [Thu, 1 Mar 2001 00:55:03 +0000 (00:55 +0000)]
Don't directly include ap_config_auto.h directly. It isn't available on
Windows platforms. Including ap_config.h will pick it up, or it will grab
the appropriate Windows header/defines.
Jeff Trawick [Wed, 28 Feb 2001 18:41:44 +0000 (18:41 +0000)]
Fix a problem displaying status when a threaded MPM is used.
The line
int indx = (i * HARD_THREAD_LIMIT) + j;
in the vicinity of the change was bad; k needed to be added
instead of j.
I swapped the use of j and k in this section so that i and j
had the same meaning as in an earlier nested loop. I suspect
that the difference in meaning is what led to the bug.
Cliff Woolley [Wed, 28 Feb 2001 04:48:44 +0000 (04:48 +0000)]
Remove references to apr_bucket_init_types() and
apr_bucket_insert_type(). I imagine that core_pre_config() could
go away completely, but I'll leave that to someone who knows
more about hooks than I do.
Chris Pepper [Wed, 28 Feb 2001 04:41:24 +0000 (04:41 +0000)]
Adjusted links for files being moved into platform/ (were ./, now ../).
Matched up <p></p> & <pre></pre>.
Fixed misspellings.
Fixed links to ../install-tpf.html & ebcdic.html (which should probably be
moved down into platform/).
Changed links to windows.html#test to windows.html@cmdline.
Entities encoded.
Changed bogus <emp> tags to <em>.
Chris Pepper [Wed, 28 Feb 2001 03:40:40 +0000 (03:40 +0000)]
More entity quoting.
<p></p> & <a></a> cleanup.
Removed link to mod_cookies.html (missing in 2.0).
Fixed <a name="#.
Fixed link to fragment removed from mod_proxy.html.
Chris Pepper [Wed, 28 Feb 2001 03:36:00 +0000 (03:36 +0000)]
Some cleanup on the 2.0 FAQ carried over from 1.3. May be irrelevant soon,
or it may give us a better starting point for 2.0 improvements.
Fixed a bunch of <p>...</p> matches.
Removed 1.3 upgrade recommendation.
Fixed some entity encodings.
Updated a bunch of links that moved from core.html to mpm_common.html.
Fixed a few bad/stale links.
Fixed a decrement that was interfering with comment.
Ryan Bloom [Mon, 26 Feb 2001 06:26:24 +0000 (06:26 +0000)]
Add config directives to override the DEFAULT_ERROR_MSG and
DEFAULT_TIME_FORMAT.
PR: 6193
Submitted by: Dan Rench <drench@xnet.com>
Reviewed by: Ryan Bloom