00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #pragma once
00025 #ifndef _OSCAP_XCCDF_POLICY_PRIV_H
00026 #define _OSCAP_XCCDF_POLICY_PRIV_H
00027
00028 #include "common/util.h"
00029 #include "public/xccdf_policy.h"
00030
00031 OSCAP_HIDDEN_START;
00032
00033 #define XCCDF_POLICY_OUTCB_START "urn:xccdf:system:callback:start"
00034 #define XCCDF_POLICY_OUTCB_END "urn:xccdf:system:callback:output"
00035
00045 int xccdf_policy_resolve_fix_substitution(struct xccdf_policy *policy, struct xccdf_fix *fix, struct xccdf_result *test_result);
00046
00055 const char * xccdf_policy_get_value_of_item(struct xccdf_policy * policy, struct xccdf_item * item);
00056
00068 int xccdf_policy_rule_result_remediate(struct xccdf_policy *policy, struct xccdf_rule_result *rr, struct xccdf_fix *fix, struct xccdf_result *test_result);
00069
00077 int xccdf_policy_check_evaluate(struct xccdf_policy * policy, struct xccdf_check * check);
00078
00085 void xccdf_policy_model_unregister_callbacks(struct xccdf_policy_model *model, const char *sys);
00086
00093 int xccdf_policy_remediate(struct xccdf_policy *policy, struct xccdf_result *result);
00094
00103 int xccdf_policy_report_cb(struct xccdf_policy *policy, const char *sysname, void *rule);
00104
00111 struct xccdf_benchmark *xccdf_policy_get_benchmark(const struct xccdf_policy *policy);
00112
00121 bool xccdf_policy_model_platforms_are_applicable(struct xccdf_policy_model *model, struct oscap_string_iterator *platforms);
00122
00130 bool xccdf_policy_model_item_is_applicable(struct xccdf_policy_model *model, struct xccdf_item *item);
00131
00132 OSCAP_HIDDEN_END;
00133
00134 #endif