1
0
mirror of https://github.com/apache/httpd.git synced 2026-01-13 21:42:17 +03:00
Commit Graph

9110 Commits

Author SHA1 Message Date
Christophe Jaillet
25a2e41ea7 Save a few bytes in conf pool when parsing some directives. Use temp_pool when applicable.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1657692 13f79535-47bb-0310-9956-ffa450edef68
2015-02-05 21:03:04 +00:00
Yann Ylavic
c6f5f2f63f mod_proxy_connect/wstunnel: If both client and backend sides get readable
at the same time, don't lose errors occuring while forwarding on the first
side when none occurs next on the other side, and abort.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1657636 13f79535-47bb-0310-9956-ffa450edef68
2015-02-05 17:36:23 +00:00
Eric Covener
6c0cf71485 followup to r1657261 whitespace only -- reindent body of while loop.
(no change under svn diff -x-w)



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1657263 13f79535-47bb-0310-9956-ffa450edef68
2015-02-04 14:52:50 +00:00
Eric Covener
78eb3b9235 *) SECURITY: CVE-2015-0228 (cve.mitre.org)
mod_lua: A maliciously crafted websockets PING after a script
     calls r:wsupgrade() can cause a child process crash.
     [Edward Lu <Chaosed0 gmail.com>]

Discovered by Guido Vranken <guidovranken gmail.com>

Submitted by: Edward Lu
Committed by: covener



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1657261 13f79535-47bb-0310-9956-ffa450edef68
2015-02-04 14:44:23 +00:00
Eric Covener
8f40799093 Fix bit-shifting of websockets frame fields that would yield wrong opcodes
when the FIN bit was set.  Results in PING not being recognized
by mod_lua.  PR57524

Submitted By: Edward Lu
Committed By: covener



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1657256 13f79535-47bb-0310-9956-ffa450edef68
2015-02-04 14:33:51 +00:00
Yann Ylavic
e454f1a48b mod_macro: Clear macros before initialization to avoid use-after-free
on startup or restart when the module is linked statically. PR 57525

Submitted by: apache.org tech.futurequest.net
Committed by: Yann Ylavic


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1656669 13f79535-47bb-0310-9956-ffa450edef68
2015-02-03 10:42:21 +00:00
Christophe Jaillet
ea86cb0cfa Fix cut and paste typo in error message + remove empty lines to be consistent
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1656549 13f79535-47bb-0310-9956-ffa450edef68
2015-02-02 19:31:37 +00:00
Yann Ylavic
ccc2e4c751 mod_proxy_http: don't connect or reuse backend before prefetching request body.
The goal is to minimize the delay between this connection is considered alive
and the first bytes sent (should the client's link be slow or some input filter
retain the data).
This is a best effort to prevent the backend from closing (from under us) what
it thinks is an idle connection, hence to reduce to the minimum the unavoidable
local ap_proxy_is_socket_connected() vs remote keepalive race condition.
PR 56541.

Also, allow the new subprocess_env variable "proxy-flushall" to prevent any
buffering of the request body before it is forwarded to the backend.
When set, the prefetch is still done (although non-blocking), so we can still
determine Content-Length vs chunked vs spooled (depending on data available
with the header or while reading it), and then all brigades are flushed when
passed to the backend.
PR 37920.



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1656259 13f79535-47bb-0310-9956-ffa450edef68
2015-02-01 00:05:59 +00:00
Yann Ylavic
12af2e3ac2 mod_proxy_connect: fix duplicated AH introduced by r1635645.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1656230 13f79535-47bb-0310-9956-ffa450edef68
2015-01-31 18:19:59 +00:00
Yann Ylavic
89a027a48a mod_alias: follow up to r1653941.
Fill empty APLOGNO().


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1656225 13f79535-47bb-0310-9956-ffa450edef68
2015-01-31 17:53:42 +00:00
Eric Covener
8dd6f463ed as in r1517366, drop the severity in authz_groupfile when a require
didn't match but no real error was encountered. 

This individual 'require group' may not really dictate who gets in. PR55523 



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1654184 13f79535-47bb-0310-9956-ffa450edef68
2015-01-23 12:21:34 +00:00
Yann Ylavic
a365a65513 mod_ssl: Fix merge problem with SSLProtocol that made SSLProtocol ALL ignored
in virtualhost context (new version of r1653906 reverted by r1653993).

Submitted By: Michael Kaufmann <apache-bugzilla michael-kaufmann.ch>
Committed/modified By: ylavic



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1653997 13f79535-47bb-0310-9956-ffa450edef68
2015-01-22 18:37:06 +00:00
Yann Ylavic
4c52577a7f mod_ssl: revert r1653906, will commit an alternative just after.
The issue with r1653906 is that existing configurations like
"SSLProtocol -SSLv3" (where the default is assumed to be ALL)
won't work anymore.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1653993 13f79535-47bb-0310-9956-ffa450edef68
2015-01-22 18:27:46 +00:00
Graham Leggett
7e120c114b Use unsigned bit fields.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1653978 13f79535-47bb-0310-9956-ffa450edef68
2015-01-22 18:06:57 +00:00
Graham Leggett
5488d21243 mod_alias: Introduce expression parser support for Alias, ScriptAlias
and Redirect.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1653941 13f79535-47bb-0310-9956-ffa450edef68
2015-01-22 17:02:22 +00:00
Eric Covener
6d6a8a16f1 Fix merge problem with SSLProtocol that made SSLProtocol ALL ignored
in virtualhost context.

Submitted By: Michael Kaufmann <apache-bugzilla michael-kaufmann.ch>
Commited By: covener



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1653906 13f79535-47bb-0310-9956-ffa450edef68
2015-01-22 15:19:39 +00:00
Eric Covener
ce217cfc64 Remove the bitfield spec from the http_ctx_t.state enum
as it causes an error-prone mismatch between the enum values and the
state values.  Caused a busy loop in windows.  

Added in r1484852 and trunk-only.

Submitted By: Edward Lu, Yann Ylavic
Committed By: covener



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1653539 13f79535-47bb-0310-9956-ffa450edef68
2015-01-21 14:09:49 +00:00
Guenter Knauf
53e7998820 Enable to build mod_lua against Lua 5.3.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1652886 13f79535-47bb-0310-9956-ffa450edef68
2015-01-19 00:35:25 +00:00
Rainer Jung
642b344069 Silence compiler warnings:
- modules/aaa/mod_authnz_fcgi.c:705: warning:
  'orspbuflen' may be used uninitialized in this function

- modules/aaa/mod_authnz_fcgi.c:1235: warning:
  comparison is always false due to limited range of data type


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1652829 13f79535-47bb-0310-9956-ffa450edef68
2015-01-18 18:57:53 +00:00
Eric Covener
e6250a9198 mod_rewrite: Improve 'bad flag delimeters' startup error by showing
how the input was tokenized.  PR 56528. 

Submitted By: Edward Lu <Chaosed0 gmail.com>
Committed By: covener



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1652507 13f79535-47bb-0310-9956-ffa450edef68
2015-01-16 19:43:30 +00:00
Joe Orton
0b73b47e98 * modules/dav/main/config.m4: Remove long-redundant expat reference.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1650490 13f79535-47bb-0310-9956-ffa450edef68
2015-01-09 10:24:28 +00:00
Rainer Jung
bf93fed8a1 Add SSLSessionTickets (on|off).
It controls the use of TLS session tickets
(RFC 5077). Default is unchanged (on).

Using session tickets without restarting
the web server with an appropriate frequency
(e.g. daily) compromises perfect forward
secrecy.

As long as we do not have a nice key management
there should be a way to deactivate session
tickets.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1650310 13f79535-47bb-0310-9956-ffa450edef68
2015-01-08 15:34:10 +00:00
Eric Covener
a8afe6572f save some bytes per Christophe's review.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1650309 13f79535-47bb-0310-9956-ffa450edef68
2015-01-08 15:28:48 +00:00
Yann Ylavic
7839a61951 mod_ssl: follow up to r1601919.
Likewise when set from SNI callback.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1650061 13f79535-47bb-0310-9956-ffa450edef68
2015-01-07 14:20:57 +00:00
Kaspar Brand
9660add80a Add support for extracting subjectAltName entries of type
rfc822Name and dNSName into SSL_{CLIENT,SERVER}_SAN_{Email,DNS}_n
variables.

* docs/manual/mod/mod_ssl.xml: add SSL_*_SAN_*_n entries to the
  environment variables table

* modules/ssl/ssl_engine_kernel.c: in ssl_hook_Fixup, add extraction
  of subjectAltName entries for the "StdEnvVars" case

* modules/ssl/ssl_engine_vars.c: add support for retrieving the
  SSL_{CLIENT,SERVER}_SAN_{Email,DNS}_n variables, either with
  individual on-demand lookup (ssl_var_lookup_ssl_cert_san),
  or with full-list extraction to the environment ("StdEnvVars")

* modules/ssl/ssl_private.h: add modssl_var_extract_san_entries prototype

* modules/ssl/ssl_util_ssl.c: implement SSL_X509_getSAN and
  SSL_ASN1_STRING_to_utf8 helper functions, with factoring out common
  code from SSL_X509_getIDs and SSL_X509_NAME_ENTRY_to_string where
  suitable. Limit SSL_X509_getSAN to the two most common subjectAltName
  entry types appearing in user or server certificates (i.e., rfc822Name
  and dNSName), for the time being.

* modules/ssl/ssl_util_ssl.h: add SSL_ASN1_STRING_to_utf8
  and SSL_X509_getSAN prototypes


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1650047 13f79535-47bb-0310-9956-ffa450edef68
2015-01-07 12:24:48 +00:00
Yann Ylavic
1f6fd365c3 mod_proxy: Don't put non balancer-member workers in error state by
default for connection or 500/503 errors, and honor status=+I for
any error.  PR 48388.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1650028 13f79535-47bb-0310-9956-ffa450edef68
2015-01-07 10:36:12 +00:00
Christophe Jaillet
26c1550126 Be consistant with the code below which accepts lower or upper case.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1649632 13f79535-47bb-0310-9956-ffa450edef68
2015-01-05 19:53:35 +00:00
Joe Orton
750aa727b0 * modules/cache/mod_socache_memcache.c (socache_mc_store): Pass
through expiration time.

Submitted by: Faidon Liambotis <paravoid debian.org>, jorton


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1649491 13f79535-47bb-0310-9956-ffa450edef68
2015-01-05 10:06:29 +00:00
Rainer Jung
9f3e0671fd mod_proxy_ajp: Fix get_content_length().
clength in request_rec is for response sizes,
not request body size. It is initialized to 0,
so the "if" branch was never taken.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1649043 13f79535-47bb-0310-9956-ffa450edef68
2015-01-02 14:28:39 +00:00
Mike Rumph
98efe0ccb1 Fix some spelling errors in mod_proxy_fcgi comments.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1648557 13f79535-47bb-0310-9956-ffa450edef68
2014-12-30 17:43:59 +00:00
Eric Covener
c54599cf61 PR 56603: Inappropiate ProxyPassReverse match when interpolated URL
is empty string 

Submitted By: <ajprout hotmail.com>
Committed By: covener



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1648433 13f79535-47bb-0310-9956-ffa450edef68
2014-12-29 21:05:56 +00:00
Daniel Ruggeri
cded18be8c Add class attributes for empty descriptions
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1648201 13f79535-47bb-0310-9956-ffa450edef68
2014-12-28 13:43:25 +00:00
Eric Covener
23c292e6cd Change the return value to const, so the const non-matching input can just be
returned.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1647334 13f79535-47bb-0310-9956-ffa450edef68
2014-12-22 15:39:54 +00:00
Eric Covener
d77e7a6885 provide alternative PATH_INFO calculation options for proxy_fcgi.
PR 55329



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1647035 13f79535-47bb-0310-9956-ffa450edef68
2014-12-20 18:45:23 +00:00
Eric Covener
85d1a0ba01 Allow SetHandler+UDS+fcgi to take advantage of dedicated workers including
opting in to connection reuse and other proxy options (max=, etc).

adds 'enablereuse' proxyoption and a minor MMN bump to share
proxy_desocketfy outside of mod_proxy.c, which is required to
match workers to URLs.



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1647009 13f79535-47bb-0310-9956-ffa450edef68
2014-12-20 15:56:16 +00:00
Eric Covener
2af6b8f57f Allow (a hokey) opt-in to connection reuse for mod_proxy_fcgi + TCP.
Connection reuse has been disabled since r1032345 at the end of
2011. 

Attempt to reverse the polarity of the connection reuse doc which
has been wrong for a long time.



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1647005 13f79535-47bb-0310-9956-ffa450edef68
2014-12-20 15:38:27 +00:00
Eric Covener
727a07d553 tweak SCRIPT_FILENAME passed to fastcgi backends when a balancer is used.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1646724 13f79535-47bb-0310-9956-ffa450edef68
2014-12-19 14:03:52 +00:00
Ruediger Pluem
bcf652f6fc * Fix If-Match handling:
- We need to fail if we do NOT match.
  - ETag comparison only makes sense if we have an ETag

PR: 57358
Submitted by: Kunihiko Sakamoto <ksakamoto google.com>
Reviewed by: rpluem


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1646282 13f79535-47bb-0310-9956-ffa450edef68
2014-12-17 15:39:15 +00:00
Ruediger Pluem
ab1523a721 * Return NULL instead of an empty string as ssl_var_lookup_ssl does by default. Thanks for the pointer Christophe
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1645670 13f79535-47bb-0310-9956-ffa450edef68
2014-12-15 14:57:52 +00:00
Jeff Trawick
c5062591f9 Fix extraction of an SCT list from a stapled OCSP response.
The hard-coded 2 byte offset to get to the list (in lieu of
the proper logic) didn't survive the addition of the SCT
from an additional log.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1645546 13f79535-47bb-0310-9956-ffa450edef68
2014-12-15 01:37:40 +00:00
Jeff Trawick
8e416f19be ssl_io_filter_handshake(): When a post-handshake check fails,
return an error code understood by ssl_io_filter_error().

That function needs to perform error handling, and a valid
apr_status_t needs to be returned up.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1645529 13f79535-47bb-0310-9956-ffa450edef68
2014-12-14 21:48:25 +00:00
Yann Ylavic
0c5d74a177 mod_proxy: don't add the default port to the name of proxy workers. PR 57259.
ap_proxy_port_of_scheme() knows more default ports than apr_unparse_uri().


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1644503 13f79535-47bb-0310-9956-ffa450edef68
2014-12-10 18:45:24 +00:00
Yann Ylavic
d35b8319c0 * mod_ssl: Fix renegotiation failures redirected to an ErrorDocument. PR 57334.
When this occurs, the redirect (internal) request reaches ssl_hook_Access()
and make SSL_do_handshake crash probably because we force the renegotiation
based on an incomplete SSL state.

To avoid this, ssl_hook_Access() now returns FORBIDDEN immediatly if the given
SSL connection is not in a valid (handshaken) state.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1644498 13f79535-47bb-0310-9956-ffa450edef68
2014-12-10 18:06:55 +00:00
Gregg Lewis Smith
7ffd981a56 Added include path for Windows build.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1644245 13f79535-47bb-0310-9956-ffa450edef68
2014-12-09 23:55:22 +00:00
Jan Kaluža
ae9b5862f6 * mod_proxy_fcgi: Follow up to r1640495. Ignore body data from backend
for 304 responses also when read with the header.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1644031 13f79535-47bb-0310-9956-ffa450edef68
2014-12-09 11:39:57 +00:00
Eric Covener
3ec0da5912 dump fcgi headers with trace8 instead of debug+compile-time flag.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1643672 13f79535-47bb-0310-9956-ffa450edef68
2014-12-07 12:54:52 +00:00
Yann Ylavic
04e5d83e7b mod_proxy_ajp: follow up to r1643537.
Log aborted client connections with level DEBUG only (no more noise than other proxy modules).

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1643543 13f79535-47bb-0310-9956-ffa450edef68
2014-12-06 15:36:19 +00:00
Yann Ylavic
c4bea1a2b6 * mod_proxy_ajp: Fix client connection errors handling and logged status
when it occurs.  PR 56823.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1643537 13f79535-47bb-0310-9956-ffa450edef68
2014-12-06 14:33:52 +00:00
Christophe Jaillet
a3f6c09230 Synch trunk with 2.4.x.
In r1588495, additionnal logging has been added to 2.4.x as part of the merge.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1643434 13f79535-47bb-0310-9956-ffa450edef68
2014-12-05 21:06:31 +00:00
Daniel Gruno
918199724a now it's actually fixed (The URL)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1643272 13f79535-47bb-0310-9956-ffa450edef68
2014-12-05 13:33:10 +00:00