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

1684 Commits

Author SHA1 Message Date
Eric Covener
4a7cc05cac Mention how "satisfy any" affects AAA hooks run after access_checker
(access_checker_ex, check_user_id, auth_checker)



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1517979 13f79535-47bb-0310-9956-ffa450edef68
2013-08-27 20:46:16 +00:00
Jeff Trawick
aa4d08ea75 fix Doxygen warnings/comments
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1513461 13f79535-47bb-0310-9956-ffa450edef68
2013-08-13 12:36:27 +00:00
Jeff Trawick
8f3558bf2d Add util_fcgi.h and associated definitions and support
routines for FastCGI, based largely on mod_proxy_fcgi.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1513454 13f79535-47bb-0310-9956-ffa450edef68
2013-08-13 12:16:39 +00:00
Jeff Trawick
0d02cd5c6d Add ap_log_data(), ap_log_rdata(), etc. for logging buffers.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1512819 13f79535-47bb-0310-9956-ffa450edef68
2013-08-10 19:50:58 +00:00
Eric Covener
693c93acf0 access_checker_ex runs immediately after access_checker,
which both must run well before auth_checker. No other contrast is possible so
assuming this doc is just a typo.

access_checker vs. access_checker_ex is discussed here:

    Subject: svn commit: r964156 - in /httpd/httpd/trunk: docs/manual/developer/ include/ modules/aaa/ server/
    http://svn.apache.org/viewvc?rev=964156&view=rev



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1511878 13f79535-47bb-0310-9956-ffa450edef68
2013-08-08 17:06:48 +00:00
Jeff Trawick
cf212a0867 fix a couple of grammar problems
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1509341 13f79535-47bb-0310-9956-ffa450edef68
2013-08-01 17:36:11 +00:00
Guenter Knauf
d560c4b0a2 Fixed some Windows warnings.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1500483 13f79535-47bb-0310-9956-ffa450edef68
2013-07-07 16:57:16 +00:00
Guenter Knauf
824492e8ac Avoid including apr_general.h.
The MSVC Resource Compiler truncates macro names at char 31.
Since apr_general.h includes apr.h which in turn includes
system headers we get warnings or errors with the Resource
Compiler with newer system headers (VC10 and later) which
have macro names defined with more than 31 chars.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1499742 13f79535-47bb-0310-9956-ffa450edef68
2013-07-04 13:12:42 +00:00
Eric Covener
7fbc93eac7 Restore support for the AUTH_HANDLED return code in AUTHN providers,
like in 2.2, which allows authn provider to return their own status
in r->status (custom error code, or return a redirect)



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1499351 13f79535-47bb-0310-9956-ffa450edef68
2013-07-03 12:13:50 +00:00
Stefan Fritsch
a011e2a43f Replace pre_htaccess hook with more flexible open_htaccess hook
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1498880 13f79535-47bb-0310-9956-ffa450edef68
2013-07-02 11:26:41 +00:00
Eric Covener
cd331723ca factor out DEFAULT_HANDLER_NAME
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1496709 13f79535-47bb-0310-9956-ffa450edef68
2013-06-26 02:29:43 +00:00
Eric Covener
286e82c27d *) core: merge AllowEncodedSlashes from the base configuration into
(non-default) name-based virtual hosts. [Eric Covener]



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1496339 13f79535-47bb-0310-9956-ffa450edef68
2013-06-25 02:48:25 +00:00
Jeff Trawick
cfb752e8e4 fix doc for ap_pregsub_ex() return code
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1495501 13f79535-47bb-0310-9956-ffa450edef68
2013-06-21 16:45:51 +00:00
Jim Jagielski
67615cc81c make opaque
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1494156 13f79535-47bb-0310-9956-ffa450edef68
2013-06-18 14:31:24 +00:00
Jim Jagielski
f632ed1df1 Fold in Eric Covener's socket callback
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1493741 13f79535-47bb-0310-9956-ffa450edef68
2013-06-17 12:43:52 +00:00
Guenter Knauf
ce60943aec Added missing bump.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1491701 13f79535-47bb-0310-9956-ffa450edef68
2013-06-11 07:50:11 +00:00
Stefan Fritsch
4109a458c3 document params
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1491180 13f79535-47bb-0310-9956-ffa450edef68
2013-06-09 10:58:29 +00:00
Stefan Fritsch
fe32420e2c Allow use of strtoul()
It conforms to C89 and we don't support older compilers than that.

PR: 55077


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1491155 13f79535-47bb-0310-9956-ffa450edef68
2013-06-09 08:19:29 +00:00
Graham Leggett
65e4ae72ee Note the given functions will be available in APR.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1490292 13f79535-47bb-0310-9956-ffa450edef68
2013-06-06 14:06:22 +00:00
Graham Leggett
9bc9d79079 core: Stop the HTTP_IN filter from attempting to write error buckets
to the output filters, which is bogus in the proxy case. Create a
clean mapping from APR codes to HTTP status codes, and use it where
needed.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1482522 13f79535-47bb-0310-9956-ffa450edef68
2013-05-14 18:58:06 +00:00
Graham Leggett
d2e6782ea7 mod_proxy, mod_proxy_http: Connection headers must be stripped on the way
in and out, support an optional function to handle this.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1482075 13f79535-47bb-0310-9956-ffa450edef68
2013-05-13 20:11:36 +00:00
Guenter Knauf
969e215cca Make AP_SERVER_ADD_STRING define-able from CFLAGS.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1481955 13f79535-47bb-0310-9956-ffa450edef68
2013-05-13 16:30:04 +00:00
Graham Leggett
6194962c46 core, mod_cache: Ensure RFC2616 compliance in ap_meets_conditions()
with weak validation combined with If-Range and Range headers. Break
out explicit conditional header checks to be useable elsewhere in the
server. Ensure weak validation RFC compliance in the byteranges filter.
Ensure RFC validation compliance when serving cached entities. PR 16142


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1479905 13f79535-47bb-0310-9956-ffa450edef68
2013-05-07 13:42:31 +00:00
Graham Leggett
997e0f6d33 core: Add the ability to do explicit matching on weak and strong ETags
as per RFC2616 Section 13.3.3.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1479528 13f79535-47bb-0310-9956-ffa450edef68
2013-05-06 11:41:10 +00:00
Ruediger Pluem
5cdd5b8e23 * Minor bump as documented (missed in r1478140)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1479058 13f79535-47bb-0310-9956-ffa450edef68
2013-05-04 08:49:12 +00:00
Graham Leggett
6e77e5b20f mod_cache: Invalidate cached entities in response to RFC2616 Section
13.10 Invalidation After Updates or Deletions. PR 15868

Resolves outstanding issue with r1070179 as per
http://www.gossamer-threads.com/lists/apache/dev/395830?do=post_view_threaded#395830


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1478140 13f79535-47bb-0310-9956-ffa450edef68
2013-05-01 18:49:04 +00:00
Stefan Fritsch
8f776652e7 fix comment
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1476530 13f79535-47bb-0310-9956-ffa450edef68
2013-04-27 08:37:36 +00:00
Graham Leggett
a47569f7c1 core, mod_ssl: Lift the restriction that prevents mod_ssl taking
full advantage of the event MPM. Enable the ability for a module
to reverse the sense of a poll event from a read to a write or vice
versa.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1470679 13f79535-47bb-0310-9956-ffa450edef68
2013-04-22 19:48:25 +00:00
Jeff Trawick
4149fb80f4 mod_dav: Improve error handling in dav_method_put(), add new
dav_join_error() function.

PR: 54145

Submitted by: Ben Reser <ben reser.org>
Reviewed by: trawick


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1464241 13f79535-47bb-0310-9956-ffa450edef68
2013-04-04 00:22:52 +00:00
Jim Jagielski
9c534417a4 update w/ correct patch level
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1461832 13f79535-47bb-0310-9956-ffa450edef68
2013-03-27 20:04:22 +00:00
Stefan Fritsch
76e9a1dcb5 disable pool alloc poisoning if APR_POOL_DEBUG is enabled because it uses
conflicting defines


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1459992 13f79535-47bb-0310-9956-ffa450edef68
2013-03-22 21:13:10 +00:00
Jim Jagielski
42829738d9 Useful extensions...
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1458456 13f79535-47bb-0310-9956-ffa450edef68
2013-03-19 19:09:40 +00:00
Jim Jagielski
2bea7fb2bf Pull out duplicated code to proxy_util...
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1453875 13f79535-47bb-0310-9956-ffa450edef68
2013-03-07 14:06:51 +00:00
Jim Jagielski
0dbb42e9aa I do DECLARE
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1452774 13f79535-47bb-0310-9956-ffa450edef68
2013-03-05 12:49:45 +00:00
Eric Covener
70366501e4 PR54587: LDAP connections used for authn were not respecting
LDAPConnectionPoolTimeout due to confusion over what "bound" means.

Added some LDAP trace at TRACE5 to track how LDAP connections are
reused and rebound.



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1452551 13f79535-47bb-0310-9956-ffa450edef68
2013-03-04 21:54:24 +00:00
Jim Jagielski
f5f921a2f2 Add in rough uds support (Bugx 54101) from Blaise Tarr <blaise.tarr@gmail.com>
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1451633 13f79535-47bb-0310-9956-ffa450edef68
2013-03-01 16:21:49 +00:00
Jim Jagielski
9c4a88068a And now make aware... compile/build again :)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1451620 13f79535-47bb-0310-9956-ffa450edef68
2013-03-01 15:36:00 +00:00
Jim Jagielski
a06c6b096e Move skiplist to core
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1451618 13f79535-47bb-0310-9956-ffa450edef68
2013-03-01 15:29:30 +00:00
Graham Leggett
894e7bdab2 Correct some spelling.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1448453 13f79535-47bb-0310-9956-ffa450edef68
2013-02-20 22:46:59 +00:00
Jim Jagielski
0d13f604c1 ProxyPassInherit directive
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1439404 13f79535-47bb-0310-9956-ffa450edef68
2013-01-28 13:58:24 +00:00
Daniel Ruggeri
023e47cb2f Add helper function to execute command w args and get one line of output. Allow AuthLDAPBindPassword to have exec: argument like SSLPassPhraseDialog
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1433478 13f79535-47bb-0310-9956-ffa450edef68
2013-01-15 16:00:44 +00:00
Rainer Jung
dfcb39b3ec Happy new year.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1429349 13f79535-47bb-0310-9956-ffa450edef68
2013-01-05 18:15:07 +00:00
Stefan Fritsch
40431c8d75 Add some caching for password hash validation.
Password hash functions must be expensive in order to be secure. But
if they have to be re-evaluated for every request, performance
suffers.

As a minimal remedy, cache the most recent result for every
connection. This gives a great performance boost if a web browser
does many requests on the same connection with the same
user+password.  In principle, this may keep the plain text password
around longer than before. But in practice, there won't be much
difference since user+password can already remain in some unused
data bucket for longer than the request duration.

A proper solution still needs to be found for connections from
proxies which may carry requests for many different users.

While it currently only requires the conn_rec, the new
ap_password_validate() function takes username and request_rec to
allow future extensions, like detection of brute-force attempts.



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1427548 13f79535-47bb-0310-9956-ffa450edef68
2013-01-01 20:16:30 +00:00
Stefan Fritsch
f726113d33 Add an option to enforce stricter HTTP conformance
This is a first stab, the checks will likely have to be revised.
For now, we check

 * if the request line contains control characters
 * if the request uri has fragment or username/password
 * that the request method is standard or registered with RegisterHttpMethod
 * that the request protocol is of the form HTTP/[1-9]+.[0-9]+,
   or missing for 0.9
 * if there is garbage in the request line after the protocol
 * if any request header contains control characters
 * if any request header has an empty name
 * for the host name in the URL or Host header:
   - if an IPv4 dotted decimal address: Reject octal or hex values, require
     exactly four parts
   - if a DNS host name: Reject non-alphanumeric characters besides '.' and
     '-'. As a side effect, this rejects multiple Host headers.
 * if any response header contains control characters
 * if any response header has an empty name
 * that the Location response header (if present) has a valid scheme and is
   absolute

If we have a host name both from the URL and the Host header, we replace the
Host header with the value from the URL to enforce RFC conformance.

There is a log-only mode, but the loglevels of the logged messages need some
thought/work. Currently, the  checks for incoming data log for 'core' and the
checks for outgoing data log for 'http'. Maybe we need a way to configure the
loglevels separately from the core/http loglevels.



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1426877 13f79535-47bb-0310-9956-ffa450edef68
2012-12-30 01:23:24 +00:00
Stefan Fritsch
5dd77695c6 extend description of r->hostname
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1426802 13f79535-47bb-0310-9956-ffa450edef68
2012-12-29 18:37:17 +00:00
Stefan Fritsch
25f0a51a21 add some nonnull fn attributes
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1425444 13f79535-47bb-0310-9956-ffa450edef68
2012-12-23 08:55:45 +00:00
Stefan Fritsch
b5c0966006 Change HttpProtocol to again only allow to enable/disable 0.9
This reverts r1407643, but changes the syntax of HttpProtocol to
min=0.9|1.0, which is less ambiguous than the previous +0.9|-0.9.
    
Allowing to configure an arbitrary version range was a bad idea,
because it only checked the version in the request line, without
affecting the semantics of the headers, etc.
    
A tighter restriction off the version in the request line is still
possible with <If "%{SERVER_PROTOCOL_NUM} ..."> .


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1425366 13f79535-47bb-0310-9956-ffa450edef68
2012-12-22 22:55:38 +00:00
Guenter Knauf
005c140b01 On NetWare skip these unsupported function prototypes.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1423933 13f79535-47bb-0310-9956-ffa450edef68
2012-12-19 16:44:18 +00:00
Stefan Fritsch
c39c61637e add new ap_bin2hex() utility function
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1422549 13f79535-47bb-0310-9956-ffa450edef68
2012-12-16 11:49:14 +00:00
Stefan Fritsch
d04d01c589 Add LogLevelOverride directive that allows to override the loglevel for
clients from certain IPs


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1418767 13f79535-47bb-0310-9956-ffa450edef68
2012-12-08 22:16:31 +00:00