1
0
mirror of https://github.com/apache/httpd.git synced 2025-11-05 05:30:39 +03:00
Commit Graph

200 Commits

Author SHA1 Message Date
Paul J. Reder
9067bdbe2b Fix for mod_include. Ryan's patch to check error
codes put a return in the wrong place. Also, the
include handler return code wasn't being checked.
I don't like macros with returns, so I converted
SPLIT_AND_PASS_PRETAG_BUCKETS into a function.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90554 13f79535-47bb-0310-9956-ffa450edef68
2001-08-23 15:45:49 +00:00
Ryan Bloom
6e932b2870 Fix the new method code. We need to cast 1 to an apr_int64_t or it will
be treated as a 32-bit integer, and it will wrap after being shifted
32 times.
Submitted by:	Cody Sherr <csherr@covalent.net> and
		Ryan Morgan <rmorgan@covalent.net>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90090 13f79535-47bb-0310-9956-ffa450edef68
2001-08-11 04:04:13 +00:00
William A. Rowe Jr
dc55b249e6 We are done with this subrequest (before we even got started...) so
dump it early.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89943 13f79535-47bb-0310-9956-ffa450edef68
2001-08-06 18:41:31 +00:00
William A. Rowe Jr
0fcef8e76d This is not C++, falling out of scope doesn't constitute destruction :)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89942 13f79535-47bb-0310-9956-ffa450edef68
2001-08-06 18:38:43 +00:00
William A. Rowe Jr
725bb2c1c6 Multiviews and mod_negotiation will already handle this case, it never
belonged in mod_cgi itself.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89932 13f79535-47bb-0310-9956-ffa450edef68
2001-08-06 04:47:12 +00:00
Bill Stoddard
a685e2a0e8 Be a bit more explicit. If the filetype is not an APR_REG, the fail the request.
This relys on directory_walk having already resolved symboloc links.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89789 13f79535-47bb-0310-9956-ffa450edef68
2001-07-30 16:18:05 +00:00
Bill Stoddard
11f28c3d04 Win32: Get exec cgi tag working. finfo.protection == 0 on Windows from the
apr_stat() call in directory walk (because discovering the permissions on
Windows is ridiculously expensive).  All we really need to know is whether the
file exists.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89788 13f79535-47bb-0310-9956-ffa450edef68
2001-07-30 15:11:40 +00:00
William A. Rowe Jr
48d57962bc Safe casts - we are assured that len_read is positive, but it must be
stored as an int to initially check the ap_get_client_block() result.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89717 13f79535-47bb-0310-9956-ffa450edef68
2001-07-25 22:02:54 +00:00
William A. Rowe Jr
16231360f1 Goodbye ap_send_http_header
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88390 13f79535-47bb-0310-9956-ffa450edef68
2001-02-28 15:24:09 +00:00
Ryan Bloom
740968b2bf Get mod_cgi building again after moving a bunch of code from the HTTP
module to the core.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88345 13f79535-47bb-0310-9956-ffa450edef68
2001-02-26 06:24:44 +00:00
Greg Stein
dd9b08e321 *) Introduce "ap_conf_vector_t" type to assist with legibility and provide
some type safety. (unfortunately, our old "void*" is type-safe with the
   new one, but over time we should be better)

*) Propagate the new type to all appropriate functions.

*) Random cleaning, whitespace, stylistic nits.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88225 13f79535-47bb-0310-9956-ffa450edef68
2001-02-18 02:58:53 +00:00
Roy T. Fielding
381f88d56a Update copyright to 2001
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88184 13f79535-47bb-0310-9956-ffa450edef68
2001-02-16 04:26:53 +00:00
Doug MacEachern
d42ea0426e s/apr_bucket_pipe_creat/apr_bucket_pipe_create/ typo
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88141 13f79535-47bb-0310-9956-ffa450edef68
2001-02-13 20:16:15 +00:00
Greg Stein
5dc34feb12 *) continued header revamping
*) torch some headers (and some libs) from the autoconf stuff


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88061 13f79535-47bb-0310-9956-ffa450edef68
2001-02-10 14:04:21 +00:00
Greg Stein
23714288fe *) remove obsolete http_conf_globals.h
*) simplify all this #ifdef'ing: just nuke the unixd.h header. it isn't
   actually needed.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88045 13f79535-47bb-0310-9956-ffa450edef68
2001-02-10 03:03:18 +00:00
Doug MacEachern
88d3406f9a renaming various functions for consistency sake
see: http://apr.apache.org/~dougm/apr_rename.pl
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88019 13f79535-47bb-0310-9956-ffa450edef68
2001-02-08 07:45:33 +00:00
Ryan Bloom
0d10444e86 Make sure that mod_include's post_config hook always runs before
mod_cgi(d)'s post_config hook.  Mod_include creates a hash table in the
post_config stage that mod_cgi(d) uses during it's post_config stage, so
it must be done in this order.
Submitted by:	 Brian Havard <brianh@kheldar.apana.org.au>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@87992 13f79535-47bb-0310-9956-ffa450edef68
2001-02-06 16:21:14 +00:00
Ryan Bloom
fbfcde1463 Move the logic for creating CGI processes from mod_include to mod_cgi(d).
This removes a good deal of duplicate logic for creating CGI scripts.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@87984 13f79535-47bb-0310-9956-ffa450edef68
2001-02-05 22:57:21 +00:00
William A. Rowe Jr
6282d6e364 Eliminate all assumptions that finfo.protection reflects the existance
or absense of a file.  finfo.filetype is defined as 0 if APR_NOFILE,
  or a non-zero value if the file could be apr_stat()'ed.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@87933 13f79535-47bb-0310-9956-ffa450edef68
2001-01-31 22:45:35 +00:00
William A. Rowe Jr
2f6d08ae45 Another module to cooperate with APR_FINFO_
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@87878 13f79535-47bb-0310-9956-ffa450edef68
2001-01-27 23:35:21 +00:00
William A. Rowe Jr
cd1ef027c2 The changes required for the APR_FINFO_wanted argument to
apr_stat/lstat/getfileinfo.  These are -NOT- optimal, they
  are simply the required changes to get the server working.
  The size of the patch is a warning about how we need to
  really look at what we are trying to accomplish with all
  of these stat/lstat calls.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@87760 13f79535-47bb-0310-9956-ffa450edef68
2001-01-20 21:42:23 +00:00
William A. Rowe Jr
59bbd68bec The big change. This is part 3 of the apr-util symbols rename, please
see the first commit of srclib/apr-util/include (cvs apr-util/include)
  for the quick glance at symbols changed.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@87731 13f79535-47bb-0310-9956-ffa450edef68
2001-01-19 07:04:36 +00:00
William A. Rowe Jr
40655f8641 Provide apr_pool_t arg to register_hooks, since anything they do in that
step -must- be done with a pool that will not outlive the cmd pool, from
  which they may have been dynamically loaded.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@87697 13f79535-47bb-0310-9956-ffa450edef68
2001-01-17 15:52:12 +00:00
Doug MacEachern
40391fb9f2 adjust remaining modules to use the new handler hook method (Alan Edwards)
bring back the old handler prototype by reusing r->handler (dougm)
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@87617 13f79535-47bb-0310-9956-ffa450edef68
2001-01-08 23:55:12 +00:00
Ben Laurie
45f620672d Make handlers use hooks.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@87604 13f79535-47bb-0310-9956-ffa450edef68
2001-01-07 19:55:59 +00:00
Jeff Trawick
b3ec25393c mod_cgi: Fix some problems where the wrong error value was being traced
(errno instead of apr_status).

mod_cgid: Keep some of the code in synch with the version in mod_cgi.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@87576 13f79535-47bb-0310-9956-ffa450edef68
2001-01-03 20:03:48 +00:00
Ryan Bloom
7808798c48 On Unix, we do not want to use an absolute path for CGI scripts. SuEXEC
will not let us use one, and when not using SuEXEC, we chdir() into the
correct directory.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@87537 13f79535-47bb-0310-9956-ffa450edef68
2000-12-27 23:30:07 +00:00
Allan K. Edwards
73c6ea589f Get exe CGI's working again on Windows
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@87359 13f79535-47bb-0310-9956-ffa450edef68
2000-12-15 15:02:38 +00:00
Greg Stein
e980d3f135 *) sprinkle a little magic "const" dust around (specifically, to compensate
for the prototype change to ap_os_create_privileged_process())
*) wrap some long lines


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@87095 13f79535-47bb-0310-9956-ffa450edef68
2000-11-27 22:30:34 +00:00
Greg Stein
ead2dae94c *) Compensate for recent changes in the APR headers. Specifically, some
files need to specifically include stdio.h, or a particular apr_*.h
   header.

*) Adjust callers of apr_create_process() to deal with the extra "const"

*) Add "const" to args of ap_os_create_privileged_process()


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@87080 13f79535-47bb-0310-9956-ffa450edef68
2000-11-26 04:47:43 +00:00
William A. Rowe Jr
4bdc763772 Cleanup more compiler warnings.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@87010 13f79535-47bb-0310-9956-ffa450edef68
2000-11-18 15:12:47 +00:00
Jeff Trawick
85815fec74 Clean up some of the warnings from a Tru64 build, mostly due to
the recent apr_ssize_t->apr_size_t changes.  The problem in mod_cgid
was an int function which didn't have a return statement.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86934 13f79535-47bb-0310-9956-ffa450edef68
2000-11-13 03:50:16 +00:00
William A. Rowe Jr
8e5cf24494 Fix foobar
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86720 13f79535-47bb-0310-9956-ffa450edef68
2000-10-23 19:02:41 +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
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
0c6f3b11ce Document more bad Win32 behavior... if the url isn't .exe, then don't
throw an .exe


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86606 13f79535-47bb-0310-9956-ffa450edef68
2000-10-16 03:37:20 +00:00
Jeff Trawick
8a0da4d6e5 Write all of the request body to the child, not just what the kernel
would accept on the first write.

Because the pipe is non-blocking (via setting an APR timeout), we
have to send in a loop.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86495 13f79535-47bb-0310-9956-ffa450edef68
2000-10-10 04:11:35 +00:00
Ryan Bloom
29e68ae602 Change r->filters to r->output_filters. This sets things up for us to
put input filters into Apache.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86246 13f79535-47bb-0310-9956-ffa450edef68
2000-09-18 01:24:55 +00:00
Tony Finch
7ac6ab9f51 Use wrapper macros to avoid the verbosity of the AP_RING macros when
doing things with bucket brigades.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86185 13f79535-47bb-0310-9956-ffa450edef68
2000-09-09 06:48:10 +00:00
Tony Finch
6d7be19c90 Reduce the manualarity of managing bucket brigade lists by using the
new AP_RING macros. Most of this commit is fairly pedestrian as you
would expect, but I had to redo the chunking filter because of the
amount of pointer juggling it did. I have done some minimal testing
of this patch and it seems to work.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86178 13f79535-47bb-0310-9956-ffa450edef68
2000-09-08 10:16:14 +00:00
Jeff Trawick
5b3c8b1c32 Call ap_pass_brigade() *before* soaking up stderr. The normal CGI
is going to write a bunch of stuff to stdout and nothing to stderr.
Reading stderr before processing the stdout pipe can cause deadlock if
the CGI fills the kernel buffer for stdout because the CGI will stall
writing to stdout while the httpd process will stall reading from the
CGI's stderr.

The NPH CGI behavior was unchanged.  If this is still a problem for NPH
CGIs, it was a problem before filtering too.

Also, get rid of a couple of unused variables in cgi_handler.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86150 13f79535-47bb-0310-9956-ffa450edef68
2000-08-26 19:45:15 +00:00
Ryan Bloom
d9ce6e33d5 Make CGI's use bucket brigades. This will only work with mod_cgi for the
time being.  The changes should apply equally to mod_cgid, but I haven't
had a chance to really try it yet.  This is definately sub-optimal as far
as performance is concerned.  The concepts are there, and the flags are
available for performance tuning, but I didn't want to really get too
enmeshed in it today.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86148 13f79535-47bb-0310-9956-ffa450edef68
2000-08-25 22:18:15 +00:00
Ryan Bloom
fa2fa443b6 Fix a small typo and an incorrect type.
Submitted by:	Victor J. Orlikowski <v.j.orlikowski@gte.net>
Reviewed by:	Ryan Bloom


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86140 13f79535-47bb-0310-9956-ffa450edef68
2000-08-23 18:06:00 +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
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
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
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
Greg Stein
02a2200fd8 blast the old names for the status codes
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85686 13f79535-47bb-0310-9956-ffa450edef68
2000-06-24 17:34:11 +00:00
Ben Laurie
2b5cf4ec3c Convert module and fix warnings.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85642 13f79535-47bb-0310-9956-ffa450edef68
2000-06-20 20:47:01 +00:00