30 #ifndef OVAL_DEFINITIONS_IMPL
31 #define OVAL_DEFINITIONS_IMPL
33 #include <libxml/xmlreader.h>
38 #include "../common/util.h"
68 typedef void (*oval_affected_consumer) (
struct oval_affected *,
void *);
69 int oval_affected_parse_tag(xmlTextReaderPtr reader,
struct oval_parser_context *context, oval_affected_consumer,
void *);
71 int oval_test_parse_tag(xmlTextReaderPtr reader,
struct oval_parser_context *context,
void *);
72 xmlNode *oval_test_to_dom(
struct oval_test *, xmlDoc *, xmlNode *);
76 int oval_criteria_parse_tag(xmlTextReaderPtr,
struct oval_parser_context *, oval_criteria_consumer,
void *);
78 typedef void (*oval_reference_consumer) (
struct oval_reference *,
void *);
79 int oval_reference_parse_tag(xmlTextReaderPtr,
struct oval_parser_context *, oval_reference_consumer,
void *);
81 int oval_definition_parse_tag(xmlTextReaderPtr reader,
struct oval_parser_context *context,
void *);
82 xmlNode *oval_definition_to_dom(
struct oval_definition *, xmlDoc *, xmlNode *);
84 int oval_object_parse_tag(xmlTextReaderPtr reader,
struct oval_parser_context *context,
void *);
85 xmlNode *oval_object_to_dom(
struct oval_object *, xmlDoc *, xmlNode *);
90 oval_version_t oval_state_get_schema_version(
const struct oval_state *state);
91 int oval_state_parse_tag(xmlTextReaderPtr reader,
struct oval_parser_context *context,
void *);
92 xmlNode *oval_state_to_dom(
struct oval_state *, xmlDoc *, xmlNode *);
94 int oval_variable_parse_tag(xmlTextReaderPtr reader,
struct oval_parser_context *context,
void *);
95 xmlNode *oval_variable_to_dom(
struct oval_variable *, xmlDoc *, xmlNode *);
99 int oval_variable_binding_parse_tag(xmlTextReaderPtr,
struct oval_parser_context *, oval_variable_binding_consumer,
void *);
103 typedef void (*oval_filter_consumer) (
struct oval_filter *,
void *);
104 int oval_filter_parse_tag(xmlTextReaderPtr,
struct oval_parser_context *, oval_filter_consumer,
void *);
105 xmlNode *oval_filter_to_dom(
struct oval_filter *, xmlDoc *, xmlNode *);
109 int oval_object_content_parse_tag(xmlTextReaderPtr,
struct oval_parser_context *, oval_object_content_consumer,
void *);
113 int oval_state_content_parse_tag(xmlTextReaderPtr,
struct oval_parser_context *, oscap_consumer_func,
void *);
116 typedef void (*oval_behavior_consumer) (
struct oval_behavior *,
void *);
120 int oval_entity_parse_tag(xmlTextReaderPtr,
struct oval_parser_context *, oscap_consumer_func,
void *);
121 xmlNode *oval_entity_to_dom(
struct oval_entity *, xmlDoc *, xmlNode *);
124 oscap_consumer_func,
void *, oval_record_field_type_t);
125 xmlNode *oval_record_field_to_dom(
struct oval_record_field *,
bool, xmlDoc *, xmlNode *, xmlNs *);
127 typedef void (*oval_set_consumer) (
struct oval_setobject *,
void *);
128 int oval_set_parse_tag(xmlTextReaderPtr,
struct oval_parser_context *, oval_set_consumer,
void *);
129 xmlNode *oval_set_to_dom(
struct oval_setobject *, xmlDoc *, xmlNode *);
132 typedef void (*oval_value_consumer) (
struct oval_value *,
void *);
133 int oval_value_parse_tag(xmlTextReaderPtr,
struct oval_parser_context *, oval_value_consumer,
void *);
134 xmlNode *oval_value_to_dom(
struct oval_value *, xmlDoc *, xmlNode *);
144 typedef void (*oval_component_consumer) (
struct oval_component *,
void *);
145 int oval_component_parse_tag(xmlTextReaderPtr,
struct oval_parser_context *, oval_component_consumer,
void *);
146 xmlNode *oval_component_to_dom(
struct oval_component *, xmlDoc *, xmlNode *);
149 typedef void (*oval_message_consumer) (
struct oval_message *,
void *);
150 int oval_message_parse_tag(xmlTextReaderPtr,
struct oval_parser_context *, oscap_consumer_func,
void *);
151 void oval_message_to_dom(
struct oval_message *, xmlDoc *, xmlNode *);
155 xmlNode *oval_generator_to_dom(
struct oval_generator *, xmlDocPtr, xmlNode *);
158 xmlNode *oval_definition_model_to_dom(
struct oval_definition_model *definition_model, xmlDocPtr doc, xmlNode * parent);
175 struct oval_string_map *oval_definition_model_build_vardef_mapping(
struct oval_definition_model *model);
181 bool oval_variable_contains_value(
struct oval_variable *variable,
const char* o_value_text);
184 #define OVAL_INDEPENDENT_SYSCHAR_SUBTYPE 7999
oval_operator_t
Boolean operators.
Definition: oval_definitions.h:72
OVAL System Characteristics model.
Definition: oval_sysModel.c:52
oval_entity_varref_type_t
Varref types.
Definition: oval_definitions.h:165
oval_arithmetic_operation_t
Arithmetic format enumeration.
Definition: oval_definitions.h:218
oval_component_type_t
Component types.
Definition: oval_definitions.h:197
oval_operation_t
Operations.
Definition: oval_definitions.h:81
oval_subtype_t
Unknown subtypes.
Definition: oval_types.h:120
Oval definition specification.
Definition: oval_definition.c:53
OVAL set object.
Definition: oval_set.c:44
Open Vulnerability and Assessment Language.
Specify oval_definition dependencies.
Definition: oval_criteriaNode.c:50
Each OVAL Definition specifies certain type of affected system(s).
Definition: oval_affected.c:51
OVAL filter.
Definition: oval_filter.c:42
OVAL message.
Definition: oval_message.c:44
An Oval_state instance is a collection of one or more characteristics pertaining to a specific object...
Definition: oval_state.c:44
Binding of an value to an OVAL variable.
Definition: oval_variableBinding.c:44
OVAL object or item entity value.
Definition: oval_value.c:44
oval_datatype_t
Datatypes.
Definition: oval_definitions.h:146
An Oval_reference links an Oval_definition to a definitive external reference.
Definition: oval_reference.c:43
oval_check_t
Check enumeration.
Definition: oval_definitions.h:110
oval_entity_type_t
Type of OVAL entity.
Definition: oval_definitions.h:128
An Oval_state_content instance specifies an oval_state field.
Definition: oval_stateContent.c:44
An oval variable resolves an oval_value stream which specifies constraints for oval_objects and oval_...
Definition: oval_variable.c:46
OVAL variable component Oval_component instances specify evaluation constraints on local variables (s...
Definition: oval_component.c:113
oval_family_t
OVAL family.
Definition: oval_types.h:41
Definition: oval_recordField.c:38
oval_existence_t
Existence check enumeration.
Definition: oval_definitions.h:100
oval_setobject_operation_t
Set operations.
Definition: oval_definitions.h:180
Definition: oval_collection.c:51
OVAL entity.
Definition: oval_entity.c:53
oval_variable_type_t
OVAL variable types.
Definition: oval_definitions.h:188
oval_datetime_format_t
Datetime format enumeration.
Definition: oval_definitions.h:227
An Oval_object_content instance specifies an oval_object field.
Definition: oval_objectContent.c:44
oval_definition_class_t
Definition: oval_types.h:350
Oval definition model.
Definition: oval_defModel.c:49
oval_setobject_type_t
OVAL set object types.
Definition: oval_definitions.h:173
An Oval_test specifies a technical control by identifying an oval_object that is evaluated on an inst...
Definition: oval_test.c:46
oval_syschar_collection_flag_t
System characteristics result flag.
Definition: oval_system_characteristics.h:47
Open Vulnerability and Assessment Language.
oval_filter_action_t
Type of filter action.
Definition: oval_definitions.h:139
oval_message_level_t
Message level.
Definition: oval_system_characteristics.h:67
The OVAL variable model facilitates access to external variable value bindings used to to constrain t...
Definition: oval_varModel.c:54
Definition: oval_generator.c:43
OVAL behavior.
Definition: oval_behavior.c:50
oval_affected_family_t
Affected family enumeration.
Definition: oval_definitions.h:52
OVAL probe session structure.
Definition: _oval_probe_session.h:42
Definition: oval_parser_impl.h:45
An Oval_object instance describes a set of items to look for on an instrumented host platform...
Definition: oval_object.c:44