Open SCAP Library
|
XCCDF policy model structure contains xccdf_benchmark as reference to Benchmark element in XML file and list of policies that are abstract structure of Profile element from benchmark file. More...
#include <xccdf_policy_priv.h>
Public Member Functions | |
OSCAP_API bool | xccdf_policy_model_register_engine_oval (struct xccdf_policy_model *model, struct oval_agent_session *sess) |
Function to register predefined oval callback for XCCDF evaluation proccess. More... | |
OSCAP_API struct xccdf_policy_model * | xccdf_policy_model_new (struct xccdf_benchmark *benchmark) |
Constructor of Policy Model structure. More... | |
OSCAP_API void | xccdf_policy_model_free (struct xccdf_policy_model *) |
Destructor of Policy Model structure. | |
OSCAP_API struct xccdf_tailoring * | xccdf_policy_model_get_tailoring (struct xccdf_policy_model *model) |
Retrieves the Tailoring element used in this policy. | |
OSCAP_API bool | xccdf_policy_model_register_engine_and_query_callback (struct xccdf_policy_model *model, char *sys, xccdf_policy_engine_eval_fn eval_fn, void *usr, xccdf_policy_engine_query_fn query_fn) |
Function to register callback for checking system. More... | |
OSCAP_API bool | xccdf_policy_model_register_output_callback (struct xccdf_policy_model *model, policy_reporter_output func, void *usr) |
Function to register output callback for checking system that will be called AFTER each rule evaluation. More... | |
OSCAP_API bool | xccdf_policy_model_register_start_callback (struct xccdf_policy_model *model, policy_reporter_start func, void *usr) |
Function to register start callback for checking system that will be called BEFORE each rule evaluation. More... | |
OSCAP_API bool | xccdf_policy_model_register_multicheck_callback (struct xccdf_policy_model *model, policy_reporter_multicheck func, void *usr) |
Function to register callback for checking system that will be called DURING each rule evaluation if rule sets multi-check="true". More... | |
void | xccdf_policy_model_unregister_engines (struct xccdf_policy_model *model, const char *sys) |
Remove checking engines with given system from xccdf_policy_model. More... | |
bool | xccdf_policy_model_platforms_are_applicable (struct xccdf_policy_model *model, struct oscap_string_iterator *platforms) |
Query whether the given list platforms qualifies as 'applicable'. More... | |
bool | xccdf_policy_model_item_is_applicable (struct xccdf_policy_model *model, struct xccdf_item *item) |
Query whether the given item is applicable within given policy. More... | |
struct cpe_session * | xccdf_policy_model_get_cpe_session (struct xccdf_policy_model *model) |
Get CPE session assigned with the XCCDF Policy Model. More... | |
Getters | |
Return value is pointer to structure's member. Do not free unless you null the pointer in the structure. Use remove function otherwise. | |
OSCAP_API struct xccdf_benchmark * | xccdf_policy_model_get_benchmark (const struct xccdf_policy_model *item) |
Get Benchmark from Policy Model. More... | |
OSCAP_API struct xccdf_policy_iterator * | xccdf_policy_model_get_policies (const struct xccdf_policy_model *model) |
Get policies from Policy Model. More... | |
OSCAP_API int | xccdf_policy_model_build_all_useful_policies (struct xccdf_policy_model *policy_model) |
Build all policies that can be useful for user. More... | |
OSCAP_API struct xccdf_result_iterator * | xccdf_policy_get_results (const struct xccdf_policy *policy) |
Get results of all XCCDF Policy results. | |
OSCAP_API struct xccdf_result * | xccdf_policy_get_result_by_id (struct xccdf_policy *policy, const char *id) |
Get XCCDF Result structure by it's idetificator if there is one. More... | |
OSCAP_API struct xccdf_policy * | xccdf_policy_model_get_policy_by_id (struct xccdf_policy_model *policy_model, const char *id) |
Get XCCDF Policy from Policy model by speciefied ID of Profile. More... | |
Setters | |
For lists use add functions. Parameters of set functions are duplicated in memory and need to be freed by caller. | |
OSCAP_API bool | xccdf_policy_model_add_policy (struct xccdf_policy_model *, struct xccdf_policy *) |
Add Policy to Policy Model. More... | |
OSCAP_API bool | xccdf_policy_add_result (struct xccdf_policy *policy, struct xccdf_result *item) |
Add result to XCCDF Policy Model. | |
Data Fields | |
struct xccdf_benchmark * | benchmark |
Benchmark element (root element of XML file) | |
struct xccdf_tailoring * | tailoring |
Tailoring element. | |
struct oscap_list * | policies |
List of xccdf_policy structures. | |
struct oscap_list * | callbacks |
Callbacks for output callbacks (see callback_out_t) | |
struct oscap_list * | engines |
Callbacks for checking engines (see xccdf_policy_engine) | |
struct cpe_session * | cpe |
XCCDF policy model structure contains xccdf_benchmark as reference to Benchmark element in XML file and list of policies that are abstract structure of Profile element from benchmark file.
Handle all policies for given XCCDF benchmark.
struct cpe_session * xccdf_policy_model_get_cpe_session | ( | struct xccdf_policy_model * | model | ) |
Get CPE session assigned with the XCCDF Policy Model.
model | XCCDF Policy Model |
bool xccdf_policy_model_item_is_applicable | ( | struct xccdf_policy_model * | model, |
struct xccdf_item * | item | ||
) |
Query whether the given item is applicable within given policy.
model | XCCDF Policy Model |
item | XCCDF Item |
bool xccdf_policy_model_platforms_are_applicable | ( | struct xccdf_policy_model * | model, |
struct oscap_string_iterator * | platforms | ||
) |
Query whether the given list platforms qualifies as 'applicable'.
When considering policy_model CPE settings in the given policy model
model | XCCDF Policy Model |
platforms | list of CPE platform identifiers |
void xccdf_policy_model_unregister_engines | ( | struct xccdf_policy_model * | model, |
const char * | sys | ||
) |
Remove checking engines with given system from xccdf_policy_model.
model | XCCDF Policy Model |
sys | sytem name of the callback |