1
0
mirror of https://github.com/apache/httpd.git synced 2025-08-05 16:55:50 +03:00

267 Commits

Author SHA1 Message Date
Ryan Bloom
37f9061757 Fix a compile of compiler warnings. I don't know how these slipped past.
Also, uncomment a line of code that the last commit should have uncommented.
Randall found this line and the fix, but I forgot to uncomment this line
along with the fix.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@97179 13f79535-47bb-0310-9956-ffa450edef68
2002-10-11 15:29:22 +00:00
Justin Erenkrantz
fafabb637f Remove SSLLog and SSLLogLevel directives in favor of having mod_ssl use the
standard ErrorLog directives.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@95129 13f79535-47bb-0310-9956-ffa450edef68
2002-05-16 06:09:13 +00:00
Doug MacEachern
d07edc0f48 copy-n-pasto: ssl_cmd_SSLProxyMachineCertificatePath needs to set cert_path
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94404 13f79535-47bb-0310-9956-ffa450edef68
2002-04-02 21:56:12 +00:00
Doug MacEachern
26a5b7fc7c fix copy-n-pasto: ssl_cmd_SSLProxyCACertificatePath needs to use
ssl_cmd_check_dir rather than ssl_cmd_check_file


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94403 13f79535-47bb-0310-9956-ffa450edef68
2002-04-02 21:32:35 +00:00
Doug MacEachern
3fa9f2ba65 add SSLProxyCARevocation{File,Path} directives to support CRLs in the proxy
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94338 13f79535-47bb-0310-9956-ffa450edef68
2002-03-30 06:46:24 +00:00
Doug MacEachern
5e1c0e2c15 add SSLProxyEngine directive. this was not required in the 1.x based
mod_ssl because the SSL_CTX was created and configured for *every*
request.  unlike in 2.0 where we configure the proxy SSL_CTX at
startup time, which is much better for performance.  but we don't want
to configure a proxy context for every vhost if it isn't going to be
used, for the same reasons we don't create a server context for every
vhost unless SSLEngine is on.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94314 13f79535-47bb-0310-9956-ffa450edef68
2002-03-29 17:56:33 +00:00
Doug MacEachern
409e7fed52 s/id/mode/ in ssl_cmd_SSLProxyVerify
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94290 13f79535-47bb-0310-9956-ffa450edef68
2002-03-29 03:19:12 +00:00
Doug MacEachern
f9f62ab460 use ssl_cmd_verify_parse for SSLProxyVerify directive handler
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94289 13f79535-47bb-0310-9956-ffa450edef68
2002-03-29 03:05:49 +00:00
Doug MacEachern
987edc67d2 s/ctx/dcfg/g in ssl directive handlers
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94287 13f79535-47bb-0310-9956-ffa450edef68
2002-03-29 02:48:20 +00:00
Doug MacEachern
b31faa5036 enable proxy directives
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94286 13f79535-47bb-0310-9956-ffa450edef68
2002-03-29 02:43:33 +00:00
Doug MacEachern
543660842b add ssl_config_server_new function to fold some duplication in server
create/merge and to make sure merge config is fully inititialized


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94280 13f79535-47bb-0310-9956-ffa450edef68
2002-03-29 02:00:20 +00:00
Doug MacEachern
3539d5de18 inititialize and merge proxy config
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94279 13f79535-47bb-0310-9956-ffa450edef68
2002-03-29 01:56:40 +00:00
Doug MacEachern
6b105970df no point in merging things which are not set until after merge happens.
make a note of those which are set during module init.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94278 13f79535-47bb-0310-9956-ffa450edef68
2002-03-29 01:42:04 +00:00
Doug MacEachern
d5116bceb9 'ctx' traditionally refers to an SSL_CTX. change modssl_ctx_t
instances to 'mctx'


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94277 13f79535-47bb-0310-9956-ffa450edef68
2002-03-29 01:24:10 +00:00
Doug MacEachern
b08517ce8e ctx->sc is set during init
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94275 13f79535-47bb-0310-9956-ffa450edef68
2002-03-28 19:50:48 +00:00
Doug MacEachern
78b02f8110 switch from SSLSrvConfigRec* to modssl_ctx_t* in the ssl_init_ctx*
functions


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94274 13f79535-47bb-0310-9956-ffa450edef68
2002-03-28 19:48:31 +00:00
Doug MacEachern
038f201cbb make merging of modssl_ctx_t's generic
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94273 13f79535-47bb-0310-9956-ffa450edef68
2002-03-28 19:15:03 +00:00
Doug MacEachern
0679fa7bf1 moving cfgMerge macros to ssl_engine_config.c, they are not used anywhere else
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94271 13f79535-47bb-0310-9956-ffa450edef68
2002-03-28 18:58:06 +00:00
Doug MacEachern
1d76ab39ff breakup SSLSrvConfigRec in preparation for proxy support:
+ modssl_pk_server_t - certs/keys for the server
+ modssl_pk_proxy_t  - certs/keys for the proxy
+ modssl_auth_ctx_t  - stuff related to authentication that can also
                       be per-dir, used by both server and proxy
+ modssl_ctx_t       - context that can be used by both server and proxy
+ SSLSrvConfigRec    - now contains original stuff specific to the
                       server config and modssl_ctx_t *server, *proxy


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94267 13f79535-47bb-0310-9956-ffa450edef68
2002-03-28 18:50:07 +00:00
Doug MacEachern
e90c7fb27f ripping out some proxy stuff that isn't currently in use and is going
to change anyhow.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94266 13f79535-47bb-0310-9956-ffa450edef68
2002-03-28 17:23:50 +00:00
Doug MacEachern
d5c395f0e7 de-hungarian-ize server config member names which are going to stay
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94264 13f79535-47bb-0310-9956-ffa450edef68
2002-03-28 17:11:12 +00:00
Doug MacEachern
bb986b6b22 reorder a bit of the server config structure, moving items that are
going to stay there to the top.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94263 13f79535-47bb-0310-9956-ffa450edef68
2002-03-28 16:47:36 +00:00
Doug MacEachern
8bf48c5959 "new" is a c++ keyword; s/new/mrg/g in config merge functions
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94244 13f79535-47bb-0310-9956-ffa450edef68
2002-03-27 23:35:31 +00:00
Doug MacEachern
aeb7f9eb0b add configure checks for ssl functions:
-SSL_set_state: macro in OpenSSL, might be a function in a patched sslc
-SSL_set_cert_store: patch submitted to OpenSSL, might be applied to
OpenSSL or sslc


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94223 13f79535-47bb-0310-9956-ffa450edef68
2002-03-27 17:02:56 +00:00
Doug MacEachern
008b963af9 sslc does not currently support RAND_egd or RAND_status
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94207 13f79535-47bb-0310-9956-ffa450edef68
2002-03-27 03:27:13 +00:00
Doug MacEachern
7c1521f253 per-dir SSLCACertificate{File,Path} cannot use SSL_CTX_set_cert_store
as the 1.x based module does, since the function is not thread-safe.
a patch has been submitted to OpenSSL to support SSL_set_cert_store
which is thread safe.  this feature is enabled by default in the
current 1.x based module, we only enable it if the SSL_set_cert_store
function is available.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94179 13f79535-47bb-0310-9956-ffa450edef68
2002-03-26 16:57:49 +00:00
Doug MacEachern
9303382216 constificationization of some char * config items
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94177 13f79535-47bb-0310-9956-ffa450edef68
2002-03-26 15:49:37 +00:00
Doug MacEachern
6fba41424d performance enhancement: mod_ssl config directives that can have both
a per-server and per-dir context were configuring the per-dir context
for per-server commands.  this triggered ssl_hook_Access to always
compare the per-server context against per-dir configs that were
exactly the same.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94176 13f79535-47bb-0310-9956-ffa450edef68
2002-03-26 15:42:21 +00:00
Cliff Woolley
bebc477f50 Fix some possibly-uninitialized warnings and some incorrect format strings
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93991 13f79535-47bb-0310-9956-ffa450edef68
2002-03-18 03:18:47 +00:00
William A. Rowe Jr
05ae021cfd Clear up a const warning, and recognize some arrays by changing the
variable names to the plural [rather than aszFoo, which I hope continues
  to be cleaned up as folks have time.]


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93982 13f79535-47bb-0310-9956-ffa450edef68
2002-03-17 17:32:24 +00:00
William A. Rowe Jr
189e3aa081 PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93971 13f79535-47bb-0310-9956-ffa450edef68
2002-03-16 19:34:33 +00:00
Doug MacEachern
97b148c3b5 PR:
Obtained from:
Submitted by:   Madhusudan Mathihalli <madhusudan_mathihalli@hp.com>
Reviewed by:	dougm
implement SSLSessionCache shmht and shmcb based on apr_rmm and apr_shm


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93942 13f79535-47bb-0310-9956-ffa450edef68
2002-03-14 23:31:23 +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
Doug MacEachern
15d581b6fe it is not required that temporary keys survive restarts, since they
are generated and destroyed on every restart.

so get rid of SSLModConfigRec.tTmpKeys table and mess that was
managing it.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93881 13f79535-47bb-0310-9956-ffa450edef68
2002-03-12 22:34:31 +00:00
Doug MacEachern
280912eaf8 fold duplication of SSL{Proxy}VerifyDepth directives into
ssl_cmd_verify_depth_parse function.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93872 13f79535-47bb-0310-9956-ffa450edef68
2002-03-12 21:12:49 +00:00
Doug MacEachern
e225b0ef60 moving SSLVerifyClient directive parsing into ssl_cmd_verify_parse
function, which can also be used for SSLProxyVerify directive.

dropping support for undocumented integer form of levels (0..3)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93870 13f79535-47bb-0310-9956-ffa450edef68
2002-03-12 21:06:17 +00:00
Doug MacEachern
8cbdd8d0f1 fold duplication of SSL{Proxy}Protocol directives into
ssl_cmd_protocol_parse function.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93865 13f79535-47bb-0310-9956-ffa450edef68
2002-03-12 19:47:16 +00:00
Doug MacEachern
bce769734f fold some duplication of server certs/keys directive checking into
ssl_cmd_check_aidx_max function.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93864 13f79535-47bb-0310-9956-ffa450edef68
2002-03-12 19:02:22 +00:00
Doug MacEachern
1e6735b1a1 folding some command handler duplication into two generic functions:
ssl_cmd_check_file and ssl_cmd_check_dir.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93863 13f79535-47bb-0310-9956-ffa450edef68
2002-03-12 18:34:19 +00:00
Doug MacEachern
72814e709a dropping hungarian notation
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93851 13f79535-47bb-0310-9956-ffa450edef68
2002-03-12 04:41:57 +00:00
Doug MacEachern
a102a67001 various style fixups / general changes to make code more readable.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93845 13f79535-47bb-0310-9956-ffa450edef68
2002-03-12 00:05:18 +00:00
Doug MacEachern
0d2e1d0893 reuse vhost keys for asn1 tables where keys are allocated out
of s->process->pool to prevent "leaking" each time we format
a vhost key.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93616 13f79535-47bb-0310-9956-ffa450edef68
2002-02-28 01:30:18 +00:00
Doug MacEachern
b4f77dcf27 switch SSLModConfigRec.tPublicCert to ssl_asn1_table api to prevent
leakage on restarts.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93615 13f79535-47bb-0310-9956-ffa450edef68
2002-02-28 00:28:05 +00:00
Doug MacEachern
e778179d1f switch SSLModConfigRec.tPrivateKey to ssl_asn1_table api to prevent
leakage on restarts.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93614 13f79535-47bb-0310-9956-ffa450edef68
2002-02-28 00:23:32 +00:00
Doug MacEachern
d6a76369d5 mod_ssl was "leaking" on restart since mc->tTmpKeys table entries
were allocated using apr_palloc out of s->process->pool and pushed
into an apr_array_header_t.
solve the problem by moving from apr_array_header_t's to an apr_hash_t.
also add ssl_asn1_table_{set,unset} wrappers to use malloc/free so we
do not "leak" from s->process->pool.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93612 13f79535-47bb-0310-9956-ffa450edef68
2002-02-28 00:01:57 +00:00
William A. Rowe Jr
7b21fb2549 Introduce the PassPhraseDialog 'pipe' mechanism.
This is the directive handling commit only, the mechanics patch will
  follow.  PassPhraseDialog "|/path/to/pipe" will use the bidirectional
  pipe to have a 'conversation', along the lines of the tty dialog with
  PassPhraseDialog 'builtin'.  This is entirely different than the 'exec'
  method, which simply runs once for each passphrase, and doesn't allow
  for failure/retries, and certainly doesn't offer any sensible 'dialog'.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93606 13f79535-47bb-0310-9956-ffa450edef68
2002-02-27 19:51:33 +00:00
Doug MacEachern
0ba62becc5 changing mod_ssl to do a full startup/teardown on each restart rather
than hack to only read passphrase on 1st round startup.  this change:
- fixes current segv on restarts (SHARED_MODULE is not defined)
- allows LoadModule ssl_module to be added to httpd.conf on restart
  (was core dumping previously)
- allows certs/keys to be changed on restart provided key is not
  encrypted or SSLPassPhraseDialog is exec.  if key is encrypted and
  SSLPassPhraseDialog is builtin, existing private keys will be reused
  on restart (which happens currently for any type of key/dialog).

note: mod_ssl currently leaks on restart; leaks more with this change.
      fixes to come.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93585 13f79535-47bb-0310-9956-ffa450edef68
2002-02-27 03:21:09 +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
Aaron Bannert
b38a27ec59 Fix awkward grammar in some of mod_ssl's error messages.
Submitted by:	Ryan Morgan <rmorgan@covalent.net>
Reviewed by:	Aaron Bannert


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92229 13f79535-47bb-0310-9956-ffa450edef68
2001-11-29 00:07:10 +00:00