Apache HTTPD
Macros | Functions
ssl_engine_config.c File Reference
#include "ssl_private.h"
#include "util_mutex.h"
#include "ap_provider.h"

Go to the source code of this file.

Macros

#define SSL_MOD_CONFIG_KEY   "ssl_module"
 
#define cfgMerge(el, unset)   mrg->el = (add->el == (unset)) ? base->el : add->el
 
#define cfgMergeArray(el)   mrg->el = apr_array_append(p, base->el, add->el)
 
#define cfgMergeString(el)   cfgMerge(el, NULL)
 
#define cfgMergeBool(el)   cfgMerge(el, UNSET)
 
#define cfgMergeInt(el)   cfgMerge(el, UNSET)
 
#define SSL_FLAGS_CHECK_FILE    (SSL_PCM_EXISTS|SSL_PCM_ISREG|SSL_PCM_ISNONZERO)
 
#define SSL_FLAGS_CHECK_DIR    (SSL_PCM_EXISTS|SSL_PCM_ISDIR)
 
#define NO_PER_DIR_SSL_CA    "Your SSL library does not have support for per-directory CA"
 

Functions

SSLModConfigRecssl_config_global_create (server_rec *s)
 
void ssl_config_global_fix (SSLModConfigRec *mc)
 
unsigned int ssl_config_global_isfixed (SSLModConfigRec *mc)
 
static void modssl_ctx_init (modssl_ctx_t *mctx, apr_pool_t *p)
 
static void modssl_ctx_init_server (SSLSrvConfigRec *sc, apr_pool_t *p)
 
static SSLSrvConfigRecssl_config_server_new (apr_pool_t *p)
 
void * ssl_config_server_create (apr_pool_t *p, server_rec *s)
 
static void modssl_ctx_cfg_merge (apr_pool_t *p, modssl_ctx_t *base, modssl_ctx_t *add, modssl_ctx_t *mrg)
 
static void modssl_ctx_cfg_merge_certkeys_array (apr_pool_t *p, apr_array_header_t *base, apr_array_header_t *add, apr_array_header_t *mrg)
 
static void modssl_ctx_cfg_merge_server (apr_pool_t *p, modssl_ctx_t *base, modssl_ctx_t *add, modssl_ctx_t *mrg)
 
void * ssl_config_server_merge (apr_pool_t *p, void *basev, void *addv)
 
static void modssl_ctx_init_proxy (SSLDirConfigRec *dc, apr_pool_t *p)
 
void * ssl_config_perdir_create (apr_pool_t *p, char *dir)
 
static void modssl_ctx_cfg_merge_proxy (apr_pool_t *p, modssl_ctx_t *base, modssl_ctx_t *add, modssl_ctx_t *mrg)
 
void * ssl_config_perdir_merge (apr_pool_t *p, void *basev, void *addv)
 
void ssl_config_proxy_merge (apr_pool_t *p, SSLDirConfigRec *base, SSLDirConfigRec *conf)
 
const charssl_cmd_SSLPassPhraseDialog (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLCryptoDevice (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLRandomSeed (cmd_parms *cmd, void *dcfg, const char *arg1, const char *arg2, const char *arg3)
 
const charssl_cmd_SSLEngine (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLFIPS (cmd_parms *cmd, void *dcfg, int flag)
 
const charssl_cmd_SSLCipherSuite (cmd_parms *cmd, void *dcfg, const char *arg1, const char *arg2)
 
static const charssl_cmd_check_file (cmd_parms *parms, const char **file)
 
const charssl_cmd_SSLCompression (cmd_parms *cmd, void *dcfg, int flag)
 
const charssl_cmd_SSLHonorCipherOrder (cmd_parms *cmd, void *dcfg, int flag)
 
const charssl_cmd_SSLSessionTickets (cmd_parms *cmd, void *dcfg, int flag)
 
const charssl_cmd_SSLInsecureRenegotiation (cmd_parms *cmd, void *dcfg, int flag)
 
static const charssl_cmd_check_dir (cmd_parms *parms, const char **dir)
 
const charssl_cmd_SSLCertificateFile (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLCertificateKeyFile (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLCertificateChainFile (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLCACertificatePath (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLCACertificateFile (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLCADNRequestPath (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLCADNRequestFile (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLCARevocationPath (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLCARevocationFile (cmd_parms *cmd, void *dcfg, const char *arg)
 
static const charssl_cmd_crlcheck_parse (cmd_parms *parms, const char *arg, int *mask)
 
const charssl_cmd_SSLCARevocationCheck (cmd_parms *cmd, void *dcfg, const char *arg)
 
static const charssl_cmd_verify_parse (cmd_parms *parms, const char *arg, ssl_verify_t *id)
 
const charssl_cmd_SSLVerifyClient (cmd_parms *cmd, void *dcfg, const char *arg)
 
static const charssl_cmd_verify_depth_parse (cmd_parms *parms, const char *arg, int *depth)
 
const charssl_cmd_SSLVerifyDepth (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLSessionCache (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLSessionCacheTimeout (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLOptions (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLRequireSSL (cmd_parms *cmd, void *dcfg)
 
const charssl_cmd_SSLRequire (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLRenegBufferSize (cmd_parms *cmd, void *dcfg, const char *arg)
 
static const charssl_cmd_protocol_parse (cmd_parms *parms, const char *arg, ssl_proto_t *options)
 
const charssl_cmd_SSLProtocol (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLProxyEngine (cmd_parms *cmd, void *dcfg, int flag)
 
const charssl_cmd_SSLProxyProtocol (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLProxyCipherSuite (cmd_parms *cmd, void *dcfg, const char *arg1, const char *arg2)
 
const charssl_cmd_SSLProxyVerify (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLProxyVerifyDepth (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLProxyCACertificateFile (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLProxyCACertificatePath (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLProxyCARevocationPath (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLProxyCARevocationFile (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLProxyCARevocationCheck (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLProxyMachineCertificateFile (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLProxyMachineCertificatePath (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLProxyMachineCertificateChainFile (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLUserName (cmd_parms *cmd, void *dcfg, const char *arg)
 
static const charssl_cmd_ocspcheck_parse (cmd_parms *parms, const char *arg, int *mask)
 
const charssl_cmd_SSLOCSPEnable (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLOCSPOverrideResponder (cmd_parms *cmd, void *dcfg, int flag)
 
const charssl_cmd_SSLOCSPDefaultResponder (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLOCSPResponseTimeSkew (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLOCSPResponseMaxAge (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLOCSPResponderTimeout (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLOCSPUseRequestNonce (cmd_parms *cmd, void *dcfg, int flag)
 
const charssl_cmd_SSLOCSPProxyURL (cmd_parms *cmd, void *dcfg, const char *arg)
 
const charssl_cmd_SSLOCSPNoVerify (cmd_parms *cmd, void *dcfg, int flag)
 
const charssl_cmd_SSLProxyCheckPeerExpire (cmd_parms *cmd, void *dcfg, int flag)
 
const charssl_cmd_SSLProxyCheckPeerCN (cmd_parms *cmd, void *dcfg, int flag)
 
const charssl_cmd_SSLProxyCheckPeerName (cmd_parms *cmd, void *dcfg, int flag)
 
const charssl_cmd_SSLStrictSNIVHostCheck (cmd_parms *cmd, void *dcfg, int flag)
 
const charssl_cmd_SSLOCSPResponderCertificateFile (cmd_parms *cmd, void *dcfg, const char *arg)
 
void ssl_hook_ConfigTest (apr_pool_t *pconf, server_rec *s)
 

Macro Definition Documentation

◆ cfgMerge

#define cfgMerge (   el,
  unset 
)    mrg->el = (add->el == (unset)) ? base->el : add->el

Definition at line 253 of file ssl_engine_config.c.

◆ cfgMergeArray

#define cfgMergeArray (   el)    mrg->el = apr_array_append(p, base->el, add->el)

Definition at line 254 of file ssl_engine_config.c.

◆ cfgMergeBool

#define cfgMergeBool (   el)    cfgMerge(el, UNSET)

Definition at line 256 of file ssl_engine_config.c.

◆ cfgMergeInt

#define cfgMergeInt (   el)    cfgMerge(el, UNSET)

Definition at line 257 of file ssl_engine_config.c.

◆ cfgMergeString

#define cfgMergeString (   el)    cfgMerge(el, NULL)

Definition at line 255 of file ssl_engine_config.c.

◆ NO_PER_DIR_SSL_CA

#define NO_PER_DIR_SSL_CA    "Your SSL library does not have support for per-directory CA"

Definition at line 998 of file ssl_engine_config.c.

◆ SSL_FLAGS_CHECK_DIR

#define SSL_FLAGS_CHECK_DIR    (SSL_PCM_EXISTS|SSL_PCM_ISDIR)

Definition at line 812 of file ssl_engine_config.c.

◆ SSL_FLAGS_CHECK_FILE

#define SSL_FLAGS_CHECK_FILE    (SSL_PCM_EXISTS|SSL_PCM_ISREG|SSL_PCM_ISNONZERO)

Definition at line 809 of file ssl_engine_config.c.

◆ SSL_MOD_CONFIG_KEY

#define SSL_MOD_CONFIG_KEY   "ssl_module"

Definition at line 40 of file ssl_engine_config.c.

Function Documentation

◆ modssl_ctx_cfg_merge()

static void modssl_ctx_cfg_merge ( apr_pool_t p,
modssl_ctx_t base,
modssl_ctx_t add,
modssl_ctx_t mrg 
)
static

Definition at line 263 of file ssl_engine_config.c.

◆ modssl_ctx_cfg_merge_certkeys_array()

static void modssl_ctx_cfg_merge_certkeys_array ( apr_pool_t p,
apr_array_header_t base,
apr_array_header_t add,
apr_array_header_t mrg 
)
static

Definition at line 333 of file ssl_engine_config.c.

◆ modssl_ctx_cfg_merge_proxy()

static void modssl_ctx_cfg_merge_proxy ( apr_pool_t p,
modssl_ctx_t base,
modssl_ctx_t add,
modssl_ctx_t mrg 
)
static

Definition at line 464 of file ssl_engine_config.c.

◆ modssl_ctx_cfg_merge_server()

static void modssl_ctx_cfg_merge_server ( apr_pool_t p,
modssl_ctx_t base,
modssl_ctx_t add,
modssl_ctx_t mrg 
)
static

Definition at line 361 of file ssl_engine_config.c.

◆ modssl_ctx_init()

static void modssl_ctx_init ( modssl_ctx_t mctx,
apr_pool_t p 
)
static

Definition at line 117 of file ssl_engine_config.c.

◆ modssl_ctx_init_proxy()

static void modssl_ctx_init_proxy ( SSLDirConfigRec dc,
apr_pool_t p 
)
static

Definition at line 417 of file ssl_engine_config.c.

◆ modssl_ctx_init_server()

static void modssl_ctx_init_server ( SSLSrvConfigRec sc,
apr_pool_t p 
)
static

Definition at line 198 of file ssl_engine_config.c.

◆ ssl_cmd_check_dir()

static const char * ssl_cmd_check_dir ( cmd_parms parms,
const char **  dir 
)
static

Definition at line 907 of file ssl_engine_config.c.

◆ ssl_cmd_check_file()

static const char * ssl_cmd_check_file ( cmd_parms parms,
const char **  file 
)
static

Definition at line 815 of file ssl_engine_config.c.

◆ ssl_cmd_crlcheck_parse()

static const char * ssl_cmd_crlcheck_parse ( cmd_parms parms,
const char arg,
int mask 
)
static

Definition at line 1107 of file ssl_engine_config.c.

◆ ssl_cmd_ocspcheck_parse()

static const char * ssl_cmd_ocspcheck_parse ( cmd_parms parms,
const char arg,
int mask 
)
static

Definition at line 1738 of file ssl_engine_config.c.

◆ ssl_cmd_protocol_parse()

static const char * ssl_cmd_protocol_parse ( cmd_parms parms,
const char arg,
ssl_proto_t options 
)
static

Definition at line 1442 of file ssl_engine_config.c.

◆ ssl_cmd_verify_depth_parse()

static const char * ssl_cmd_verify_depth_parse ( cmd_parms parms,
const char arg,
int depth 
)
static

Definition at line 1201 of file ssl_engine_config.c.

◆ ssl_cmd_verify_parse()

static const char * ssl_cmd_verify_parse ( cmd_parms parms,
const char arg,
ssl_verify_t id 
)
static

Definition at line 1153 of file ssl_engine_config.c.

◆ ssl_config_server_new()

static SSLSrvConfigRec * ssl_config_server_new ( apr_pool_t p)
static

Definition at line 217 of file ssl_engine_config.c.