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 *);
92 int oval_state_parse_tag(xmlTextReaderPtr reader,
struct oval_parser_context *context,
void *);
93 xmlNode *oval_state_to_dom(
struct oval_state *, xmlDoc *, xmlNode *);
95 int oval_variable_parse_tag(xmlTextReaderPtr reader,
struct oval_parser_context *context,
void *);
96 xmlNode *oval_variable_to_dom(
struct oval_variable *, xmlDoc *, xmlNode *);
100 int oval_variable_binding_parse_tag(xmlTextReaderPtr,
struct oval_parser_context *, oval_variable_binding_consumer,
void *);
104 typedef void (*oval_filter_consumer) (
struct oval_filter *,
void *);
105 int oval_filter_parse_tag(xmlTextReaderPtr,
struct oval_parser_context *, oval_filter_consumer,
void *);
106 xmlNode *oval_filter_to_dom(
struct oval_filter *, xmlDoc *, xmlNode *);
110 int oval_object_content_parse_tag(xmlTextReaderPtr,
struct oval_parser_context *, oval_object_content_consumer,
void *);
114 int oval_state_content_parse_tag(xmlTextReaderPtr,
struct oval_parser_context *, oscap_consumer_func,
void *);
117 typedef void (*oval_behavior_consumer) (
struct oval_behavior *,
void *);
121 int oval_entity_parse_tag(xmlTextReaderPtr,
struct oval_parser_context *, oscap_consumer_func,
void *);
122 xmlNode *oval_entity_to_dom(
struct oval_entity *, xmlDoc *, xmlNode *);
125 oscap_consumer_func,
void *, oval_record_field_type_t);
126 xmlNode *oval_record_field_to_dom(
struct oval_record_field *,
bool, xmlDoc *, xmlNode *, xmlNs *);
128 typedef void (*oval_set_consumer) (
struct oval_setobject *,
void *);
129 int oval_set_parse_tag(xmlTextReaderPtr,
struct oval_parser_context *, oval_set_consumer,
void *);
130 xmlNode *oval_set_to_dom(
struct oval_setobject *, xmlDoc *, xmlNode *);
133 typedef void (*oval_value_consumer) (
struct oval_value *,
void *);
134 int oval_value_parse_tag(xmlTextReaderPtr,
struct oval_parser_context *, oval_value_consumer,
void *);
135 xmlNode *oval_value_to_dom(
struct oval_value *, xmlDoc *, xmlNode *);
145 typedef void (*oval_component_consumer) (
struct oval_component *,
void *);
146 int oval_component_parse_tag(xmlTextReaderPtr,
struct oval_parser_context *, oval_component_consumer,
void *);
147 xmlNode *oval_component_to_dom(
struct oval_component *, xmlDoc *, xmlNode *);
150 typedef void (*oval_message_consumer) (
struct oval_message *,
void *);
151 int oval_message_parse_tag(xmlTextReaderPtr,
struct oval_parser_context *, oscap_consumer_func,
void *);
152 void oval_message_to_dom(
struct oval_message *, xmlDoc *, xmlNode *);
156 xmlNode *oval_generator_to_dom(
struct oval_generator *, xmlDocPtr, xmlNode *);
159 xmlNode *oval_definition_model_to_dom(
struct oval_definition_model *definition_model, xmlDocPtr doc, xmlNode * parent);
179 struct oval_string_map *oval_definition_model_build_vardef_mapping(
struct oval_definition_model *model);
185 bool oval_variable_contains_value(
struct oval_variable *variable,
const char* o_value_text);
188 #define OVAL_INDEPENDENT_SYSCHAR_SUBTYPE 7999
oval_operator_t
Boolean operators.
Definition: oval_definitions.h:75
OVAL System Characteristics model.
Definition: oval_sysModel.c:54
oval_entity_varref_type_t
Varref types.
Definition: oval_definitions.h:168
oval_arithmetic_operation_t
Arithmetic format enumeration.
Definition: oval_definitions.h:222
oval_component_type_t
Component types.
Definition: oval_definitions.h:200
oval_operation_t
Operations.
Definition: oval_definitions.h:84
oval_subtype_t
Unknown subtypes.
Definition: oval_types.h:120
Oval definition specification.
Definition: oval_definition.c:54
OVAL set object.
Definition: oval_set.c:45
Open Vulnerability and Assessment Language.
Specify oval_definition dependencies.
Definition: oval_criteriaNode.c:50
#define OSCAP_DEPRECATED(func)
This macro will warn, when a deprecated function is used.
Definition: oscap.h:50
Each OVAL Definition specifies certain type of affected system(s).
Definition: oval_affected.c:52
OVAL filter.
Definition: oval_filter.c:43
OVAL message.
Definition: oval_message.c:45
An Oval_state instance is a collection of one or more characteristics pertaining to a specific object...
Definition: oval_state.c:45
Binding of an value to an OVAL variable.
Definition: oval_variableBinding.c:45
OVAL object or item entity value.
Definition: oval_value.c:45
oval_datatype_t
Datatypes.
Definition: oval_definitions.h:149
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:113
oval_entity_type_t
Type of OVAL entity.
Definition: oval_definitions.h:131
An Oval_state_content instance specifies an oval_state field.
Definition: oval_stateContent.c:45
An oval variable resolves an oval_value stream which specifies constraints for oval_objects and oval_...
Definition: oval_variable.c:48
OVAL variable component Oval_component instances specify evaluation constraints on local variables (s...
Definition: oval_component.c:116
oval_family_t
OVAL family.
Definition: oval_types.h:41
Definition: oval_recordField.c:39
oval_existence_t
Existence check enumeration.
Definition: oval_definitions.h:103
oval_setobject_operation_t
Set operations.
Definition: oval_definitions.h:183
Definition: oval_collection.c:51
OVAL entity.
Definition: oval_entity.c:54
oval_variable_type_t
OVAL variable types.
Definition: oval_definitions.h:191
oval_datetime_format_t
Datetime format enumeration.
Definition: oval_definitions.h:231
An Oval_object_content instance specifies an oval_object field.
Definition: oval_objectContent.c:44
oval_definition_class_t
Definition: oval_types.h:353
Oval definition model.
Definition: oval_defModel.c:51
oval_setobject_type_t
OVAL set object types.
Definition: oval_definitions.h:176
An Oval_test specifies a technical control by identifying an oval_object that is evaluated on an inst...
Definition: oval_test.c:47
oval_syschar_collection_flag_t
System characteristics result flag.
Definition: oval_system_characteristics.h:49
Open Vulnerability and Assessment Language.
Definition: oval_schema_version.h:39
oval_filter_action_t
Type of filter action.
Definition: oval_definitions.h:142
oval_message_level_t
Message level.
Definition: oval_system_characteristics.h:69
The OVAL variable model facilitates access to external variable value bindings used to to constrain t...
Definition: oval_varModel.c:56
Definition: oval_generator.c:44
OVAL behavior.
Definition: oval_behavior.c:50
oval_affected_family_t
Affected family enumeration.
Definition: oval_definitions.h:55
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:46