Apache HTTPD
Macros | Typedefs | Functions | Variables
ssl.c File Reference
#include "apr.h"
#include "apr_strings.h"
#include "apr_buckets.h"
#include "apr_lib.h"
#include "apr_signal.h"
#include "apr_strmatch.h"
#include "apr_want.h"
#include "util_filter.h"
#include "ap_config.h"
#include "httpd.h"
#include "http_config.h"
#include "http_core.h"
#include "http_connection.h"
#include "http_protocol.h"
#include "http_request.h"
#include "http_main.h"
#include "http_ssl.h"
#include "http_log.h"
#include "mod_core.h"

Go to the source code of this file.

Macros

#define APR_WANT_STDIO   /* for sscanf */
 
#define APR_WANT_STRFUNC
 
#define APR_WANT_MEMFUNC
 
#define APLOG_MODULE_INDEX   AP_CORE_MODULE_INDEX
 

Typedefs

typedef int() apr_OFN_ssl_is_https_t(conn_rec *)
 
typedef int() apr_OFN_ssl_proxy_enable_t(conn_rec *)
 
typedef int() apr_OFN_ssl_engine_disable_t(conn_rec *)
 
typedef int() apr_OFN_ssl_engine_set_t(conn_rec *, ap_conf_vector_t *, int proxy, int enable)
 
typedef const char *() apr_OFN_ssl_var_lookup_t(apr_pool_t *p, server_rec *s, conn_rec *c, request_rec *r, const char *name)
 

Functions

static int ssl_is_https (conn_rec *c)
 
int ap_ssl_conn_is_ssl (conn_rec *c)
 
static int ssl_engine_set (conn_rec *c, ap_conf_vector_t *per_dir_config, int proxy, int enable)
 
static int ssl_proxy_enable (conn_rec *c)
 
static int ssl_engine_disable (conn_rec *c)
 
int ap_ssl_bind_outgoing (conn_rec *c, struct ap_conf_vector_t *dir_conf, int enable_ssl)
 
int ap_ssl_has_outgoing_handlers (void)
 
static const charssl_var_lookup (apr_pool_t *p, server_rec *s, conn_rec *c, request_rec *r, const char *name)
 
const charap_ssl_var_lookup (apr_pool_t *p, server_rec *s, conn_rec *c, request_rec *r, const char *name)
 
void ap_setup_ssl_optional_fns (apr_pool_t *pool)
 
apr_status_t ap_ssl_add_cert_files (server_rec *s, apr_pool_t *p, apr_array_header_t *cert_files, apr_array_header_t *key_files)
 
apr_status_t ap_ssl_add_fallback_cert_files (server_rec *s, apr_pool_t *p, apr_array_header_t *cert_files, apr_array_header_t *key_files)
 
int ap_ssl_answer_challenge (conn_rec *c, const char *server_name, const char **pcert_pem, const char **pkey_pem)
 
apr_status_t ap_ssl_ocsp_prime (server_rec *s, apr_pool_t *p, const char *id, apr_size_t id_len, const char *pem)
 
apr_status_t ap_ssl_ocsp_get_resp (server_rec *s, conn_rec *c, const char *id, apr_size_t id_len, ap_ssl_ocsp_copy_resp *cb, void *userdata)
 
void ap_hook_ssl_conn_is_ssl (ap_HOOK_ssl_conn_is_ssl_t *pf, const char *const *aszPre, const char *const *aszSucc, int nOrder)
 
apr_array_header_tap_hook_get_ssl_conn_is_ssl (void)
 
int ap_run_ssl_conn_is_ssl (conn_rec *c)
 
void ap_hook_ssl_var_lookup (ap_HOOK_ssl_var_lookup_t *pf, const char *const *aszPre, const char *const *aszSucc, int nOrder)
 
apr_array_header_tap_hook_get_ssl_var_lookup (void)
 
const charap_run_ssl_var_lookup (apr_pool_t *p, server_rec *s, conn_rec *c, request_rec *r, const char *name)
 
void ap_hook_ssl_add_cert_files (ap_HOOK_ssl_add_cert_files_t *pf, const char *const *aszPre, const char *const *aszSucc, int nOrder)
 
apr_array_header_tap_hook_get_ssl_add_cert_files (void)
 
int ap_run_ssl_add_cert_files (server_rec *s, apr_pool_t *p, apr_array_header_t *cert_files, apr_array_header_t *key_files)
 
void ap_hook_ssl_add_fallback_cert_files (ap_HOOK_ssl_add_fallback_cert_files_t *pf, const char *const *aszPre, const char *const *aszSucc, int nOrder)
 
apr_array_header_tap_hook_get_ssl_add_fallback_cert_files (void)
 
int ap_run_ssl_add_fallback_cert_files (server_rec *s, apr_pool_t *p, apr_array_header_t *cert_files, apr_array_header_t *key_files)
 
void ap_hook_ssl_answer_challenge (ap_HOOK_ssl_answer_challenge_t *pf, const char *const *aszPre, const char *const *aszSucc, int nOrder)
 
apr_array_header_tap_hook_get_ssl_answer_challenge (void)
 
int ap_run_ssl_answer_challenge (conn_rec *c, const char *server_name, const char **pcert_pem, const char **pkey_pem)
 
void ap_hook_ssl_ocsp_prime_hook (ap_HOOK_ssl_ocsp_prime_hook_t *pf, const char *const *aszPre, const char *const *aszSucc, int nOrder)
 
apr_array_header_tap_hook_get_ssl_ocsp_prime_hook (void)
 
int ap_run_ssl_ocsp_prime_hook (server_rec *s, apr_pool_t *p, const char *id, apr_size_t id_len, const char *pem)
 
void ap_hook_ssl_ocsp_get_resp_hook (ap_HOOK_ssl_ocsp_get_resp_hook_t *pf, const char *const *aszPre, const char *const *aszSucc, int nOrder)
 
apr_array_header_tap_hook_get_ssl_ocsp_get_resp_hook (void)
 
int ap_run_ssl_ocsp_get_resp_hook (server_rec *s, conn_rec *c, const char *id, apr_size_t id_len, ap_ssl_ocsp_copy_resp *cb, void *userdata)
 
void ap_hook_ssl_bind_outgoing (ap_HOOK_ssl_bind_outgoing_t *pf, const char *const *aszPre, const char *const *aszSucc, int nOrder)
 
apr_array_header_tap_hook_get_ssl_bind_outgoing (void)
 
int ap_run_ssl_bind_outgoing (conn_rec *c, ap_conf_vector_t *dir_conf, int require_ssl)
 

Variables

struct { 
 
   apr_array_header_t *   link_ssl_conn_is_ssl 
 
   apr_array_header_t *   link_ssl_var_lookup 
 
   apr_array_header_t *   link_ssl_add_cert_files 
 
   apr_array_header_t *   link_ssl_add_fallback_cert_files 
 
   apr_array_header_t *   link_ssl_answer_challenge 
 
   apr_array_header_t *   link_ssl_ocsp_prime_hook 
 
   apr_array_header_t *   link_ssl_ocsp_get_resp_hook 
 
   apr_array_header_t *   link_ssl_bind_outgoing 
 
_hooks 
 
static apr_OFN_ssl_is_https_tmodule_ssl_is_https
 
static apr_OFN_ssl_proxy_enable_tmodule_ssl_proxy_enable
 
static apr_OFN_ssl_engine_disable_tmodule_ssl_engine_disable
 
static apr_OFN_ssl_engine_set_tmodule_ssl_engine_set
 
static apr_OFN_ssl_var_lookup_tmodule_ssl_var_lookup
 

Macro Definition Documentation

◆ APLOG_MODULE_INDEX

#define APLOG_MODULE_INDEX   AP_CORE_MODULE_INDEX

Definition at line 58 of file ssl.c.

◆ APR_WANT_MEMFUNC

#define APR_WANT_MEMFUNC

Definition at line 31 of file ssl.c.

◆ APR_WANT_STDIO

#define APR_WANT_STDIO   /* for sscanf */

Definition at line 29 of file ssl.c.

◆ APR_WANT_STRFUNC

#define APR_WANT_STRFUNC

Definition at line 30 of file ssl.c.

Typedef Documentation

◆ apr_OFN_ssl_engine_disable_t

typedef int() apr_OFN_ssl_engine_disable_t(conn_rec *)

Definition at line 75 of file ssl.c.

◆ apr_OFN_ssl_engine_set_t

typedef int() apr_OFN_ssl_engine_set_t(conn_rec *, ap_conf_vector_t *, int proxy, int enable)

Definition at line 79 of file ssl.c.

◆ apr_OFN_ssl_is_https_t

typedef int() apr_OFN_ssl_is_https_t(conn_rec *)

Definition at line 71 of file ssl.c.

◆ apr_OFN_ssl_proxy_enable_t

typedef int() apr_OFN_ssl_proxy_enable_t(conn_rec *)

Definition at line 73 of file ssl.c.

◆ apr_OFN_ssl_var_lookup_t

typedef const char *() apr_OFN_ssl_var_lookup_t(apr_pool_t *p, server_rec *s, conn_rec *c, request_rec *r, const char *name)

Definition at line 174 of file ssl.c.

Function Documentation

◆ ssl_engine_disable()

static int ssl_engine_disable ( conn_rec c)
static

Definition at line 123 of file ssl.c.

◆ ssl_engine_set()

static int ssl_engine_set ( conn_rec c,
ap_conf_vector_t per_dir_config,
int  proxy,
int  enable 
)
static

< Module has handled this stage.

Definition at line 99 of file ssl.c.

◆ ssl_is_https()

static int ssl_is_https ( conn_rec c)
static

Definition at line 83 of file ssl.c.

◆ ssl_proxy_enable()

static int ssl_proxy_enable ( conn_rec c)
static

Definition at line 118 of file ssl.c.

◆ ssl_var_lookup()

static const char * ssl_var_lookup ( apr_pool_t p,
server_rec s,
conn_rec c,
request_rec r,
const char name 
)
static

Definition at line 177 of file ssl.c.

Variable Documentation

◆ [struct]

struct { ... } _hooks

◆ link_ssl_add_cert_files

apr_array_header_t* link_ssl_add_cert_files

Definition at line 69 of file ssl.c.

◆ link_ssl_add_fallback_cert_files

apr_array_header_t* link_ssl_add_fallback_cert_files

Definition at line 69 of file ssl.c.

◆ link_ssl_answer_challenge

apr_array_header_t* link_ssl_answer_challenge

Definition at line 69 of file ssl.c.

◆ link_ssl_bind_outgoing

apr_array_header_t* link_ssl_bind_outgoing

Definition at line 69 of file ssl.c.

◆ link_ssl_conn_is_ssl

apr_array_header_t* link_ssl_conn_is_ssl

Definition at line 69 of file ssl.c.

◆ link_ssl_ocsp_get_resp_hook

apr_array_header_t* link_ssl_ocsp_get_resp_hook

Definition at line 69 of file ssl.c.

◆ link_ssl_ocsp_prime_hook

apr_array_header_t* link_ssl_ocsp_prime_hook

Definition at line 69 of file ssl.c.

◆ link_ssl_var_lookup

apr_array_header_t* link_ssl_var_lookup

Definition at line 69 of file ssl.c.

◆ module_ssl_engine_disable

apr_OFN_ssl_engine_disable_t* module_ssl_engine_disable
static

Definition at line 76 of file ssl.c.

◆ module_ssl_engine_set

apr_OFN_ssl_engine_set_t* module_ssl_engine_set
static

Definition at line 80 of file ssl.c.

◆ module_ssl_is_https

apr_OFN_ssl_is_https_t* module_ssl_is_https
static

Definition at line 72 of file ssl.c.

◆ module_ssl_proxy_enable

apr_OFN_ssl_proxy_enable_t* module_ssl_proxy_enable
static

Definition at line 74 of file ssl.c.

◆ module_ssl_var_lookup

apr_OFN_ssl_var_lookup_t* module_ssl_var_lookup
static

Definition at line 175 of file ssl.c.