Open SCAP Library

xccdf_impl.h
1 /*
2 * Copyright 2009 Red Hat Inc., Durham, North Carolina.
3 * Copyright (C) 2010 Tresys Technology, LLC
4 * All Rights Reserved.
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
10 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
15 *
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19 *
20 * Authors:
21 * Josh Adams <jadams@tresys.com>
22 */
23
24 #ifndef XCCDF_IMPL
25 #define XCCDF_IMPL
26
27 #include <public/xccdf_benchmark.h>
28 #include <common/util.h>
29 #include <libxml/xmlreader.h>
30
31 OSCAP_HIDDEN_START;
32
33 #define XCCDF_DC_NAMESPACE BAD_CAST "http://purl.org/dc/elements/1.1/"
34 #define XCCDF_DSIG_NAMESPACE BAD_CAST "http://w3.org/2000/09/xmldsig#"
35 #define XCCDF_XHTML_NAMESPACE BAD_CAST "http://www.w3.org/1999/xhtml"
36
37 xmlNode *xccdf_benchmark_to_dom(struct xccdf_benchmark *benchmark, xmlDocPtr doc,
38 xmlNode *parent, void *user_args);
39 xmlNode *xccdf_item_to_dom(struct xccdf_item *item, xmlDoc *doc, xmlNode *parent, const struct xccdf_version_info *version_info);
40 xmlNode *xccdf_profile_note_to_dom(struct xccdf_profile_note *note, xmlDoc *doc, xmlNode *parent);
41 xmlNode *xccdf_fixtext_to_dom(struct xccdf_fixtext *fixtext, xmlDoc *doc, xmlNode *parent);
42 xmlNode *xccdf_fix_to_dom(struct xccdf_fix *fix, xmlDoc *doc, xmlNode *parent, const struct xccdf_version_info* version_info);
43 xmlNode *xccdf_status_to_dom(struct xccdf_status *status, xmlDoc *doc, xmlNode *parent, const struct xccdf_version_info* version_info);
44 xmlNode *xccdf_warning_to_dom(struct xccdf_warning *warning, xmlDoc *doc, xmlNode *parent);
45 xmlNode *xccdf_check_to_dom(struct xccdf_check *check, xmlDoc *doc, xmlNode *parent, const struct xccdf_version_info* version_info);
46 void xccdf_rule_to_dom(struct xccdf_rule *rule, xmlNode *rule_node, xmlDoc *doc, xmlNode *parent);
47 void xccdf_value_to_dom(struct xccdf_value *value, xmlNode *value_node, xmlDoc *doc, xmlNode *parent);
48 void xccdf_group_to_dom(struct xccdf_group *group, xmlNode *group_node, xmlDoc *doc, xmlNode *parent);
49 void xccdf_profile_to_dom(struct xccdf_profile *profile, xmlNode *profile_node, xmlDoc *doc, xmlNode *parent, const struct xccdf_version_info *version_info);
50 void xccdf_result_to_dom(struct xccdf_result *result, xmlNode *result_node, xmlDoc *doc, xmlNode *parent, bool use_stig_rule_id);
51 xmlNode *xccdf_target_identifier_to_dom(const struct xccdf_target_identifier *ti, xmlDoc *doc, xmlNode *parent, const struct xccdf_version_info* version_info);
52 xmlNode *xccdf_rule_result_to_dom(struct xccdf_rule_result *result, xmlDoc *doc, xmlNode *parent, const struct xccdf_version_info* version_info, struct xccdf_benchmark *benchmark, bool use_stig_rule_id);
53 xmlNode *xccdf_ident_to_dom(struct xccdf_ident *ident, xmlDoc *doc, xmlNode *parent, const struct xccdf_version_info* version_info);
54 xmlNode *xccdf_setvalue_to_dom(struct xccdf_setvalue *setvalue, xmlDoc *doc, xmlNode *parent, const struct xccdf_version_info* version_info);
55 xmlNode *xccdf_override_to_dom(struct xccdf_override *override, xmlDoc *doc, xmlNode *parent, const struct xccdf_version_info* version_info);
56
57 OSCAP_HIDDEN_END;
58
59 #endif
xccdf_profile_note
XCCDF note for given rule in context of given profile.
Definition: item.h:320
xccdf_version_info
Definition: XCCDF/elements.c:43
xccdf_benchmark
Top level XCCDF structure containing profiles, rules, values and results.
xccdf_setvalue
XCCDF set value option used in the profile.
Definition: item.h:276
xccdf_check
XCCDF simple or complex check.
Definition: item.h:286
xccdf_value
XCCDF Value allows test parametrization or capturing output of tests.
Definition: xccdf_benchmark.h:226
xccdf_group
XCCDF rule group.
Definition: xccdf_benchmark.h:220
xccdf_fixtext
XCCDF textual fix instructions.
Definition: item.h:336
xccdf_result
Actual results of running a XCCDF test or profile.
Definition: xccdf_benchmark.h:232
xccdf_benchmark.h
Open-scap XCCDF library interface.
xccdf_override
XCCDF override.
Definition: item.h:376
xccdf_rule_result
XCCDF rule result.
Definition: item.h:345
xccdf_status
XCCDF item status.
Definition: item.h:244
xccdf_ident
XCCDF rule ident URI.
Definition: item.h:281
xccdf_rule
XCCDF rule defines a test execution.
Definition: xccdf_benchmark.h:214
xccdf_profile
XCCDF profile is a set of tests and their settings in a compact package.
Definition: xccdf_benchmark.h:202
xccdf_fix
XCCDF automatic fix.
Definition: item.h:325
xccdf_target_identifier
Can be either <target-id-ref> or some other element.
Definition: item.h:395
xccdf_warning
XCCDF warning.
Definition: item.h:234
xccdf_item
A base class for XCCDF items.
Definition: item.h:221