1
0
mirror of https://github.com/apache/httpd.git synced 2025-09-01 02:02:06 +03:00
Commit Graph

76 Commits

Author SHA1 Message Date
Ryan Bloom
50758ecf68 Fix a lot of the fallback from the apr_ssize_t to apr_size_t change
Submitted by:	Victor J. Orlikowski <v.j.orlikowski@gte.net>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86915 13f79535-47bb-0310-9956-ffa450edef68
2000-11-10 19:01:33 +00:00
Ryan Bloom
f0c80af4db Fix mod_include to serve the FAQ correctly. The problem was a couple of
bugs in get_tag.  This also allows mod_include to save buckets with partial
tags in them.
Submitted by:	Ryan Bloom and David Reid


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86737 13f79535-47bb-0310-9956-ffa450edef68
2000-10-24 18:40:00 +00:00
William A. Rowe Jr
2bf04d2053 Get everything working with suexec patches again.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86731 13f79535-47bb-0310-9956-ffa450edef68
2000-10-24 11:54:29 +00:00
Manoj Kasichainula
b1fb90877e Add back suexec support.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86712 13f79535-47bb-0310-9956-ffa450edef68
2000-10-23 15:30:57 +00:00
Ryan Bloom
415ea97020 Get mod_include working again. This still needs to be re-written, but
at least now we are serving SHTML files again.
PR:	6641


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86656 13f79535-47bb-0310-9956-ffa450edef68
2000-10-18 22:24:38 +00:00
William A. Rowe Jr
d6490633eb Renamed all MODULE_EXPORT symbols to AP_MODULE_DECLARE and all symbols
for CORE_EXPORT to AP_CORE_DECLARE (namespace protecting the wrapper)
  and retitled API_EXPORT as AP_DECLARE and APR_EXPORT as APR_DECLARE.
  All _VAR_ flavors changes to _DATA to be absolutely clear.
  Thank you Greg, for the most obvious suggestion.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86609 13f79535-47bb-0310-9956-ffa450edef68
2000-10-16 06:05:15 +00:00
William A. Rowe Jr
251bf4d1d3 Cleaning up a _Security_ concern - Please Review Carefully
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86608 13f79535-47bb-0310-9956-ffa450edef68
2000-10-16 03:43:44 +00:00
Ryan Bloom
b73fb78446 Stop using the index into the array for the bucket type. Now we just use
a pointer to a static structure.  The ap_foo_type functions have also been
replaced with simple macro calls.  I am going to replace the
ap_bucket_(read|split|setaside|destroy) functions with macros soon.
Reviewed by:	Will Rowe


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86597 13f79535-47bb-0310-9956-ffa450edef68
2000-10-15 18:15:13 +00:00
Ryan Bloom
745e689f7c Remove all function pointers from the ap_bucket type. These function
pointers are replaced with a global table that allows modules to register
their bucket types.  Those bucket types are then allowed to be used in
the server processing.  This also required removing all direct calls to
those functions.  The ap_bucket type has an index into an array, so in
each ap_bucket_* function, we use that index to find the correct set of
functions.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86575 13f79535-47bb-0310-9956-ffa450edef68
2000-10-13 05:35:57 +00:00
Jeff Trawick
bf7aaebda6 Get rid of much of the old implementation of translating the
charset of response bodies.

ap_checkconv() is removed, except for in os/bs2000 and os/tpf.
(Anything there is questionable for 2.0 anyway.)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86400 13f79535-47bb-0310-9956-ffa450edef68
2000-10-05 11:21:26 +00:00
Jeff Trawick
276a2b2257 mod_include now tweaks the subrequest output filter chain so that
only *subsequent* filters from the original request are inherited.
Previously, *all* filters from the original request were inherited.

Currently, any filter which runs a subrequest should do the same
thing (though a cleaner interface may be appropriate.)

With this change, subrequests are properly filtered much more often.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86283 13f79535-47bb-0310-9956-ffa450edef68
2000-09-22 14:57:08 +00:00
Jeff Trawick
0ddc51e473 Get the call to find_string() out of a loop. find_string() loops
across the buckets internally.  This gets rid of a compile warning
but doesn't change the behavior.
Inspired by: "Victor J. Orlikowski" <v.j.orlikowski@gte.net>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86279 13f79535-47bb-0310-9956-ffa450edef68
2000-09-21 16:32:48 +00:00
Jeff Trawick
0147cfc14f Fix the prior fix to the usage of ap_brigade_split()... The caller of
send_parsed_content() needs to see the new brigade representing the
rest of the content.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86270 13f79535-47bb-0310-9956-ffa450edef68
2000-09-20 21:50:50 +00:00
Jeff Trawick
6fa42d5cca Fix mixup in call to ap_brigade_split().
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86266 13f79535-47bb-0310-9956-ffa450edef68
2000-09-20 18:36:05 +00:00
Ryan Bloom
faa74873d6 Cleanup the brigade split in mod_include. It turns out that we have had
a brigade split function for quite some time.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86252 13f79535-47bb-0310-9956-ffa450edef68
2000-09-19 20:57:19 +00:00
Ryan Bloom
96c98ff58b tart getting things setup for input filtering. All this basically does
is add part of the infrastructure.  Namely:

1) filter list in the conn_rec, which is where the input filter list
   must live

2) Split the register_filter into multiple functions, one to register
   input filters the other to register output filters.

3) Modify existing modules so they still work.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86251 13f79535-47bb-0310-9956-ffa450edef68
2000-09-19 20:56:09 +00:00
Ryan Bloom
c65ff24cf2 If a bucket is split at the first or last character, then we should get
a zero length bucket and a bucket containing the original text.  Later
filters will either throw away the zero length bucket, or they will just
ignore it.  The problem is that if we return an error in those conditions,
then all filters need special logic whenever they are going to split a
bucket.  By always splitting, only a few selected buckets need the special
logic to deal with zero-length buckets.  This also fixes mod_include to not
have the special logic around it's split call.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86242 13f79535-47bb-0310-9956-ffa450edef68
2000-09-17 18:52:48 +00:00
Jeff Trawick
a0b638e33a Handle a tag that appears at the start of a bucket.
Get rid of an endless loop (waiting for dptr2 to become NULL instead of
AP_BRIGADE_SENTINEL()).

Add to a to-do comment.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86239 13f79535-47bb-0310-9956-ffa450edef68
2000-09-15 21:23:46 +00:00
Jeff Trawick
cc23cc0866 Fix the types of the variables passed as the len parm to bucket->read()
(in various places).
In ab, change the declaration of argv so that it can be passed into
apr_initopt() without warning.
Submitted by:	Victor J. Orlikowski <v.j.orlikowski@gte.net>
Reviewed and modified slightly by:	Jeff Trawick


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86229 13f79535-47bb-0310-9956-ffa450edef68
2000-09-14 18:42:58 +00:00
Jeff Trawick
48cccb8f0c In find_string(), handle eos and end-of-pipe conditions.
In get_tag(), add an XXX comment pointing out a discrepancy in the
behavior pre- and post-bucketization.

In include_cmd(), don't destroy a brigade just handed off to the next
filter.  Subsequent filters will take care of that soon enough.

Fix some compile warnings (mostly removing unused variables).


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86228 13f79535-47bb-0310-9956-ffa450edef68
2000-09-14 17:59:16 +00:00
Ryan Bloom
7baf3bb614 Fix a stupid typo. I wanted to register the filter, but I didn't want to
add it.  I accidentally deleted the wrong line before I committed last
night.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86216 13f79535-47bb-0310-9956-ffa450edef68
2000-09-13 19:10:33 +00:00
Ryan Bloom
4363b681cf First pass at mod_include as a filter. This is at an incredibly alpha
stage, but it should compile for everybody now.  I have experienced a few
seg faults that I haven't been able to track down yet, but it should
compile on all platforms, which is better than before this patch.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86211 13f79535-47bb-0310-9956-ffa450edef68
2000-09-13 02:07:40 +00:00
Ryan Bloom
ae7cca1bd9 Remove IOLs from Apache. They are no longer necessary, now that we have
filtering beginning to work.  There is a hack that has been repeated
through this patch, we morph a pipe into a socket, and put the socket
into the BUFF.  Everytime we do that, we are working with a pipe from
a CGI, and we should be creating a pipe bucket and passing that bucket
back.  Because we don't actually have pipe buckets yet, we are using this
hack.  When we get pipe buckets, this will be fixed.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86136 13f79535-47bb-0310-9956-ffa450edef68
2000-08-23 00:01:58 +00:00
Jeff Trawick
f7ec9ddb5b A few more (last?) ap_xlate->apr_xlate changes covering stuff not completely
handled in the big apr rename last week.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86020 13f79535-47bb-0310-9956-ffa450edef68
2000-08-07 20:11:37 +00:00
William A. Rowe Jr
1a9db204f5 Remaining cleanup of ap_ -> apr_ and AP_ -> APR_ transformation...
see src/lib/apr/apr_compat.h for most details.
  Also a few minor nits to get Win32 to build.

PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86008 13f79535-47bb-0310-9956-ffa450edef68
2000-08-06 06:07:53 +00:00
Doug MacEachern
059d8dd212 prefix libapr functions and types with apr_
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85976 13f79535-47bb-0310-9956-ffa450edef68
2000-08-02 05:27:38 +00:00
Jeff Trawick
844bc85ee4 Change the storage allocation mechanism for ap_proc_t structures
passed to ap_note_subprocess() by mod_rewrite and mod_include.  The
storage needs to last as long as the pool passed to
ap_note_subprocess(), so autodata won't work.

The mod_rewrite change wasn't tested.  A normal build with mod_rewrite
on Linux currently results in the link failing due to unresolved
references to dbm_*.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85928 13f79535-47bb-0310-9956-ffa450edef68
2000-07-29 03:08:13 +00:00
dgaudet
2547832c5c - fix POOL_DEBUG ... restored the ap_pool_joins that dreid removed.
- removed the apr_abort foo since every caller was passing it NULL anyway;
  and this is debugging code, so i don't have any qualms about using
  stderr or abort().


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85888 13f79535-47bb-0310-9956-ffa450edef68
2000-07-26 01:56:02 +00:00
Ryan Bloom
22d9fbdec0 Move all APR functions related to strings to their own directory, and
create a new header for those functions.  This is the first step to
removing the apr/lib directory completely, and moving those files/functions
to descriptive directories.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85867 13f79535-47bb-0310-9956-ffa450edef68
2000-07-21 19:50:58 +00:00
Jeff Trawick
db3c12a79e Fix some bad ap_log_error() invocations. Comment on a bad
ap_log_rerror() invocation.

Almost all of this is in code never compiled.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85860 13f79535-47bb-0310-9956-ffa450edef68
2000-07-17 22:11:47 +00:00
Bill Stoddard
f24caae857 Eliminate a couple of compiler warnings. I don't like casts but these
seem safe.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85774 13f79535-47bb-0310-9956-ffa450edef68
2000-07-06 14:40:36 +00:00
Jeff Trawick
b5c0ae056b Include strings.h for strcasecmp(), strncasecmp(), and bzero().
Include time.h for time().

This removes a bunch of compiler warnings with gcc -Wall on AIX.
Submitted by:	Jeff Trawick, Victor Orlikowski


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85723 13f79535-47bb-0310-9956-ffa450edef68
2000-06-28 14:33:48 +00:00
Jeff Trawick
ccdc88978f Use the new command-handler initializer macros in a few more modules,
cleaning up the resulting warnings.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85607 13f79535-47bb-0310-9956-ffa450edef68
2000-06-18 04:06:43 +00:00
Ben Laurie
c0a4cb7873 More consification, correct command initialisation.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85599 13f79535-47bb-0310-9956-ffa450edef68
2000-06-17 16:29:53 +00:00
David Reid
5f186c042c ap_pool_join is a debugging function so remove it.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85594 13f79535-47bb-0310-9956-ffa450edef68
2000-06-17 11:00:57 +00:00
Ryan Bloom
750d8cc03c Protect system header files with the appropriate macros.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85558 13f79535-47bb-0310-9956-ffa450edef68
2000-06-12 23:03:05 +00:00
Ryan Bloom
16748b4e22 Remove the final vestiges of stat.h from Apache 2.0. All calls are now to
ap_stat.  This also adds the new function ap_lstat().  This function is
analogous to lstat.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85535 13f79535-47bb-0310-9956-ffa450edef68
2000-06-12 15:29:09 +00:00
Ben Laurie
854b6e64d2 Do printf formatting properly.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85514 13f79535-47bb-0310-9956-ffa450edef68
2000-06-11 14:04:52 +00:00
Jeff Trawick
a2bf1b4753 cast ap_snprintf() argument to the type expected by the format string
(to fix gcc warning on FreeBSD)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85506 13f79535-47bb-0310-9956-ffa450edef68
2000-06-10 18:51:24 +00:00
Ryan Bloom
3c8e0cb24f Add the resource limiting code back to Apache 2.0. This only works on
Unix because I can't find any other platforms with rlimit.  If there are
other platforms that need this code, then some of the code needs to move.
This has just barely been tested, so it could probably use some good
testing.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85449 13f79535-47bb-0310-9956-ffa450edef68
2000-06-06 21:45:16 +00:00
William A. Rowe Jr
da493b8be1 PR:
Obtained from:
Submitted by:
Reviewed by:

  Reverse out all _EXPORT_VAR changes back to their original _VAR_EXPORT
  names for linkage (API_, CORE_, and MODULE_).


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85318 13f79535-47bb-0310-9956-ffa450edef68
2000-05-27 22:40:44 +00:00
William A. Rowe Jr
86e2a18f2a This patch corrects the issues from the AP_EXPORT and linkage
specification arguments to the ap_hooks.h declarations.  As with
  the APR_ and AP_ patches, API_VAR_EXPORT becomes API_EXPORT_VAR,
  and MODULE_VAR_EXPORT becomes MODULE_EXPORT_VAR.

  I will be happy to revert the inclusion of ap_config.h from 
  httpd.h if this bothers anyone.  More individual modules need
  to be patched if we do so.

  The API_EXPORTs all moved into central storage in the ap_config.h
  header.  Without WIN32 or API_STATIC compile time declarations, 
  these macros remain no-ops.

  This patch also moves the following data from http_main to http_config:

    const char *ap_server_argv0;
    const char *ap_server_root;
    ap_array_header_t *ap_server_pre_read_config;
    ap_array_header_t *ap_server_post_read_config;
    ap_array_header_t *ap_server_config_defines;

  And the following variables had already moved into ap_hooks.c:

    ap_pool_t *g_pHookPool;  (initialized now in http_config)
    int g_bDebugHooks;                   (out of http_config)
    const char *g_szCurrentHookName;     (out of http_config)

  The changes to http_main.c are in preparation for that module to
  move out to a seperate .exe for win32.  Other platforms will be
  unaffected, outside of these changes.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85309 13f79535-47bb-0310-9956-ffa450edef68
2000-05-27 05:28:02 +00:00
Ryan Bloom
6c75ebc1da Rename stdin, stdout, stderr from new ap_proc_t to in, out, and err because
Windows was having problems with the original names.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85285 13f79535-47bb-0310-9956-ffa450edef68
2000-05-24 00:15:09 +00:00
Ryan Bloom
f9f4c470a8 Convert ap_proc_t to a complete type. This lets us access the pid directly.
Only the prefork MPM has been ported so far, the rest of the Unix MPM's are
coming later today.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85279 13f79535-47bb-0310-9956-ffa450edef68
2000-05-23 21:04:03 +00:00
Brian Havard
f28301ea2a Turn on buffered I/O in mod_include for reading the input file.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85274 13f79535-47bb-0310-9956-ffa450edef68
2000-05-23 03:04:30 +00:00
Bill Stoddard
a55a5064ef Update a couple of modules to use ap_stat() rather than stat().
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85232 13f79535-47bb-0310-9956-ffa450edef68
2000-05-16 20:19:29 +00:00
Jeff Trawick
47df20d00a mod_include:
. APR-ize some EBCDIC logic that translates char-by-char
. use the buff option BO_WXLATE to store a translation handle
  instead of the old logic to turn on the B_EBCDIC2ASCII flag


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85222 13f79535-47bb-0310-9956-ffa450edef68
2000-05-16 01:59:07 +00:00
Ryan Bloom
de3a77dc01 Change ap_context_t to ap_pool_t. This compiles, runs, and serves pages
on Linux, but probably breaks somewhere.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84963 13f79535-47bb-0310-9956-ffa450edef68
2000-04-14 15:59:20 +00:00
Roy T. Fielding
2bee4ad19d Update to Apache Software License version 1.1
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84879 13f79535-47bb-0310-9956-ffa450edef68
2000-03-31 09:05:25 +00:00
Ryan Bloom
63f93a6504 Backout layered I/O changes.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84842 13f79535-47bb-0310-9956-ffa450edef68
2000-03-27 16:22:30 +00:00