1
0
mirror of https://github.com/apache/httpd.git synced 2025-11-08 04:22:21 +03:00
Commit Graph

140 Commits

Author SHA1 Message Date
Ian Holsman
8c1e315d3f Doxygen fixup / cleanup
submited by: Neale Ranns neale ranns.org
reviewed by: Ian Holsman



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@263931 13f79535-47bb-0310-9956-ffa450edef68
2005-08-28 23:03:59 +00:00
William A. Rowe Jr
025c799a79 Initially a no-op. Add trace_enable configuration. The http and proxy
flavors of interpreting this flag are yet to be committed.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@208785 13f79535-47bb-0310-9956-ffa450edef68
2005-07-01 19:39:26 +00:00
Paul Querna
6a23d6ebeb Merge the listen-protocol sandbox branch to trunk.
I will be adding documentation for the new directives hopefully in the next day or so.

* server/core.c: Added 'Protocol' to the core module config
                 Added ap_{set,get}_server_protocol API.
                 Added new directive: 'AcceptFilter'.
                 Enable 'httpready' by default on systems that support it.  Use dataready filters for others.

* server/listen.c: Attempt to inherit protocols from Listener Records to Server configs.
                   The 'Listen' directive can now optionally take a protocol arg
                   Move bits that determined which accept filter is applied to core.c.
                   Added bits to find the correct accept filter based on the core's configuration.

* include/{ap_listen.h,http_core.h}: Add Protocol to respective structures.

* include/http_core.h: Add the accf_map table to the core_server_config structure

* include/ap_mmn.h: Minor MMN Bump for the new interfacces.

* modules/ssl/ssl_engine_init.c: Use the new protocol framework to enable mod_ssl for 'https' websites.



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@190563 13f79535-47bb-0310-9956-ffa450edef68
2005-06-14 09:21:18 +00:00
Jeff Trawick
7ae218a5bf Support the suppress-error-charset setting, as with Apache 1.3.x.
With Apache 1.3.x, it is a bit simpler as the request does
not go through ap_make_content_type().

Modules can set custom error responses but not be able to
set the charset, so they have to code the charset in the
html.  Thus, it is useful to preserve 1.3.x behavior exactly.

PR: 26467


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@170354 13f79535-47bb-0310-9956-ffa450edef68
2005-05-16 10:41:42 +00:00
Joe Orton
a0570c8746 Move the POSIX reg* implementations into the ap_* namespace;
internalise the ap_reg*<->PCRE wrapper:

* configure.in: Add srclib/pcre to the include path.

* include/ap_regex.h: Renamed from include/pcreposix.h.  Prefix all
constants with AP_; prefix all functions and types with ap_.  Define
AP_DECLARE to nothing if necessary.  Remove regcomp error codes.

* include/httpd.h: Include ap_regex.h not pcreposix.h.
(ap_pregcomp, ap_regexec, ap_regfree): s/regex_t/ap_regex_t/.
(ap_regexec, ap_regerror): Prototypes moved to ap_regex.h.

* server/util.c (regex_cleanup, ap_pregcomp, ap_pregsub, ap_pregfree):
Adjust for ap_ prefixed types.  (ap_regexec, ap_regerror): Removed.

* server/Makefile.in: Build util_pcre.c.

* server/util_pcre.c: Copied from srclib/pcre/pcreposix.c; remove use
of PCRE-internals to do error mapping; rename types to add AP_/ap_
prefixes as above.  Use APR includes.  (ap_regerror): Use apr_snprintf.

* srclib/pcre/Makefile.in: Don't build pcreposix.c into libpcre.la.

* modules/*: Update to use new type and constant names.

PR: 27750 (part one)
Submitted by: Andres Salomon <dilinger voxel.net>, Joe Orton


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@153384 13f79535-47bb-0310-9956-ffa450edef68
2005-02-11 12:00:41 +00:00
Justin Erenkrantz
905cdf9f0b Update copyright year to 2005 and standardize on current copyright owner line.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@151408 13f79535-47bb-0310-9956-ffa450edef68
2005-02-04 20:28:49 +00:00
Joe Orton
a756d60d81 Fix gcc "no previous prototype" warnings after reorganisation:
* server/core_filters.c (ap_core_input_filter, ap_core_output_filter,
ap_net_time_filter): Renamed to add ap_ prefixes for global symbols.

* include/ap_listen.h: Don't export ap_listen_open at all, it's not
used outside server/listen.c any more.

* server/listen.c (open_listeners): Renamed from ap_listen_open.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@109498 13f79535-47bb-0310-9956-ffa450edef68
2004-12-02 13:28:04 +00:00
Paul Querna
9d66007aa2 Added 'AllowOverride Options=Indexes,MultiViews' to give an admin better
control over what options can be used in .htaccess files.

PR: 29310
Submitted by: Tom Alsberg <alsbergt-apache cs.huji.ac.il>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104283 13f79535-47bb-0310-9956-ffa450edef68
2004-07-14 06:36:42 +00:00
Jeff Trawick
e980bec536 Fix memory corruption problem with ap_custom_response() function.
The core per-dir config would later point to request pool data
that would be reused for different purposes on different requests.

This is based on an old 1.3 patch submitted by Will Lowe.
It needs a minor tweak before committing to 1.3, but he had
it pretty darn close.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@103120 13f79535-47bb-0310-9956-ffa450edef68
2004-03-24 02:53:35 +00:00
André Malo
093bd92973 Satisfy directives now can be influenced by a surrounding <Limit>
container.

PR: 14726.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102954 13f79535-47bb-0310-9956-ffa450edef68
2004-03-14 16:24:55 +00:00
André Malo
eeb57c17ad fix name of The Apache Software Foundation
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102619 13f79535-47bb-0310-9956-ffa450edef68
2004-02-09 20:40:53 +00:00
André Malo
129635b965 fix copyright dates according to the first check in
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102548 13f79535-47bb-0310-9956-ffa450edef68
2004-02-07 19:27:57 +00:00
André Malo
4f02cb1e18 apply Apache License, Version 2.0
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102525 13f79535-47bb-0310-9956-ffa450edef68
2004-02-06 22:58:42 +00:00
André Malo
fb07607180 update license to 2004.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102135 13f79535-47bb-0310-9956-ffa450edef68
2004-01-01 13:26:26 +00:00
André Malo
8dd8543053 Rework of the recursion stopper - collapse recursion counters into one function
Reviewed by: Justin Erenkrantz


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@100095 13f79535-47bb-0310-9956-ffa450edef68
2003-05-29 23:04:32 +00:00
André Malo
1af02389bb Prevent the server from crashing when entering infinite loops. The
new LimitInternalRecursion directive configures limits of subsequent
internal redirects and nested subrequests, after which the request
will be aborted.
[William Rowe, Jeff Trawick, Andr� Malo]

PR: 19753 (and probably others)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@99911 13f79535-47bb-0310-9956-ffa450edef68
2003-05-19 01:19:55 +00:00
André Malo
742af25096 finished that boring job:
update license to 2003.

Happy New Year! ;-))


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@98573 13f79535-47bb-0310-9956-ffa450edef68
2003-02-03 17:53:28 +00:00
Ken Coar
12b11896a7 here we go. add a directive that will keep %2f from being
decoded into '/', allowing the *_walk to do their magic and
	return 404 if it's in the path, and allowing it in the path-info.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@98479 13f79535-47bb-0310-9956-ffa450edef68
2003-01-23 21:34:13 +00:00
André Malo
fe5980e409 move rfc1413 code to a new module "metadata:mod_ident".
The rfc1413 code itself is mostly c&p, but can still bear
some rework ...

This patch removes the global ap_rfc1413 function and the
ap_rfc1413_timeout variable. It also introduces a new config
directive IdentityCheckTimeout (default 30 sec).

Reviewed by: Justin Erenkrantz


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@98320 13f79535-47bb-0310-9956-ffa450edef68
2003-01-18 03:37:55 +00:00
Brian Pane
c31938c6ce comment an endif for clarity
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@97930 13f79535-47bb-0310-9956-ffa450edef68
2002-12-15 20:05:23 +00:00
Brian Pane
816177d6ec mod_logio modification: count bytes-sent after the writev or sendfile
call in the core_output_filter, in order to get a more accurate count
of the total bytes transmitted in cases where the client terminates
the connection before the entire response is sent.

Note: This works by adding a flush bucket to each response when
mod_logio is used; the side-effect is that pipelined responses
get broken up into separate network writes per request (but there's
no impact on pipelining when mod_logio is not enabled).

Submitted by:	Bojan Smojver <bojan@rexursive.com>
Reviewed by:	Brian Pane


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@97300 13f79535-47bb-0310-9956-ffa450edef68
2002-10-25 06:52:02 +00:00
William A. Rowe Jr
a1ef1921c7 Introduce an EnableSendfile directive (defaulted to ON) to allow users
to disable sendfile mechanics for NFS volume mounts and other kernel
  objects that don't support sendfile.  And EnableSendfile off can be used
  to help narrow bugs down to the sendfile mechanics or eliminate the
  possiblity that sendfile is a factor on any given platform.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@97205 13f79535-47bb-0310-9956-ffa450edef68
2002-10-14 17:42:45 +00:00
Greg Stein
72f0111ad8 Add logic to the default_handler to enable script delivery to script
processors located in the output filter stack. This is on by default,
but will change "soon" to off -- the processors will then need to
enable it when they are installed into the filter chain.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@97065 13f79535-47bb-0310-9956-ffa450edef68
2002-10-03 00:16:47 +00:00
Brian Pane
d74c4014cc Added EnableMMAP directive to allow the server administrator to
prevent mmap of file buckets upon read.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@95040 13f79535-47bb-0310-9956-ffa450edef68
2002-05-11 23:24:29 +00:00
William A. Rowe Jr
e866b9da24 Whoops, missed this. Moved these symbols to mod_core.h
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94469 13f79535-47bb-0310-9956-ffa450edef68
2002-04-05 20:55:38 +00:00
Cliff Woolley
7d0712e89f Match the new APR_BUCKET_BUFF_SIZE. We want this to be slightly less than
8KB to leave room for the various allocators' internal structures while
still fitting into a total of 8KB.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94356 13f79535-47bb-0310-9956-ffa450edef68
2002-04-01 05:43:47 +00:00
Bill Stoddard
e9ec908a01 Final commit to add ap_rset_content_type accessor. Add AddOutputFiltersbyType
filters during call to ap_rset_content_type()


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94028 13f79535-47bb-0310-9956-ffa450edef68
2002-03-20 02:05:43 +00:00
Roy T. Fielding
845cbfd508 Update our copyright for this year.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93918 13f79535-47bb-0310-9956-ffa450edef68
2002-03-13 20:48:07 +00:00
Justin Erenkrantz
6700fa91fb Introduce AddOutputFilterByType directive.
AddOutputFilterByType DEFLATE text/html

(I will add docco soon, I promise.  If someone beats me to it, cool...)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93490 13f79535-47bb-0310-9956-ffa450edef68
2002-02-19 04:45:53 +00:00
Brian Pane
15d2ad0f1a Replaced some more ap_add_output_filter() calls with
ap_add_output_filter_handle() for efficiency


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93051 13f79535-47bb-0310-9956-ffa450edef68
2002-01-27 19:12:56 +00:00
Brian Pane
196916cef1 Performance improvement: incorporated the use of the new
ap_add_input_filter_handle() and ap_add_output_filter_handle()
functions for core filters


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93040 13f79535-47bb-0310-9956-ffa450edef68
2002-01-27 02:13:10 +00:00
Ken Coar
0d1a46028e Bring forward the FileETag directive enhancement from 1.3.23-dev.
(Passes all 61 of the apache/etags.t test.)  Bump MMN due to
	change to core_dir_config structure (new fields at end).


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92830 13f79535-47bb-0310-9956-ffa450edef68
2002-01-11 18:55:27 +00:00
Justin Erenkrantz
8c16aeeeb8 Fix LimitRequestBody directive by moving the relevant code from
ap_*_client_block to ap_http_filter (aka HTTP_IN).  This is the
only appropriate place for limit checking to occur (otherwise,
chunked input is not correctly limited).

Also changed the type of limit_req_body to apr_off_t to match the
other types inside of HTTP_IN.  Also made the strtol call for
limit_req_body a bit more robust.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92700 13f79535-47bb-0310-9956-ffa450edef68
2002-01-02 07:56:25 +00:00
Brian Pane
4d9b06444e Generalized the recent prep_walk_cache optimizations to allow other
modules to register "notes" within the array of working data in
the core_request_config


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92697 13f79535-47bb-0310-9956-ffa450edef68
2002-01-01 20:36:18 +00:00
Brian Pane
199e4864fc Performance fix for prep_walk_cache():
Moved the directory/location/file-walk caches from the
request's pool userdata hash table to the core_request_config
struct.

This change removes about 60% of the processing time from
prep_walk_cache().


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92684 13f79535-47bb-0310-9956-ffa450edef68
2001-12-31 08:18:32 +00:00
William A. Rowe Jr
b9551a11e8 Jeff's guess, right on. [Thought I committed it all... gotta grab a
clean parallel tree, all my parallel trees are dirty again.]


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92447 13f79535-47bb-0310-9956-ffa450edef68
2001-12-13 14:50:36 +00:00
Jeff Trawick
06cf109166 hack up core_dir_config so that server/core.c compiles again
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92446 13f79535-47bb-0310-9956-ffa450edef68
2001-12-13 13:15:56 +00:00
Ian Holsman
4f1a15140d change the signature of ap_custom_response() to use a
"const char *" instead of a "char *".


PR: 8791
Submitted by: Kurt Brown kurtb149@yahoo.com
Reviewed by:	Ian Holsman


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92024 13f79535-47bb-0310-9956-ffa450edef68
2001-11-18 02:57:12 +00:00
William A. Rowe Jr
f495937085 Remove the Win32 script-processing exception from mod_cgi, and
roll build_command_line/build_argv_list into a unified, overrideable
   ap_cgi_build_command optional function.

   Eliminates a ton of Win32 cruft from core.c for registry parsing.
   Win32 (through the default handler, and newest changes to the
   apr_proc_create fn) continues to serve .bat/.exe files.  This is in
   preparation for adding modules/arch/win32/mod_win32 for scripts.

   Please review the mod_cgi.c behavior very carefully.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91058 13f79535-47bb-0310-9956-ffa450edef68
2001-09-17 21:07:36 +00:00
William A. Rowe Jr
3641520e9f Changed syntax of Set{Input|Output}Filter. The list of filters
must be semicolon delimited (if more than one filter is given.)
     The Set{Input|Output}Filter directive now overrides a parent
     container's directive (e.g. SetInputFilter in <Directory /web/foo>
     will override any SetInputFilter directive in <Directory /web>.)
     This new syntax is more consistent with Add{Input|Output}Filter
     directives defined in mod_mime.  Also cures a bug in prior releases
     where the Set{Input|Output}Filter directive would corrupt the
     global configuration if the multiple directives were nested.
     [William Rowe]


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90799 13f79535-47bb-0310-9956-ffa450edef68
2001-08-30 05:10:54 +00:00
William A. Rowe Jr
1a9639e088 Since the mod_mime patch was applied, here is the rest of the patch to
introduce the ForceType and SetHandler [absolute references] directly
  into the very top of the fixups phase.  This means these will always
  override _any_ mime module, not just mod_mime.  Ergo, other mime modules
  can continue to set charset, encodings, etc.  Since these are globals,
  they belong in the core.

  This highlights a very serious drawback to the type_checker hook.  By
  using run first, a module that identifies _partial_ information (maybe
  just the content type) won't pass the query on to other modules, like
  mod_mime, that might further define the encoding or charset.  The
  type_checker hook should clearly become a run-all, and the modules should
  decline if they see someone ahead of them answered a question they were
  going to try to figure.

  Which means - if type_checker becomes RUN_ALL - this new override hook
  fn should become a type_checker again - and RUN_REALLY_FIRST, and let
  other modules _choose_ not to override this election.  (We can run it
  again at the end, for a recount ;)  Votes?


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90797 13f79535-47bb-0310-9956-ffa450edef68
2001-08-30 04:24:09 +00:00
William A. Rowe Jr
7552c9cb16 Eliminate proxy: (and all other 'special') processing from the
ap_directory_walk() phase.  Modules that want to use special
  walk logic should refer to the mod_proxy map_to_location example,
  with it's proxy_walk and proxysection implementation.  This makes
  either directory_walk flavor much more legible, since that phase
  only runs against real <Directory > blocks.

  On a technical note, this patch also forces the Directory to be
  canonical (unless it is "/" or a regex.)  It also allows us to
  be more explicit when declaring <Directory > block errors.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90684 13f79535-47bb-0310-9956-ffa450edef68
2001-08-26 05:10:17 +00:00
William A. Rowe Jr
bb757df043 sec, sec, who's got a sec? This gave me a headache, but I had to clear
out the last patch before I rearranged this to be _readable_.

  Next step for everyone's sanity, provide <Proxy > directives ;)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90646 13f79535-47bb-0310-9956-ffa450edef68
2001-08-24 18:12:02 +00:00
Ryan Bloom
85e8fbd0e2 Add the ability to extend the methods that Apache understands
and have those methods <limit>able in the httpd.conf. It uses
the same bit mask/shifted offset as the original HTTP methods
such as M_GET or M_POST, but expands the total bits from an int to
an ap_int64_t to handle more bits for new request methods than
an int provides.
Submitted by:	Cody Sherr <csherr@covalent.net>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89869 13f79535-47bb-0310-9956-ffa450edef68
2001-08-02 04:25:20 +00:00
William A. Rowe Jr
0eee59792b Provide the same optimization to the dir_config structure to track
d_is_absolute, along with d_is_fnmatch.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89791 13f79535-47bb-0310-9956-ffa450edef68
2001-07-30 18:51:57 +00:00
William A. Rowe Jr
c86f120560 Doc formatting fixes
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89749 13f79535-47bb-0310-9956-ffa450edef68
2001-07-27 21:01:16 +00:00
Greg Stein
e5640cedcc Define a hook for fetching management/status items.
This patch was submitted by Ian Holsman. Greg revised some names, applied
the Apache style, and namespace-prefixed the public symbols. Minor bugfix in
the use of the hook implementation macro.

Submitted by: Ian Holsman <IanH@cnet.com>
Reviewed by: Greg Stein


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89364 13f79535-47bb-0310-9956-ffa450edef68
2001-06-13 20:11:45 +00:00
Cliff Woolley
7ef7064507 Change AP_MIN_BYTES_TO_WRITE from 9000 to 8192 to match the bucket buffer
size.  This fixes the 8192-808-8192-808 iovec-length sequence problem
on platforms using writev() (eg OS/2).

Reviewed by:	Brian Havard


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88843 13f79535-47bb-0310-9956-ffa450edef68
2001-04-13 05:19:25 +00:00
Jeff Trawick
d3dcba691d tweak ap_get_remote_host() so that the caller can find out if she got
back an IP address

mod_access needed to know this, but the old code didn't handle IPv6


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88484 13f79535-47bb-0310-9956-ffa450edef68
2001-03-09 20:30:34 +00:00
Doug MacEachern
ffdad830aa just making server_signature enum decl easier to read (for both humans and C::Scan)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88274 13f79535-47bb-0310-9956-ffa450edef68
2001-02-22 08:42:09 +00:00