1
0
mirror of https://github.com/apache/httpd.git synced 2025-11-06 16:49:32 +03:00
Commit Graph

482 Commits

Author SHA1 Message Date
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
Greg Stein
26b5a249bf reduce some code redundancy / simplify.
use a consistent var name for va_list


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85590 13f79535-47bb-0310-9956-ffa450edef68
2000-06-17 02:22:03 +00:00
Greg Stein
c7d0508e8a ap_bvputs() is a misnomer; introduce ap_bputstrs()
[todo: proxy and file_cache code should be updated for new name]
add ap_vbputstrs()
use ap_vbputstrs() from http_protocol.
use EOF in a few places, rather than the magic "-1" constant


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85589 13f79535-47bb-0310-9956-ffa450edef68
2000-06-17 01:29:29 +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
580852da85 Clean up a big chunk of ap_config.h. This basically stops ap_config.h from
including any files.  Because of this change, other files must include
their own headers.  I also cleaned up a couple of other bugs in some
modules because I had to compile them all.

I expect this to break multiple platforms, but this will be fixed over time.
The massive configure cleanup is almost done.  I will go through the files
one more time after this commit.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85553 13f79535-47bb-0310-9956-ffa450edef68
2000-06-12 21:47:17 +00:00
Jeff Trawick
f2851fe62b EBCDIC fixes:
getline(): pick up a couple of Martin's changes which were missed when
  the 1.3.x EBCDIC fixes to this funciton were merged into 2.0

  ap_setup_client_block(): fix the logic that, based on the mime type,
  can decide not to translate the request body


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85406 13f79535-47bb-0310-9956-ffa450edef68
2000-06-05 02:26:52 +00:00
Jeff Trawick
43c2b45f38 EBCDIC: Rearrange calls to ap_checkconv() so that most handlers
won't need to call it.
Submitted by:	Greg Ames, Jeff Trawick


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85397 13f79535-47bb-0310-9956-ffa450edef68
2000-06-03 22:41:01 +00:00
Jeff Trawick
730cec6b01 APACHE_XLATE, when doing translation that isn't single-byte-only
We must zap the Content-length header (if any).  Otherwise, the
browser will be seriously confused :)  The header is zapped in
ap_set_keepalive() right before we look for Content-length, transfer
encoding, HTTP level, etc. to decide, among other issues, whether or
not to turn on chunked encoding.  For HTTP 1.1, if we don't send
Content-length, we need to use chunked encoding, so we have to zap
the header before that decision.

Interestingly, in Russian Apache the Content-length header is
zapped after ap_set_keepalive() is called, so with HTTP 1.1 they
break the content-length-or-chunked rule.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85379 13f79535-47bb-0310-9956-ffa450edef68
2000-06-02 15:55:20 +00:00
Jeff Trawick
366bc3c630 APACHE_XLATE: in ap_send_error_response(), move the setting
of the translation handle to before we process ErrorDocument
strings.  The previous placement of this logic only handled
the hard-coded response documents.

When ErrorDocument specifies a redirection, we don't get here.
When the error response is headers only, we don't need to set
the handle for content.  Thus, all paths through
ap_send_error_response() should be handled now.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85356 13f79535-47bb-0310-9956-ffa450edef68
2000-05-31 01:35:46 +00:00
Jeff Trawick
b7685b72c1 Ensure that the proper translation handle (if any) is used when
sending the canned response document to the client.  Otherwise, the
client may get garbage depending on the translation in effect.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85350 13f79535-47bb-0310-9956-ffa450edef68
2000-05-30 14:20:46 +00:00
William A. Rowe Jr
3f29977506 PR:
Obtained from:
Submitted by:
Reviewed by:

  Reverse out additional linkage argument from DECLARE_HOOK
  and IMPLEMENT_HOOK macros.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85319 13f79535-47bb-0310-9956-ffa450edef68
2000-05-27 22:53:48 +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
Jeff Trawick
78aba7227f APACHE_XLATE, CHARSET_EBCDIC stuff:
Provide new function ap_set_content_xlate() to simplify what needs
to be done to set up translation of content.  Use it where appropriate.

With this change, EBCDIC logic was tweaked so that ap_checkconv() does
not overlay a translation handle previously stored (e.g., by a module)
unless it is turning translation off.  Unless ap_checkconv() determines
that translation is inappropriate, it should leave the translation handle
alone.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85296 13f79535-47bb-0310-9956-ffa450edef68
2000-05-25 20:51:25 +00:00
Ryan Bloom
9c112e7c72 Implement saferead in Apache 2.0. This has had minimal testing, and it
seems to work, but only really hammering on it will tell for sure.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85289 13f79535-47bb-0310-9956-ffa450edef68
2000-05-24 19:19:20 +00:00
Jeff Trawick
d83c61bf73 include translation information in the request_rec;
finish converting ap_bsetflag(B_ASCII2EBCDIC or B_EBCDIC2ASCII) to
ap_bsetopt(BO_WXLATE or BO_RXLATE)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85238 13f79535-47bb-0310-9956-ffa450edef68
2000-05-17 03:19:38 +00:00
Jeff Trawick
34ecfec8d0 Pick up various EBCDIC fixes from 1.3 (from Martin Kraemer and Oliver
Reh originally according to the change log).


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85176 13f79535-47bb-0310-9956-ffa450edef68
2000-05-10 19:07:43 +00:00
Doug MacEachern
6644b34387 add AP_ prefix to *HOOK* macros
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85045 13f79535-47bb-0310-9956-ffa450edef68
2000-04-26 07:14:39 +00:00
Jeff Trawick
3548f16478 Fix some problems on systems where EAGAIN != EWOULDBLOCK (e.g., OS/390).
ap_canonical_errror() for Unix now maps EWOULDBLOCK to EAGAIN/APR_EAGAIN
when appropriate so that the changes here (as well as bjh's changes from a
few days ago) to call ap_canonical_error() before comparing with EWOULDBLOCK
will work on Unix as well.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85019 13f79535-47bb-0310-9956-ffa450edef68
2000-04-23 13:22:08 +00:00
Brian Havard
af789a8fd6 Another required ap_canonical_error().
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85001 13f79535-47bb-0310-9956-ffa450edef68
2000-04-20 16:08:07 +00:00
Jeff Trawick
cc6e027c47 [EBCDIC] Port Paul Gilmartin's CRLF patch from 1.3. This replaces most
of the \015, \012, and \015\012 constants with macros.
Submitted by:	Greg Ames
Reviewed by:	Jeff Trawick


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84998 13f79535-47bb-0310-9956-ffa450edef68
2000-04-20 14:36:01 +00:00
Bill Stoddard
3f836c5723 Allow for the possibility of receiving data regardless of the pipe
error condition or receiving EOF on the pipe read. This patch
assumes that a read returning APR_SUCCESS with 0 bytes read is equivalent
to an EOF.

Submitted by:	Dean Gaudet
Reviewed by:	Bill Stoddard


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84965 13f79535-47bb-0310-9956-ffa450edef68
2000-04-14 17:38:14 +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
Jeff Trawick
92cafef56b stop relying on a macro to map signal() to ap_signal(); call
ap_signal() directly


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84914 13f79535-47bb-0310-9956-ffa450edef68
2000-04-05 01:23:51 +00:00
Roy T. Fielding
057b29f829 Update to Apache Software License version 1.1
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84878 13f79535-47bb-0310-9956-ffa450edef68
2000-03-31 08:44:21 +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
Ryan Bloom
6a4d775449 Enabled layered I/O. Docs are forthcoming.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84837 13f79535-47bb-0310-9956-ffa450edef68
2000-03-25 15:00:10 +00:00
Jim Jagielski
70ef1e69d5 Backport the CSS security fixes to Apache 2.0a. Or is that forward
port? My sense of direction is all confused.

PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84751 13f79535-47bb-0310-9956-ffa450edef68
2000-03-13 20:27:29 +00:00
Ryan Bloom
b1c26f031a Fix all the License issues. Including:
s/Apache Group/Apache Software Foundation/
s/1999/2000/
s/Sascha's license/ASF license


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84725 13f79535-47bb-0310-9956-ffa450edef68
2000-03-10 00:07:37 +00:00
dgaudet
7dd8a75266 clean up a bunch of -Wall/etc warnings
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84698 13f79535-47bb-0310-9956-ffa450edef68
2000-03-02 11:05:17 +00:00
Bill Stoddard
7763f0ace7 Set timeouts to sendfile operation in http_protocol.c. Fix bugs in Win32
sendfile implementation.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84543 13f79535-47bb-0310-9956-ffa450edef68
2000-01-31 19:21:37 +00:00
Ryan Bloom
f8a7fce423 Include ap_config.h before httpd.h, this ensures that AP_USE_HSREGEX is
defined correctly in all C files.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84531 13f79535-47bb-0310-9956-ffa450edef68
2000-01-28 18:02:29 +00:00
Bill Stoddard
e38f994a9d More sendfile work. Use new sendfile API in Apache, update Windows MPM
to begin using APR socket API.
Note:
sendfile on Unix side is broken. Need to detect for NULL hdtr. I'll do
it later this week if no one else steps up.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84529 13f79535-47bb-0310-9956-ffa450edef68
2000-01-27 05:58:00 +00:00
Ryan Bloom
0432102c4f Cleanup a few things with the compile. There were also a few macro name
changes I missed earlier.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84496 13f79535-47bb-0310-9956-ffa450edef68
2000-01-19 02:09:03 +00:00
Ryan Bloom
a8ce196da5 Finish the commits for the change in the header files. Basically, this hides
all of the Apache macros that modules don't need access to.  This should
have been committed with the modules, but I wasn't paying attention to the
directory I was in when I ran the commit.
Submitted by:	Manoj Kasichainula and Ryan Bloom


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84493 13f79535-47bb-0310-9956-ffa450edef68
2000-01-19 01:16:31 +00:00
Bill Stoddard
d1451eb401 Update Windows port to new file_io and time specs
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84483 13f79535-47bb-0310-9956-ffa450edef68
2000-01-17 19:37:55 +00:00
Ryan Bloom
941a96936e Fix some remaining problems with SSI's and Windows. Basically, the
sendfile stuff doesn't work properly with chuncked data.
Submitted by:	Allan Edwards
Reviewed by:	Ryan Bloom


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84448 13f79535-47bb-0310-9956-ffa450edef68
2000-01-12 18:20:43 +00:00
dgaudet
faff1f01dd time overhaul:
- ap_time_t is a 64-bit scalar, microseconds since epoch
- ap_exploded_time_t corresponds to struct tm with a few extras

probably broken on anything except linux.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84413 13f79535-47bb-0310-9956-ffa450edef68
2000-01-09 05:18:31 +00:00
Ryan Bloom
8f26ac7df4 Separate the stat structure from the file structure and use ap_stat and
ap_getfileinfo in apache.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84397 13f79535-47bb-0310-9956-ffa450edef68
2000-01-06 14:43:41 +00:00
Ryan Bloom
ed4c96e92d Change ap_gm_timestr_822 to ap_timestr. Now, one function can be used to get
a timestr for GMT and Localtimes.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84352 13f79535-47bb-0310-9956-ffa450edef68
1999-12-21 16:21:44 +00:00
Tony Finch
5ef2a1ecd3 Fix the mass vhosting security problem spotted by Lars, as in 1.3
Submitted by:	Ben Hyde
Reviewed by:	Tony Finch


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84349 13f79535-47bb-0310-9956-ffa450edef68
1999-12-21 11:33:23 +00:00
Ryan Bloom
8c56e6dfc3 First step in getting Apache to use APR's time libraries. This gets a good
number of them, but I think there are more time values still in the Apache
code.  This works under Linux, but has not been tested anywhere else.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84338 13f79535-47bb-0310-9956-ffa450edef68
1999-12-20 16:38:39 +00:00
David Reid
7f31f4cd6e Remove some nuisance warnings by changing int to ap_ssize_t.
Also add a default MPM_METHOD for BeOS.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84315 13f79535-47bb-0310-9956-ffa450edef68
1999-12-19 10:05:15 +00:00
Bill Stoddard
62b6269551 Fix Windows build break
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84268 13f79535-47bb-0310-9956-ffa450edef68
1999-12-09 21:47:45 +00:00
Manoj Kasichainula
5e8f51cb00 The extra (n < 1) check is redundant, leftover from pre-APR code.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84192 13f79535-47bb-0310-9956-ffa450edef68
1999-11-30 03:36:33 +00:00
David Reid
98ad401c48 Next stage of ap_mmap support. Tested on FreeBSD and BeOS.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84139 13f79535-47bb-0310-9956-ffa450edef68
1999-11-20 11:56:13 +00:00
Ryan Bloom
370fc31b00 Cleanup the ZZZ comments. Basically these used to mark places where APR
is needed.  It is much easier to do this conversion by hand than by
searching for old comments, so they are going away now.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84128 13f79535-47bb-0310-9956-ffa450edef68
1999-11-16 18:32:05 +00:00
Bill Stoddard
e63638c46b Export ap_send_error_response
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84107 13f79535-47bb-0310-9956-ffa450edef68
1999-11-05 15:45:05 +00:00
Brian Havard
2829b12529 OS/2: Don't return APR_EOF from ap_read(). EOF is indicated by a APR_SUCCESS
status with nbytes set to 0.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84097 13f79535-47bb-0310-9956-ffa450edef68
1999-11-03 12:47:23 +00:00
Bill Stoddard
b4c19fa524 Delete useless code...
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84090 13f79535-47bb-0310-9956-ffa450edef68
1999-11-02 14:34:32 +00:00
Bill Stoddard
ee53e27fb6 First cut at adding a sendfile API to IOL. Eventually need to move iol_socket
into APR...


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84089 13f79535-47bb-0310-9956-ffa450edef68
1999-11-02 14:30:23 +00:00