Open SCAP Library
Loading...
Searching...
No Matches
oval_system_characteristics_impl.h
Go to the documentation of this file.
1
8/*
9 * Copyright 2009,2010,2011 Red Hat Inc., Durham, North Carolina.
10 * All Rights Reserved.
11 *
12 * This library is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU Lesser General Public
14 * License as published by the Free Software Foundation; either
15 * version 2.1 of the License, or (at your option) any later version.
16 *
17 * This library is distributed in the hope that it will be useful,
18 * but WITHOUT ANY WARRANTY; without even the implied warranty of
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
20 * Lesser General Public License for more details.
21 *
22 * You should have received a copy of the GNU Lesser General Public
23 * License along with this library; if not, write to the Free Software
24 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
25 *
26 * Authors:
27 * "David Niemoller" <David.Niemoller@g2-inc.com>
28 * "Peter Vrabec" <pvrabec@redhat.com>
29 */
30
31#ifndef OVAL_SYSCHAR_IMPL
32#define OVAL_SYSCHAR_IMPL
33
35#include "oval_parser_impl.h"
36#include "adt/oval_smc_impl.h"
37#include "../common/util.h"
38
39
40/* sysint */
41typedef void (*oval_sysint_consumer) (struct oval_sysint *, void *);
42int oval_sysint_parse_tag(xmlTextReaderPtr, struct oval_parser_context *, oval_sysint_consumer, void *);
43void oval_sysint_to_dom(struct oval_sysint *, xmlDoc *, xmlNode *);
44
45/* sysinfo */
46void oval_sysinfo_to_dom(struct oval_sysinfo *, xmlDoc *, xmlNode *);
47int oval_sysinfo_parse_tag(xmlTextReaderPtr reader, struct oval_parser_context *);
48
49/* sysitem */
50void oval_sysitem_to_dom(struct oval_sysitem *, xmlDoc *, xmlNode *);
51int oval_sysitem_parse_tag(xmlTextReaderPtr, struct oval_parser_context *, void *usr);
52
53/* syschar */
54void oval_syschar_to_dom(struct oval_syschar *, xmlDoc *, xmlNode *);
55int oval_syschar_parse_tag(xmlTextReaderPtr, struct oval_parser_context *context, void *);
56oval_syschar_collection_flag_t oval_syschar_flag_parse(xmlTextReaderPtr, char *, oval_syschar_collection_flag_t);
57oval_syschar_status_t oval_syschar_status_parse(xmlTextReaderPtr, char *, oval_syschar_status_t);
58struct oval_syschar_model *oval_syschar_get_model(struct oval_syschar *syschar);
59
60/* sysent */
61typedef void (*oval_sysent_consumer) (struct oval_sysent *, void *client);
62int oval_sysent_parse_tag(xmlTextReaderPtr, struct oval_parser_context *, oval_sysent_consumer, void *);
63void oval_sysent_to_dom(struct oval_sysent *sysent, xmlDoc * doc, xmlNode * tag_parent);
64void oval_sysent_to_print(struct oval_sysent *, char *, int);
65
66/* syschar_model */
67typedef bool oval_syschar_resolver(struct oval_syschar *, void *);
68xmlNode *oval_syschar_model_to_dom(struct oval_syschar_model *, xmlDocPtr, xmlNode *, oval_syschar_resolver, void *, bool);
69void oval_syschar_model_reset(struct oval_syschar_model *model);
70
71struct oval_syschar *oval_syschar_model_get_new_syschar(struct oval_syschar_model *, struct oval_object *);
72struct oval_sysitem *oval_syschar_model_get_new_sysitem(struct oval_syschar_model *, const char *id);
73void oval_syschar_model_add_syschar(struct oval_syschar_model *model, struct oval_syschar *syschar);
74void oval_syschar_model_add_sysitem(struct oval_syschar_model *model, struct oval_sysitem *sysitem);
75
76void oval_syschar_model_set_schema(struct oval_syschar_model *model, const char * schema);
77const char * oval_syschar_model_get_schema(struct oval_syschar_model * model);
78
79struct oval_syschar_iterator *oval_syschar_iterator_new(struct oval_smc *mapping);
80int oval_syschar_get_variable_instance_hint(const struct oval_syschar *syschar);
81void oval_syschar_set_variable_instance_hint(struct oval_syschar *syschar, int variable_instance_hint_in);
82const char *oval_syschar_get_id(const struct oval_syschar *syschar);
83
84
85#endif
oval_syschar_collection_flag_t
System characteristics result flag.
Definition oval_system_characteristics.h:50
oval_syschar_status_t
System characteristics status.
Definition oval_system_characteristics.h:61
Open Vulnerability and Assessment Language.
An Oval_object instance describes a set of items to look for on an instrumented host platform.
Definition oval_object.c:45
Definition oval_parser_impl.h:44
OVAL System Characteristics model.
Definition oval_sysModel.c:56
Characteristics bound to an Oval_object.
Definition oval_syschar.c:47
Definition oval_sysEnt.c:48
General instrumented host description.
Definition oval_sysInfo.c:45
Network interface description.
Definition oval_sysInterface.c:45
Each instance of Oval_sysitem represents one item.
Definition oval_sysItem.c:45