![]() |
The FreeRADIUS server $Id: 15bac2a4c627c01d1aa2047687b3418955ac7f00 $
|
Check a certificate's serial number against a CRL. More...
#include <freeradius-devel/crl/crl.h>#include <freeradius-devel/server/base.h>#include <freeradius-devel/server/module_rlm.h>#include <freeradius-devel/io/coord_pair.h>#include <freeradius-devel/tls/strerror.h>#include <freeradius-devel/tls/utils.h>#include <freeradius-devel/unlang/xlat_func.h>#include <openssl/x509v3.h>
Include dependency graph for rlm_crl.c:Go to the source code of this file.
Data Structures | |
| struct | crl_entry_t |
| A single CRL in the thread specific list of CRLs. More... | |
| struct | crl_fail_t |
| Structure to record recent fetch failures. More... | |
| struct | crl_pending_t |
| Structure to record a request which is waiting for CRL fetching to complete. More... | |
| struct | rlm_crl_env_t |
| struct | rlm_crl_rctx_t |
| struct | rlm_crl_t |
| struct | rlm_crl_thread_t |
| Thread specific structure to hold requests awaiting CRL fetching. More... | |
Enumerations | |
| enum | crl_check_status_t { CRL_CHECK_BASE = 0 , CRL_CHECK_FETCH_DELTA , CRL_CHECK_DELTA } |
| A status used to track which CRL is being checked. More... | |
| enum | crl_ret_t { CRL_ERROR = -1 , CRL_ENTRY_NOT_FOUND = 0 , CRL_ENTRY_FOUND = 1 , CRL_ENTRY_REMOVED = 2 , CRL_NOT_FOUND = 3 , CRL_MISSING_DELTA = 4 } |
| enum | rlm_crl_coord_callback_t { CRL_COORD_PAIR_CALLBACK_ID = 0 } |
| Callback IDs used by CRL coordinator calls. More... | |
Functions | |
| static int | mod_instantiate (module_inst_ctx_t const *mctx) |
| Instantiate the module. | |
Variables | |
| static fr_dict_attr_t const * | attr_base_crl |
| static fr_dict_attr_t const * | attr_crl_cdp_url |
| static fr_dict_attr_t const * | attr_crl_data |
| static fr_dict_attr_t const * | attr_delta_crl |
| static fr_dict_attr_t const * | attr_packet_type |
| static fr_dict_t const * | dict_crl |
| static conf_parser_t | module_config [] |
| module_rlm_t | rlm_crl |
| fr_dict_autoload_t | rlm_crl_dict [] |
| fr_dict_attr_autoload_t | rlm_crl_dict_attr [] |
Check a certificate's serial number against a CRL.
Definition in file rlm_crl.c.
| struct crl_entry_t |
Collaboration diagram for crl_entry_t:| Data Fields | ||
|---|---|---|
| char const * | cdp_url | The URL of the CRL. |
| X509_CRL * | crl | The CRL. |
| fr_value_box_list_t | delta_urls | URLs from which a delta CRL can be retrieved. |
| fr_rb_node_t | node | The node in the tree. |
| struct crl_fail_t |
Collaboration diagram for crl_fail_t:| Data Fields | ||
|---|---|---|
| char const * | cdp_url | The URL which failed to fetch. |
| fr_time_t | fail_time | When did the failure occur. |
| fr_rb_node_t | node | Node in the tree of failures. |
| struct crl_pending_t |
Structure to record a request which is waiting for CRL fetching to complete.
Collaboration diagram for crl_pending_t:| Data Fields | ||
|---|---|---|
| fr_rb_node_t | node | |
| request_t * | request | |
| struct rlm_crl_env_t |
Collaboration diagram for rlm_crl_env_t:| Data Fields | ||
|---|---|---|
| fr_value_box_list_head_t * | cdp | The CRL distribution points. |
| fr_value_box_t | serial | The serial to check. |
| struct rlm_crl_rctx_t |
Collaboration diagram for rlm_crl_rctx_t:| Data Fields | ||
|---|---|---|
| crl_entry_t * | base_crl | The base CRL relating to the delta currently being fetched. |
| fr_value_box_t * | cdp_url | The URL we're currently attempting to load. |
| fr_value_box_list_t | crl_data | Data from CRL expansion. |
| fr_value_box_list_t | missing_crls | CRLs missing from the tree. |
| crl_check_status_t | status | Status of the current CRL check. |
| struct rlm_crl_t |
Collaboration diagram for rlm_crl_t:| Data Fields | ||
|---|---|---|
| fr_coord_pair_reg_t * | coord_pair_reg | coord_pair registration for fetching CRLs. |
| fr_coord_reg_t * | coord_reg | coord registration for fetching CRLs. |
| fr_time_delta_t | retry_delay | Time to hold off between CRL fetching failures. |
| char const ** | urls | Initial list of URLs to fetch. |
| struct rlm_crl_thread_t |
Thread specific structure to hold requests awaiting CRL fetching.
Collaboration diagram for rlm_crl_thread_t:| Data Fields | ||
|---|---|---|
| fr_rb_tree_t | crls | CRLs fetched from the coordinator. |
| fr_coord_worker_t * | cw | Worker side of coordinator communication. |
| fr_rb_tree_t | fails | Recent CRLs which have failed to fetch. |
| fr_rb_tree_t | pending | Requests yielded while the CRL is being fetched. |
| enum crl_check_status_t |
| enum crl_ret_t |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
| module_rlm_t rlm_crl |
| fr_dict_autoload_t rlm_crl_dict |
| fr_dict_attr_autoload_t rlm_crl_dict_attr |
1.9.8