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

3319 Commits

Author SHA1 Message Date
Brian Pane
f119de12a4 Removed an extra apr_atomic_init() call from the mem_cache
post-config code (the APR init takes care of this at httpd
startup)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96949 13f79535-47bb-0310-9956-ffa450edef68
2002-09-22 20:03:42 +00:00
Roy T. Fielding
c5f6ba7402 kill a warning
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96948 13f79535-47bb-0310-9956-ffa450edef68
2002-09-22 05:18:33 +00:00
Brian Pane
09ce7e3904 Switch the most frequent apr_brigade_write() and apr_brigade_puts()
calls to apr_brigade_writev() for improved efficiency


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96946 13f79535-47bb-0310-9956-ffa450edef68
2002-09-22 00:05:08 +00:00
Bradley Nicholes
dcec8541b5 Clean up some left over garbage in the NetWare make files after moving the
provider API's into the core.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96931 13f79535-47bb-0310-9956-ffa450edef68
2002-09-20 16:23:38 +00:00
Justin Erenkrantz
f979a343af Add missing includes in mod_authn_file and mod_authn_dbm.
Submitted by:	Sebastian Bergmann <lists@sebastian-bergmann.de>
Reviewed by:	Justin Erenkrantz


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96926 13f79535-47bb-0310-9956-ffa450edef68
2002-09-20 06:14:31 +00:00
Justin Erenkrantz
e3455cc837 Take a stab in the dark at fixing up the Netware build due to the
addition of ap_{register|lookup}_provider.

Completely and utterly untested, but seems close.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96925 13f79535-47bb-0310-9956-ffa450edef68
2002-09-20 06:12:38 +00:00
Justin Erenkrantz
797f3afa2b Fix up Win32 build.
Submitted by:	Sebastian Bergmann <lists@sebastian-bergmann.de>
Reviewed by:	Justin Erenkrantz (not really, but...)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96924 13f79535-47bb-0310-9956-ffa450edef68
2002-09-20 06:06:41 +00:00
Justin Erenkrantz
dd3fba47e5 Axe unused file.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96920 13f79535-47bb-0310-9956-ffa450edef68
2002-09-20 00:58:17 +00:00
Justin Erenkrantz
7efe307731 Add ap_register_provider and ap_lookup_provider functions which resolve
the DSO link problems for DAV and the new aaa modules by moving the
provider code into the core of the server and generalizing them to be
used by any code.

Remove the auth{nz}_*_provider functions as they are no longer needed.

Change the dav_*_provider functions to wrap the ap_*_provider functions
as they have a bit more of a historical precedent that we should keep
around.

Reviewed by:	John K. Sterling <john@sterls.com> (in concept)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96919 13f79535-47bb-0310-9956-ffa450edef68
2002-09-20 00:57:50 +00:00
Greg Stein
41b61ff59f If a body arrives with an OPTIONS request, and it contains an
<options> tag, as defined by RFC 3253, and we don't recognize the
option as a builtin one, then we pass that off to the versioning hooks
of the DAV provider for it to process. However, we neglected to check
whether the provider actually *had* versioning hooks first.

The fix: simply check for versioning hooks before using them.

Problem found by: Ryan Bloom <rbb@apache.org>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96903 13f79535-47bb-0310-9956-ffa450edef68
2002-09-19 02:36:08 +00:00
Bradley Nicholes
18ab049b12 If the user passed invalid credentials (user id or password) and auth_ldap is
authoritative, allow the user to retry.  This is consistent with the other auth
modules.  It previously only allowed a retry if the password was invalid.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96893 13f79535-47bb-0310-9956-ffa450edef68
2002-09-18 23:38:30 +00:00
Justin Erenkrantz
913278e702 Add ability to use multiple providers for basic and digest authentication.
The syntax is:

AuthBasicProvider file dbm
AuthUserFile conf/basic-user
AuthDBMUserFile conf/basic-user-dbm


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96869 13f79535-47bb-0310-9956-ffa450edef68
2002-09-18 01:05:25 +00:00
Justin Erenkrantz
fbf9567e13 Remove Authoritative functionality from the authn providers.
All ordering semantics should be resolved by the modules which use these
providers, not the providers themselves.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96868 13f79535-47bb-0310-9956-ffa450edef68
2002-09-18 00:33:13 +00:00
Brian Pane
96e5043626 Removed unused variable
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96859 13f79535-47bb-0310-9956-ffa450edef68
2002-09-17 05:37:39 +00:00
Greg Stein
86371dd230 We need to set r->handler to indicate that we'll be handling the
request. Otherwise, other modules may attempt to do "funny stuff" with
the request (specifically: mod_dir will map /some/path/ into an
index.html document if found).

This reinstalls a fixups hook to set the r->handler value. Most of the
checks in the dav_handler() function are now moved to the fixups hook.
We just don't bother to set the handler unless all conditions are met.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96853 13f79535-47bb-0310-9956-ffa450edef68
2002-09-17 00:41:28 +00:00
Bradley Nicholes
69fc13bafa Moving the auth_provider APIs into the core binary to avoid a chicken and
egg problem when loading the auth modules vs the providers.  (Can't load the
auth module until the provider has registered.  Can't register the provider until
the auth module is loaded and APIs are available.)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96846 13f79535-47bb-0310-9956-ffa450edef68
2002-09-16 21:22:25 +00:00
Jeff Trawick
6f67265758 static-ize a function which is not supposed to be exported
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96835 13f79535-47bb-0310-9956-ffa450edef68
2002-09-16 12:43:36 +00:00
William A. Rowe Jr
822b5eb746 Revisit the code that Ian and I discussed on list. Actually pre-flight
the access logs so that failure conditions are noted earlier, and return
  out of the code using the != OK convention from ap_hook_open_logs.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96828 13f79535-47bb-0310-9956-ffa450edef68
2002-09-15 21:37:32 +00:00
Justin Erenkrantz
0070f5cebf Remove warnings seen with Sun's Forte compiler.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96818 13f79535-47bb-0310-9956-ffa450edef68
2002-09-15 00:00:48 +00:00
William A. Rowe Jr
894f2c0b75 Return mismatches... this solution simply won't work, as Ian reminded me.
Needs more work/time I don't have this afternoon, reverting to r 1.91


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96816 13f79535-47bb-0310-9956-ffa450edef68
2002-09-14 20:54:16 +00:00
William A. Rowe Jr
de2a40c0cc At least follow the proper failure path for failure to open the log file
or logging process.  Doesn't fix the lack of preflight testing.

Reviewed by: Ian Holsman


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96814 13f79535-47bb-0310-9956-ffa450edef68
2002-09-14 20:36:30 +00:00
Brian Pane
0ffc50f03b Remove the setting of the status line from the cache in mod_disk_cache,
because this was causing 200s to be sent on responses that were really
304s
Submitted by: Kris Verbeeck <Kris.Verbeeck@ubizen.com>
Reviewed by:   Brian Pane


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96803 13f79535-47bb-0310-9956-ffa450edef68
2002-09-14 04:51:55 +00:00
Justin Erenkrantz
128ea1d05d Revert the examples to use AuthGroupFile
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96798 13f79535-47bb-0310-9956-ffa450edef68
2002-09-13 23:59:58 +00:00
Justin Erenkrantz
11640d9ade Upon further review, it seems silly to add z the here when we didn't add
the n to the authn_file/authn_dbm backends.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96797 13f79535-47bb-0310-9956-ffa450edef68
2002-09-13 23:56:37 +00:00
William A. Rowe Jr
cbb609a5a5 A quick-n-dirty hack. Expose the auth_provider api from mod_auth_basic
alone, on Win32 only.

  Requires mod_auth_basic be loaded prior to using mod_auth_digest or any
  other mod_authn/z modules.

  Win32 builds again.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96794 13f79535-47bb-0310-9956-ffa450edef68
2002-09-13 21:55:31 +00:00
Bradley Nicholes
3b1df81471 NetWare make files and .def to build the new auth modules
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96790 13f79535-47bb-0310-9956-ffa450edef68
2002-09-13 21:34:27 +00:00
Bradley Nicholes
2098aa68ad NetWare Auth module .def files that are no longer needed due to the new
auth module architecture


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96789 13f79535-47bb-0310-9956-ffa450edef68
2002-09-13 21:31:49 +00:00
Bradley Nicholes
8ab432049e NetWare auth_digest make file that is no longer needed
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96788 13f79535-47bb-0310-9956-ffa450edef68
2002-09-13 21:29:57 +00:00
William A. Rowe Jr
572f9c3873 Axe unused variable 'res'
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96787 13f79535-47bb-0310-9956-ffa450edef68
2002-09-13 17:33:27 +00:00
William A. Rowe Jr
d6d8198522 Welcome to the new schema. Multiply defined symbols blow.
Don't expect things to compile right now.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96785 13f79535-47bb-0310-9956-ffa450edef68
2002-09-13 16:39:03 +00:00
Paul J. Reder
c844a622fc mod_cache: cache_storage.c. Add the hostname and any request
args to the key generated for caching. This provides a unique
key for each virtual host and for each request with unique
args. [Paul J. Reder, args code provided by Kris Verbeeck]


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96773 13f79535-47bb-0310-9956-ffa450edef68
2002-09-12 16:56:56 +00:00
Bill Stoddard
07a4681469 Do not cache responses to GET requests with query
URLs if the origin server does not explicitly provide an
Expires header on the response (RFC 2616 Section 13.9)

Submitted by:	Kris Verbeeck <krisv@be.ubizen.com>
Reviewed by:	Bill Stoddard


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96772 13f79535-47bb-0310-9956-ffa450edef68
2002-09-12 14:36:18 +00:00
Jeff Trawick
2a0347b2e4 make sure we always set return_code when converting a password-check failure
to an HTTP response code


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96747 13f79535-47bb-0310-9956-ffa450edef68
2002-09-10 14:40:46 +00:00
Jeff Trawick
de24ddc743 pick up prototypes for apr_base64_* and, on some platforms, strcasecmp
zap some unused variables


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96746 13f79535-47bb-0310-9956-ffa450edef68
2002-09-10 14:36:30 +00:00
Jeff Trawick
c865da8991 fix a syntax error in an enum (as far as some non-gcc compilers are
concerned)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96745 13f79535-47bb-0310-9956-ffa450edef68
2002-09-10 14:32:41 +00:00
Jeff Trawick
15f7219c4a fix a bad parameter to ap_log_rerror()
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96744 13f79535-47bb-0310-9956-ffa450edef68
2002-09-10 14:29:58 +00:00
Justin Erenkrantz
20202e5cdc Stage #2 of aaa rewrite: Add provider support so that mod_authn_* modules
do not have to re-implement basic auth and to allow mod_auth_digest (and
other modules) to leverage the authn backends.

Adds AuthBasicProvider and AuthDigestProvider directives.

This also moves a lot of the basic auth handling code inside of mod_auth_basic
(but does not remove the code in server/protocol.c - that will have to wait
for a version bump so that we don't totally bust old modules).

This patch incorporates code review comments by Greg Stein.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96739 13f79535-47bb-0310-9956-ffa450edef68
2002-09-10 06:57:03 +00:00
Justin Erenkrantz
9cdc0f0ce9 Stage #1 of the aaa rewrite - refactoring modules.
All modules are reorganized under the following scheme:
- mod_auth_*:   Front-end (basic, digest)
- mod_authn_*:  Authentication (anon, dbm, default, file)
- mod_authz_*:  Authorization (dbm, default, groupfile, host, user)

This passes the httpd-test suite when it accounts for the renaming of
aaa modules.

Originally written by: Dirk-Willem van Gulik
Completed by: Justin Erenkrantz


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96728 13f79535-47bb-0310-9956-ffa450edef68
2002-09-10 00:15:39 +00:00
Brian Pane
306c5d82d9 Check that r->filename is non-null before trying to use
it in proxy_map_location()
PR: 12340


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96715 13f79535-47bb-0310-9956-ffa450edef68
2002-09-08 17:56:18 +00:00
Bradley Nicholes
882ba5a314 Added the LDAP module dependancies to the link
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96689 13f79535-47bb-0310-9956-ffa450edef68
2002-09-06 17:53:46 +00:00
Brian Pane
97bd341416 More calloc->malloc optimizations
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96679 13f79535-47bb-0310-9956-ffa450edef68
2002-09-06 12:57:47 +00:00
Brian Pane
324fcff63a Optimization: use apr_table_addn instead of apr_table_setn when
unserializing tables


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96678 13f79535-47bb-0310-9956-ffa450edef68
2002-09-06 12:41:32 +00:00
Brian Pane
8c9a4c260b Optimize away some strlen and memset calls
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96677 13f79535-47bb-0310-9956-ffa450edef68
2002-09-06 12:28:25 +00:00
Ian Holsman
f2ef7ec192 change the log_writer declaration so that it takes a request_rec instead of
just a pool.
(so that the writer can get to things like hostname)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96666 13f79535-47bb-0310-9956-ffa450edef68
2002-09-06 03:00:11 +00:00
Brian Pane
b59de5a08c Clean up the temporary brigade in error cases in ap_discard_request_body()
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96663 13f79535-47bb-0310-9956-ffa450edef68
2002-09-06 01:27:48 +00:00
Brian Pane
d6aa2b601f Fixed some bucket memory leaks in ap_http_filter()
Submitted by:	Joe Schaefer <joe+apache@sunstarsys.com>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96662 13f79535-47bb-0310-9956-ffa450edef68
2002-09-06 01:18:55 +00:00
Greg Stein
7125ae188e Simplify mod_dav's handler.
The old mechanism would jam a handler name in whenever DAV was
configured for a directory. i.e. there weren't really any tests other
than "is DAV handling this directory?" The name was just a marker
which was tested later.

The new mechanism simplies performs the test right in the handler.
This is now possible since all handlers are called (before, you *had*
to set your own name so that your handler would be called). Since the
test is actually quite straightforward, we actually gain overall: no
more fixups hook, and a couple integer comparisons (rather than a
string compare).

And hoo... the code is simpler, too.

This code has been verified with "litmus 0.8", my own little
regression script, and some hand testing of static pages and CGIs. DAV
continues to work, and it doesn't appear that the changes interfered
with other operation.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96658 13f79535-47bb-0310-9956-ffa450edef68
2002-09-06 00:26:10 +00:00
Jeff Trawick
c0136a291a don't lose const when calling strrchr()
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96646 13f79535-47bb-0310-9956-ffa450edef68
2002-09-05 11:04:25 +00:00
Justin Erenkrantz
166a901497 Add ModMimeUsePathInfo directive.
This directive allows mod_mime to lookup extension information for content
served via Location blocks so that content-type, filters, etc can be
applied to non-file content.

(I wouldn't be shocked if we end up changing the directive name.)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96644 13f79535-47bb-0310-9956-ffa450edef68
2002-09-05 07:31:14 +00:00
Justin Erenkrantz
6cc68327da Switch hook from type_checker to fixups.
(This hook may be able to removed entirely in favor of being in dav_handler,
but that is left as an exercise to the reader.)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96641 13f79535-47bb-0310-9956-ffa450edef68
2002-09-05 06:26:07 +00:00