1
0
mirror of https://github.com/apache/httpd.git synced 2025-11-06 16:49:32 +03:00
Commit Graph

150 Commits

Author SHA1 Message Date
Doug MacEachern
d06327e27b the client cert X509_NAME_oneline() is only used if SSLFakeBasicAuth
is happening.  so avoid calling that unless needed and just stash a
pointer to the client cert for the boolean checks that the client
provided a cert.
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92240 13f79535-47bb-0310-9956-ffa450edef68
2001-11-29 07:07:36 +00:00
Doug MacEachern
6259b77f33 get rid of ssl_log_applies() function. it does more than we need and
what should be done with a macro.  it was only used once anyhow.
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92237 13f79535-47bb-0310-9956-ffa450edef68
2001-11-29 06:34:53 +00:00
Doug MacEachern
2797fd1cc5 fix for last change that removed ssl_util_getmodconfig():
go back to using s->process->pool userdata, but just to store the
global module config during startup so we only create _one_ SSLModConfigRec.
(didn't realize this function was called in both ssl_init_Module and
ssl_config_server_create)
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92235 13f79535-47bb-0310-9956-ffa450edef68
2001-11-29 06:15:01 +00:00
Doug MacEachern
29ba8b4f1d ssl_util_getmodconfig() and ssl_util_getmodconfig_ssl() show up high
in the gprof profile.  there's no need for the "global" SSLModConfigRec
to live in the s->process->pool userdata table.  we now just point the
SSLSrvConfigRec in each server_rec.module_config to the SSLModConfigRec
so we can access it directly which is much faster.
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92234 13f79535-47bb-0310-9956-ffa450edef68
2001-11-29 05:45:48 +00:00
Doug MacEachern
1c3ac886e0 call getpid() once at child init and save in the SSLModConfigRec
to avoid getpid() calls at request time
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92231 13f79535-47bb-0310-9956-ffa450edef68
2001-11-29 05:04:22 +00:00
Doug MacEachern
706c0cceee calculate VHostID length at startup rather than request time.
change ap_md5() call in ssl_hook_pre_connection() to ap_md5_binary()
that uses the precalculated sc->nVHostID_length to avoid a strlen() call.

PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92216 13f79535-47bb-0310-9956-ffa450edef68
2001-11-28 05:50:55 +00:00
Doug MacEachern
9c7cc5063d avoid calling ssl_util_vhostid() (and apr_sprintf underneath) at
request time by calling it at startup time and saving the value in the
SSLSrvConfigRec.
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92215 13f79535-47bb-0310-9956-ffa450edef68
2001-11-28 05:44:50 +00:00
Ian Holsman
86b792b21c Modify post_config hook so that it can return a error,
causing the server not to start.
previous method was to call exit(1) which would not fail
gracefully

PR:
Obtained from:
Submitted by:
Reviewed by:	(Idea only Jeff Trawick)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92144 13f79535-47bb-0310-9956-ffa450edef68
2001-11-23 16:35:22 +00:00
Doug MacEachern
03d6bfb025 avoid a couple of calls to ssl_util_vhostid() and apr_psprintf()
unless loglevel >= SSL_LOG_INFO
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92122 13f79535-47bb-0310-9956-ffa450edef68
2001-11-22 02:44:35 +00:00
Doug MacEachern
451e81d5d1 optimize lookup of ssl-{unclean,accurate}-shutdown flags:
- only look through the table once, rather than 2 apr_table_gets()
- case-sensitive and use strcmp() as little as possible
- only lookup once per-connection, as the flags will not change across
  keepalive requests
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92121 13f79535-47bb-0310-9956-ffa450edef68
2001-11-22 02:23:09 +00:00
Doug MacEachern
750338bfd7 remove AP_CTX_* macros which are no longer used
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92114 13f79535-47bb-0310-9956-ffa450edef68
2001-11-22 00:43:43 +00:00
Doug MacEachern
9dc6d34af4 move c->notes.ssl::verify::depth to SSLConnRec.verify_depth
note: may actually be removed unless somebody can figure out why it is in
there to begin with
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92111 13f79535-47bb-0310-9956-ffa450edef68
2001-11-22 00:25:00 +00:00
Doug MacEachern
38ee9028fc move c->notes.ssl::verify::{info,error} to SSLConnRec.verify_{info,error}
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92109 13f79535-47bb-0310-9956-ffa450edef68
2001-11-21 22:29:14 +00:00
Doug MacEachern
f4792b5423 move c->notes.ssl::flag::{unclean,accurate}-shutdown to SSLConnRec.shutdown_type
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92100 13f79535-47bb-0310-9956-ffa450edef68
2001-11-21 19:22:46 +00:00
Doug MacEachern
0e5e9c10a2 move c->notes.ssl::client::dn to SSLConnRec.client_dn
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92094 13f79535-47bb-0310-9956-ffa450edef68
2001-11-21 18:08:33 +00:00
Doug MacEachern
6a641aae9c start moving c->notes usage to a new SSLConnRec structure hanging off of
c->conn_config
PR:
Obtained from:
Submitted by:
Reviewed by: rbb, madhu


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92093 13f79535-47bb-0310-9956-ffa450edef68
2001-11-21 17:45:24 +00:00
Justin Erenkrantz
e3d203298e This is the mod_ssl input filtering rewrite. Lots of stuff here. I also
changed some of the style issues within the filtering code to conform to
the rest of the server.

Various incarnations of this patch have been posted to dev@httpd without
feedback.  Now that it passes all of the httpd-test cases (with the
exception of module/negotiation test which fails without mod_ssl anyway),
it is time to check it in.

Please review and test.  We are under C-T-R rules, so I'm going to take
advantage of that and commit it now.  I have tested this about as much
as I can and it seems to work from everything I can give to it.
Considering that mod_ssl was broken before this commit, this is an
improvement.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91414 13f79535-47bb-0310-9956-ffa450edef68
2001-10-11 01:49:21 +00:00
William A. Rowe Jr
1cf6e24fb0 I don't seriously expect this solves the segfault ... but it does make
the code more legible, and protects particularly ugly unset values.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90979 13f79535-47bb-0310-9956-ffa450edef68
2001-09-10 04:21:40 +00:00
Doug MacEachern
6f3f1853e4 Implement CRYPTO_set_locking_callback() for mod_ssl
PR:
Obtained from:
Submitted by:	Madhusudan Mathihalli <madhusudan_mathihalli@hp.com>
Reviewed by:	dougm


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90612 13f79535-47bb-0310-9956-ffa450edef68
2001-08-24 04:08:04 +00:00
Doug MacEachern
48c41169f0 support "SSLVerifyClient optional_no_ca"
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90599 13f79535-47bb-0310-9956-ffa450edef68
2001-08-24 00:09:30 +00:00
William A. Rowe Jr
ebce174d94 Add some appropriate constness to the config
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90577 13f79535-47bb-0310-9956-ffa450edef68
2001-08-23 19:42:44 +00:00
Doug MacEachern
99b2042f26 register ssl_var_lookup() as an optional function
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90537 13f79535-47bb-0310-9956-ffa450edef68
2001-08-23 02:46:23 +00:00
William A. Rowe Jr
de9321e1e6 Complete the rename of the ssl_scache_status_register and
ssl_ext_proxy_register (which has yet to be renamed for it's
  future location, since I'm not going further at the moment
  with implementing it's functionallity, all my focus is on
  the ssl_var_register arm.)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90524 13f79535-47bb-0310-9956-ffa450edef68
2001-08-23 00:06:27 +00:00
William A. Rowe Jr
dfc5bb55f4 Remove a ton o' cruft. Moves the mod_log_config 'var' extensions to
ssl_engine_vars.c.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90517 13f79535-47bb-0310-9956-ffa450edef68
2001-08-22 22:58:07 +00:00
Martin Kraemer
e811bc50a1 Use uniform wrapping for unistd.h, and don't include it if it's aready included via fileio.h
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90491 13f79535-47bb-0310-9956-ffa450edef68
2001-08-22 15:40:29 +00:00
Doug MacEachern
6c69c6421a remove unused ssl_io_ functions
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90444 13f79535-47bb-0310-9956-ffa450edef68
2001-08-20 23:48:16 +00:00
Ryan Bloom
9d9bf07bd2 Add the openssl/include/openssl directory to the INCLUDES variable.
This allows us to remove the openssl from the #include lines in the
mod_ssl files.  This makes it easier to use a different SSL library,
with fewer changes to the mod_ssl files.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90435 13f79535-47bb-0310-9956-ffa450edef68
2001-08-20 22:30:17 +00:00
William A. Rowe Jr
5f4ead65a7 Missed a small bit
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89822 13f79535-47bb-0310-9956-ffa450edef68
2001-07-31 07:21:59 +00:00
William A. Rowe Jr
82cb29c823 Register for %X, %c (we gotta make a decision, please vote if you care...
use %c's meaning from the historical SSL modules, or Bill Stoddard's
  connection-terminated meaning?  One will have to give.)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89807 13f79535-47bb-0310-9956-ffa450edef68
2001-07-30 22:35:33 +00:00
William A. Rowe Jr
e1a4ca3ba6 Take care of folk's assert() undefined errors.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89627 13f79535-47bb-0310-9956-ffa450edef68
2001-07-19 22:20:09 +00:00
William A. Rowe Jr
4ba473bd88 Since mpm.h wraps unixd.h and scoreboard.h nicely, and win32 has
no unixd.h, well...


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89623 13f79535-47bb-0310-9956-ffa450edef68
2001-07-19 21:30:37 +00:00
William A. Rowe Jr
d8f39cdd57 Workaround till connection_hook details are resolved
[MATHIHALLI,MADHUSUDAN <madhusudan_mathihalli@hp.com>]


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89620 13f79535-47bb-0310-9956-ffa450edef68
2001-07-19 20:02:28 +00:00
Ralf S. Engelschall
ca8f54367f Apply mod_ssl MEGA porting patch. This is a cleaned up version of the
latest patches from Madhusudan which makes mod_ssl 95% working inside
Apache 2.0. There is still a lot of more work (both porting and cleanup)
to do be done. See modules/ssl/README for details.

Submitted by: Madhusudan Mathihalli <madhusudan_mathihalli@hp.com>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89618 13f79535-47bb-0310-9956-ffa450edef68
2001-07-19 16:08:01 +00:00
Ralf S. Engelschall
97c1ff53d7 Merge in part II of a set of mod_ssl porting changes.
Submitted by: Madhusudan Mathihalli <madhusudan_mathihalli@hp.com>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89564 13f79535-47bb-0310-9956-ffa450edef68
2001-07-17 14:57:35 +00:00
William A. Rowe Jr
0ac49c6424 One cannot have an entirely empty struct ... this is just to make things
actually compile, and exclude an include we don't have on Win32.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89460 13f79535-47bb-0310-9956-ffa450edef68
2001-06-28 01:13:09 +00:00
Ralf S. Engelschall
867d08ac13 Port ssl_util.c stuff to APR.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89031 13f79535-47bb-0310-9956-ffa450edef68
2001-05-05 21:02:22 +00:00
Ralf S. Engelschall
95bd2224cb Port ssl_util_ssl.[ch] stuff to APR.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89029 13f79535-47bb-0310-9956-ffa450edef68
2001-05-05 20:11:04 +00:00
Ralf S. Engelschall
f82c32f81e Use different namespace for internal defines.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89027 13f79535-47bb-0310-9956-ffa450edef68
2001-05-05 19:56:17 +00:00
Ralf S. Engelschall
8c46d8a1ab Port ssl_engine_ds.c to APR.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89026 13f79535-47bb-0310-9956-ffa450edef68
2001-05-05 19:53:00 +00:00
Ralf S. Engelschall
3e60754671 Kick out all old mutex code and base SSLMutex on APR locks.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89022 13f79535-47bb-0310-9956-ffa450edef68
2001-05-05 19:09:37 +00:00
Ralf S. Engelschall
a0f48e90fa Change mostly all old module structure hooks and EAPI hooks to
ap_hook_xxx equivalents. More work has to be done here to clean all this
up and reduce to a minimum...


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89020 13f79535-47bb-0310-9956-ffa450edef68
2001-05-05 16:55:28 +00:00
Ralf S. Engelschall
4f6be425be Axe most WIN32 stuff from Apache 1.3. In Apache 2.0 we either use APR
later for this or we don't do it at all. But we certainly no longer want
to see any platform specific things inside a module.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89018 13f79535-47bb-0310-9956-ffa450edef68
2001-05-05 16:35:18 +00:00
Ralf S. Engelschall
d3cf43347b Axe out SSL_CONSERVATIVE stuff which for Apache 1.3 did I/O data
pre-sucking on POST requests and I/O re-injection in case of SSL
renegotiations. This all either cannot be solved any longer or at least
has to be implemented totally different through I/O layering/filtering.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89017 13f79535-47bb-0310-9956-ffa450edef68
2001-05-05 16:23:00 +00:00
Ralf S. Engelschall
f3281a2f0f Axe out SSL_USE_SDBM stuff, i.e., get rid of the local SDBM copy and use
APR's DBM API instead. The remaining question just is whether APR's DBM
allows "larger" things like SSL sessions to be stored...


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89013 13f79535-47bb-0310-9956-ffa450edef68
2001-05-05 15:26:06 +00:00
Ralf S. Engelschall
6eab92084b Axe out the complete SSL_COMPAT stuff. Because Apache 2.0 is already
incompatible at many places to Apache 1.3 we also don't want this stuff
anymore. Apache 2.0's mod_ssl will be mostly compatibile with Apache
1.3's mod_ssl, of course. But we really no longer want to be compatible
to Sioux and other obsolete SSL things...


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89012 13f79535-47bb-0310-9956-ffa450edef68
2001-05-05 15:10:58 +00:00
Ralf S. Engelschall
4a4ce878a4 Axe out EAPI-based SSL_VENDOR stuff.
If we want this later again, we have to do it differently anyway. So,
for now we try to strip down mod_ssl as heavy as possible and hence we
kick out this stuff at all.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89010 13f79535-47bb-0310-9956-ffa450edef68
2001-05-05 15:02:13 +00:00
Ralf S. Engelschall
fa3c8387ec Activate the command_rec structure.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89005 13f79535-47bb-0310-9956-ffa450edef68
2001-05-05 09:58:04 +00:00
Ralf S. Engelschall
680f9c0157 Integrate mod_ssl into the Autoconf facility.
(currently only stub files are compiled)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89002 13f79535-47bb-0310-9956-ffa450edef68
2001-05-05 09:25:52 +00:00
Ralf S. Engelschall
c9606e809a mod_ssl integration step 2:
transfer copyright of all code to ASF by using Apache Software License v1.1


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88995 13f79535-47bb-0310-9956-ffa450edef68
2001-05-04 22:21:17 +00:00
Ralf S. Engelschall
f83672781d Initial revision
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88988 13f79535-47bb-0310-9956-ffa450edef68
2001-05-04 21:54:25 +00:00