Ken Coar [Tue, 22 May 2001 20:40:57 +0000 (20:40 +0000)]
Checkpoint my mod_example work. It does not work correctly yet,
and certainly should not be used until it does, but at least it
compiles (with a couple of warnings). I am adding examples of
all the missing hooks to it; this is definitely a work in progress
right now.
Roy T. Fielding [Tue, 22 May 2001 01:31:12 +0000 (01:31 +0000)]
Moved util_uri to apr-util/uri/apr_uri, which means adding the apr_
prefix to all of the uri functions (yuck), changing some includes,
and using APR error codes instead of HTTP-specific error codes.
Other notes to test this patch:
- You need to delete the util_uri.h file - exports picks up on this.
- I'd like to remove the apr_uri.h from httpd.h, but that might
increase the complexity of this patch even further. Once this patch
is accepted (in some form), then I can focus on removing apr_uri.h
from httpd.h entirely. I need baby steps (heh) right now.
- I imagine that this might break a bunch of stuff in Win32 or other OS
builds with foreign dependency files. Any help here is appreciated.
This is a start... -- justin
Submitted by: Justin Erenkrantz
Reviewed by: Roy Fielding
Graham Leggett [Mon, 21 May 2001 23:47:21 +0000 (23:47 +0000)]
Move the addition of default AP_HTTP_HTTP_HEADER filters to the insert_filter
phase so that other filters are not bypassed by default.
PR:
Obtained from:
Reviewed by:
Joshua Slive [Sun, 20 May 2001 01:30:59 +0000 (01:30 +0000)]
Major update of install.html.
This still needs a great deal of work. In particular, many of the
./configure command line options are not documented because I was not
able to get them to work in my testing. However, there is enough
documented here to get most people going. Hopefully, as things
are fixed, they will get added.
Bill Stoddard [Sat, 19 May 2001 20:12:05 +0000 (20:12 +0000)]
Reimplement mod_headers as an output filter. mod_headers can now
add custom headers to inbound requests using the HeaderIn directive
and to responses using the HeaderOut directive. The Header
directive has been deprecated in favor of the HeaderOut directive.
Submitted by: Graham Leggett
Reviewed by: Bill Stoddard
We don't want these operations to end the stream, simply flush out
the contents. It's up to any downstream filters to collect c-l or
other stats when the handler has exited.
Jeff Trawick [Thu, 17 May 2001 18:04:18 +0000 (18:04 +0000)]
Fix processing of the TRACE method. Previously we passed bogus
parms to form_header_field() and it overlaid some vhost structures,
resulting in a segfault in check_hostalias().
[Greg Ames, Jeff Trawick]
Note: Not being familiar with the TRACE method I compared the 2.0
output with 1.3.9 output. The only difference is that with 2.0 we
get a Content-Length header field.
Bill Stoddard [Thu, 17 May 2001 12:10:22 +0000 (12:10 +0000)]
Fix a segfault in apr_proc_other_child_unregister. Jeff recently made
a change in APR otherchild.c to unregister all OC registrations as
part of pool cleanup. This means that we must NOT explicitly call
apr_proc_other_child_unregister out of other pool clean-up routines.
In this case, the OC cleanup was being called first then the piped_log_cleanup
was being called which called apr_proc_other_child_unregister.
We could fix this by detecting the case when there are no more OCs registered
in apr_proc_other_child_unregister but that might just mask other problems we
need to fix anyway.
Bill Stoddard [Wed, 16 May 2001 13:49:40 +0000 (13:49 +0000)]
Do not start piped log processes during the config file
preflight. This change also circumvents a problem on
Windows where the rotatelog processes created during preflight
was not getting cleaned up properly.
Jeff Trawick [Tue, 15 May 2001 17:30:44 +0000 (17:30 +0000)]
clean up DSO builds on OS/390 a bit by ignoring some generated files
and by passing libtool the OS/390-specific options needed to split
the main httpd executable into a small executable with main() and a
dll with everything else (previously this information was hard-coded
in the OS/390 libtool program)
Paul J. Reder [Tue, 15 May 2001 02:38:17 +0000 (02:38 +0000)]
Make first phase changes to the scoreboard data structures in
preparation for the rewriting of the scoreboard per my posted
design notes. [Paul J. Reder]
Still some todos: an option to just abort user feedback and close the
window instantly upon loosing the stdin pipe, allow the stdin pipe to
be tee'ed on win32, and still add some graceful error handling for a
real-world deployment.
Q. "Why can't I watch my server's activity?" A. You can.
This is a little tool I dreamed up while fighting a ton of battles on
several fronts. It demonstrates that reliable piped logs on win32 still
need work, that we launch log processes far too many times, and generally
gives admins more blinky lights on win32. But it's too practial of an
example to leave on my hard drive gathering dust.
Note that the support/win32 will be used for really non-unix/non-portable
applications. Perhaps something similiar would be useful all the way
around, and perhaps some of this code can get into the apr core. But for
this moment, it serves a purpose for beta development.
Greg Stein [Sun, 13 May 2001 10:37:06 +0000 (10:37 +0000)]
Implement Jeff's idea for an autoconf-defined symbol to enable the special
command function prototype stuff. AP_DEBUG is always set in maintainer mode
and AP_DEBUG_HAVE_GCC is set when the compiler is GCC.
Jeff Trawick [Sat, 12 May 2001 13:05:27 +0000 (13:05 +0000)]
Only turn on AP_DEBUG if we're using gcc.
The AP_DEBUG flavor of the cmd_func declarations is not portable.
Last night Roy removed the check for gcc before turning on AP_DEBUG.
Interestingly (or not :) ) the AP_DEBUG flavor of cmd_func compiles
cleanly on gcc but the non-AP_DEBUG flavor doesn't. The non-AP_DEBUG
flavor compiles cleanly with Tru64 cc and AIX xlc but the AP_DEBUG
flavor doesn't. (On Tru64 we get a bunch of warnings with the
AP_DEBUG flavor but at least it compiles; the same cannot be said of
AIX xlc.)
Perhaps we should use a symbol other than AP_DEBUG to distinguish
between the cmd_func flavors. Then AP_DEBUG can be turned on
regardless of compiler. The new flag can be turned on for gcc+
--enable-maintainer-mode, or perhaps for gcc always since the non-
AP_DEBUG flavor won't compile cleanly with gcc. (what a mess; this
probably wouldn't work right for different levels of gcc anyway)
Roy T. Fielding [Sat, 12 May 2001 03:48:31 +0000 (03:48 +0000)]
Fix httpd's definition of LTFLAGS to be consistent with that of apr
and apr-util, allow it to be overridden by the configure command-line
(default="--silent") and introduce LT_LDFLAGS to replace what we were
formally abusing as LTFLAGS.
Roy T. Fielding [Sat, 12 May 2001 01:37:27 +0000 (01:37 +0000)]
It is easier to re-run configure's test and pick up the cached values
than it is to replicate them in our own macros. This isn't too expensive
because CC and CPP have already been set by APR. Too bad it generates
a lot of output.
Also, we don't need to repeat command-line options that are already being
handled by APR now that we use APR's generated flags. The switches are
still usable on the command-line.
Roy T. Fielding [Fri, 11 May 2001 18:18:04 +0000 (18:18 +0000)]
The pattern was too general -- it would match the date within the
OpenSSL version string instead of just the version number. Fix it
using a hint from libtool.
Bill Stoddard [Fri, 11 May 2001 17:34:17 +0000 (17:34 +0000)]
Do not send apr_file_t allocated out of the pconf pool down the
filter chain. This is not perfect but better. Need to do some
more work in apr_os_file_put to initialize fields a bit better.
Roy T. Fielding [Fri, 11 May 2001 08:12:06 +0000 (08:12 +0000)]
Simplify the configuration process by moving all libtool stuff to APR
and moving the last bits of hints.m4 inline. Now we only run every
test four times instead of five. One down, three to go.
Chuck Murcko [Fri, 11 May 2001 04:35:41 +0000 (04:35 +0000)]
Add the AP_DECLARE()/AP_CORE_DECLARE macros on the return types of
functions used by mod_proxy for export in DLL
Submitted by: Ian Holsman <IanH@cnet.com>
Reviewed by: Chuck murcko
Roy T. Fielding [Thu, 10 May 2001 01:47:47 +0000 (01:47 +0000)]
Eventually we will want to only find openssl once regardless of how
many modules depend on it, so make the check an autoconf macro.
Note that this still isn't being checked "the autoconf way", but it
is better than what we have now.
I'm not sure about the -R stuff, but I am told that Solaris won't
build without it. This is something that should be tested using
AC_TRY_LINK rather than assuming openssl isn't already on the ld path.
Martin Kraemer [Tue, 8 May 2001 08:54:24 +0000 (08:54 +0000)]
Try to auto-detect the location of the OpenSSL stuff. The old logic was
incorrect anyway (it tested for .../ssl/ssl.h and then used .../include/ssl.h).
Now we have a configurable list of candidates, each with:
a name, an include path, a lib path, and a list of libs.