Open SCAP Library
xccdf_benchmark.h
Go to the documentation of this file.
1 
10 /*
11  * Copyright 2009 Red Hat Inc., Durham, North Carolina.
12  * Copyright (C) 2010 Tresys Technology, LLC
13  * All Rights Reserved.
14  *
15  * This library is free software; you can redistribute it and/or
16  * modify it under the terms of the GNU Lesser General Public
17  * License as published by the Free Software Foundation; either
18  * version 2.1 of the License, or (at your option) any later version.
19  *
20  * This library is distributed in the hope that it will be useful,
21  * but WITHOUT ANY WARRANTY; without even the implied warranty of
22  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
23  * Lesser General Public License for more details.
24  *
25  * You should have received a copy of the GNU Lesser General Public
26  * License along with this library; if not, write to the Free Software
27  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
28  *
29  * Authors:
30  * Lukas Kuklinek <lkuklinek@redhat.com>
31  * Josh Adams <jadams@tresys.com>
32  */
33 
34 #ifndef XCCDF_H_
35 #define XCCDF_H_
36 
37 #include <stdbool.h>
38 #include <time.h>
39 #include <oscap_reference.h>
40 #include <oscap.h>
41 #include "cpe_dict.h"
42 
43 /*--------------------*\
44 | Enumerations |
45 \*--------------------*/
46 
55 typedef enum {
56  XCCDF_BENCHMARK = 0x0100,
57  XCCDF_PROFILE = 0x0200,
58  XCCDF_RESULT = 0x0400,
59  XCCDF_RULE = 0x1000,
60  XCCDF_GROUP = 0x2000,
61  XCCDF_VALUE = 0x4000,
62 
69 } xccdf_type_t;
70 
72 typedef enum {
80 
82 typedef enum {
90 
92 typedef enum {
97 
99 typedef enum {
108 
110 typedef enum {
112  XCCDF_OPERATOR_OR = 0x0003,
114 
116 typedef enum {
117  XCCDF_LEVEL_NOT_DEFINED = 0,
123 } xccdf_level_t;
124 
126 typedef enum {
131 
133 typedef enum {
137 } xccdf_role_t;
138 
140 typedef enum {
141  XCCDF_WARNING_NOT_SPECIFIED,
152 
154 typedef enum {
165 
167 typedef enum {
178 
179 /*--------------------*\
180 | Typedefs |
181 \*--------------------*/
182 
186 typedef float xccdf_numeric;
187 
193 
198 struct xccdf_profile;
199 
204 struct xccdf_item;
205 
210 struct xccdf_rule;
211 
216 struct xccdf_group;
217 
222 struct xccdf_value;
223 
228 struct xccdf_result;
229 
230 /*--------------------*\
231 | Support structures |
232 \*--------------------*/
233 
238 struct xccdf_notice;
239 
244 struct xccdf_status;
245 
250 struct xccdf_model;
251 
256 struct xccdf_warning;
257 
262 struct xccdf_select;
263 
268 struct xccdf_setvalue;
269 
274 struct xccdf_refine_value;
275 
280 struct xccdf_refine_rule;
281 
286 struct xccdf_ident;
287 
292 struct xccdf_check;
298 
303 struct xccdf_profile_note;
304 
310 struct xccdf_check_import;
311 
317 struct xccdf_check_export;
318 
324 struct xccdf_fix;
325 
331 struct xccdf_fixtext;
332 
340 struct xccdf_value_instance;
341 
347 struct xccdf_identity;
348 
354 struct xccdf_instance;
355 
361 struct xccdf_message;
362 
368 struct xccdf_override;
369 
375 struct xccdf_rule_result;
376 
382 struct xccdf_score;
383 
389 struct xccdf_target_fact;
390 
398 
405 
412 
419 
426 
433 
440 
447 
454 
461 
468 
475 
481 
488 
495 
502 
509 
516 
523 
530 
537 
544 
551 
558 
565 
572 
579 
586 
593 
600 
607 
614 
618 struct xccdf_version_info;
619 
621 const char* xccdf_version_info_get_version(const struct xccdf_version_info* v);
623 const char* xccdf_version_info_get_namespace_uri(const struct xccdf_version_info* v);
625 const char* xccdf_version_info_get_cpe_version(const struct xccdf_version_info* v);
626 
633 char * xccdf_detect_version(const char* file);
634 
635 /************************************************************/
636 
638 void xccdf_item_free(struct xccdf_item *item);
639 
641 struct xccdf_item * xccdf_item_clone(const struct xccdf_item * old_item);
642 
650 
657 struct xccdf_profile* xccdf_item_to_profile(struct xccdf_item* item);
658 
665 struct xccdf_rule* xccdf_item_to_rule(struct xccdf_item* item);
666 
673 struct xccdf_group* xccdf_item_to_group(struct xccdf_item* item);
674 
681 struct xccdf_value* xccdf_item_to_value(struct xccdf_item* item);
682 
689 struct xccdf_result* xccdf_item_to_result(struct xccdf_item* item);
690 
698 struct xccdf_benchmark* xccdf_benchmark_import(const char *file);
699 
706 int xccdf_benchmark_export(struct xccdf_benchmark *benchmark, const char *file);
707 
712 void xccdf_result_fill_sysinfo(struct xccdf_result *result);
713 
720 int xccdf_result_export(struct xccdf_result *result, const char *file);
721 
728 bool xccdf_benchmark_resolve(struct xccdf_benchmark *benchmark);
729 
733 void xccdf_benchmark_free(struct xccdf_benchmark *benchmark);
737 struct xccdf_benchmark * xccdf_benchmark_clone( const struct xccdf_benchmark * benchmark );
738 
744 const char * xccdf_benchmark_supported(void);
745 
747 struct xccdf_profile *xccdf_profile_new(void);
749 void xccdf_profile_free(struct xccdf_item *prof);
751 struct xccdf_item *xccdf_profile_to_item(struct xccdf_profile *item);
753 struct xccdf_profile * xccdf_profile_clone( const struct xccdf_profile * profile);
754 
756 struct xccdf_rule *xccdf_rule_new(void);
758 void xccdf_rule_free(struct xccdf_item *rule);
760 struct xccdf_item *xccdf_rule_to_item(struct xccdf_rule *item);
762 struct xccdf_rule * xccdf_rule_clone(const struct xccdf_rule * rule);
763 
765 struct xccdf_group *xccdf_group_new(void);
767 void xccdf_group_free(struct xccdf_item *group);
769 struct xccdf_item *xccdf_group_to_item(struct xccdf_group *item);
771 struct xccdf_group * xccdf_group_clone(const struct xccdf_group * group);
772 
776 void xccdf_value_free(struct xccdf_item *val);
778 struct xccdf_item *xccdf_value_to_item(struct xccdf_value *item);
780 struct xccdf_value * xccdf_value_clone(const struct xccdf_value * value);
781 
783 struct xccdf_status *xccdf_status_new(void);
785 struct xccdf_status * xccdf_status_clone(const struct xccdf_status * old_status);
787 struct xccdf_status *xccdf_status_new_fill(const char *status, const char *date);
789 void xccdf_status_free(struct xccdf_status *status);
791 struct xccdf_notice *xccdf_notice_new(void);
793 void xccdf_notice_free(struct xccdf_notice *notice);
795 struct xccdf_notice * xccdf_notice_clone(const struct xccdf_notice * notice);
796 
798 struct xccdf_model *xccdf_model_new(void);
800 struct xccdf_model * xccdf_model_clone(const struct xccdf_model * old_model);
802 void xccdf_model_free(struct xccdf_model *model);
803 
805 struct xccdf_ident *xccdf_ident_new(void);
807 struct xccdf_ident *xccdf_ident_new_fill(const char *id, const char *sys);
809 struct xccdf_ident *xccdf_ident_clone(const struct xccdf_ident * ident);
811 void xccdf_ident_free(struct xccdf_ident *ident);
812 
813 
815 struct xccdf_check *xccdf_check_new(void);
817 void xccdf_check_free(struct xccdf_check *check);
818 
820 struct xccdf_check *xccdf_check_clone(const struct xccdf_check *old_check);
822 struct xccdf_check_import *xccdf_check_import_clone(const struct xccdf_check_import *old_import);
824 struct xccdf_check_export *xccdf_check_export_clone(const struct xccdf_check_export *old_export);
827 
832 
837 
842 
847 
849 struct xccdf_fix *xccdf_fix_new(void);
851 struct xccdf_fix *xccdf_fix_clone(const struct xccdf_fix *old_fix);
853 void xccdf_fix_free(struct xccdf_fix *item);
854 
856 struct xccdf_fixtext *xccdf_fixtext_new(void);
858 struct xccdf_fixtext * xccdf_fixtext_clone(const struct xccdf_fixtext * fixtext);
860 void xccdf_fixtext_free(struct xccdf_fixtext *item);
861 
863 void xccdf_select_free(struct xccdf_select *sel);
865 struct xccdf_select *xccdf_select_clone(const struct xccdf_select * select);
867 struct xccdf_select *xccdf_select_new(void);
868 
870 struct xccdf_warning *xccdf_warning_new(void);
872 struct xccdf_warning *xccdf_warning_clone(const struct xccdf_warning *old_warning);
874 void xccdf_warning_free(struct xccdf_warning * warn);
875 
877 void xccdf_refine_rule_free(struct xccdf_refine_rule *obj);
878 
881 
882 void xccdf_setvalue_free(struct xccdf_setvalue *sv);
883 
888 void xccdf_cleanup(void);
889 
895 struct xccdf_group *xccdf_benchmark_append_new_group(struct xccdf_benchmark *, const char *id);
896 
903 
909 struct xccdf_rule *xccdf_benchmark_append_new_rule(struct xccdf_benchmark *, const char *id);
910 
914 struct xccdf_plain_text *xccdf_plain_text_new_fill(const char *id, const char *text);
916 void xccdf_plain_text_free(struct xccdf_plain_text *plain);
918 struct xccdf_plain_text *xccdf_plain_text_clone(const struct xccdf_plain_text * pt);
919 
921 struct xccdf_result *xccdf_result_new(void);
923 void xccdf_result_free(struct xccdf_result *item);
925 struct xccdf_item *xccdf_result_to_item(struct xccdf_result *item);
927 struct xccdf_result * xccdf_result_clone(const struct xccdf_result * result);
928 
932 struct xccdf_rule_result * xccdf_rule_result_clone(const struct xccdf_rule_result * result);
935 
937 struct xccdf_identity *xccdf_identity_new(void);
939 struct xccdf_identity * xccdf_identity_clone(const struct xccdf_identity * identity);
941 void xccdf_identity_free(struct xccdf_identity *identity);
942 
944 struct xccdf_score *xccdf_score_new(void);
946 struct xccdf_score * xccdf_score_clone(const struct xccdf_score * score);
948 void xccdf_score_free(struct xccdf_score *score);
949 
951 struct xccdf_override *xccdf_override_new(void);
953 struct xccdf_override * xccdf_override_clone(const struct xccdf_override * override);
955 void xccdf_override_free(struct xccdf_override *oride);
956 
958 struct xccdf_message *xccdf_message_new(void);
960 struct xccdf_message * xccdf_message_clone(const struct xccdf_message * message);
962 void xccdf_message_free(struct xccdf_message *msg);
963 
969 void xccdf_target_fact_free(struct xccdf_target_fact *fact);
970 
977 
979 struct xccdf_instance *xccdf_instance_new(void);
981 struct xccdf_instance * xccdf_instance_clone(const struct xccdf_instance * instance);
983 void xccdf_instance_free(struct xccdf_instance *inst);
984 
987 
988 /************************************************************/
1014 
1015 
1036 
1037 
1058 
1059 
1080 
1081 
1102 
1103 
1124 
1125 
1146 
1147 
1168 
1169 
1190 
1191 
1212 
1213 
1234 
1235 
1256 
1257 
1278 
1279 
1300 
1301 
1322 
1323 
1344 
1345 
1366 
1367 
1388 
1389 
1405 
1406 
1427 
1428 
1449 
1450 
1471 
1472 
1493 
1494 
1515 
1516 
1537 
1538 
1559 
1560 
1581 
1602 
1603 
1624 
1625 
1646 
1647 /************************************************************
1648  ** @} End of Iterators group */
1649 
1650 /************************************************************/
1661 xccdf_type_t xccdf_item_get_type(const struct xccdf_item *item);
1665 const char *xccdf_item_get_id(const struct xccdf_item *item);
1669 struct oscap_text_iterator *xccdf_item_get_title(const struct xccdf_item *item);
1673 struct oscap_text_iterator *xccdf_item_get_description(const struct xccdf_item *item);
1677 const char *xccdf_item_get_version(const struct xccdf_item *item);
1681 const char *xccdf_item_get_extends(const struct xccdf_item *item);
1685 struct xccdf_status_iterator *xccdf_item_get_statuses(const struct xccdf_item *item);
1689 struct oscap_reference_iterator *xccdf_item_get_dc_statuses(const struct xccdf_item *item);
1693 struct oscap_reference_iterator *xccdf_item_get_references(const struct xccdf_item *item);
1697 struct oscap_string_iterator *xccdf_item_get_conflicts(const struct xccdf_item* item);
1701 struct oscap_stringlist_iterator *xccdf_item_get_requires(const struct xccdf_item* item);
1705 struct xccdf_status * xccdf_item_get_current_status(const struct xccdf_item *item);
1709 bool xccdf_item_get_hidden(const struct xccdf_item *item);
1713 bool xccdf_item_get_selected(const struct xccdf_item *item);
1717 bool xccdf_item_get_prohibit_changes(const struct xccdf_item *item);
1721 bool xccdf_item_get_abstract(const struct xccdf_item *item);
1725 struct xccdf_item_iterator *xccdf_item_get_content(const struct xccdf_item *item);
1729 const char * xccdf_test_result_type_get_text(xccdf_test_result_type_t id);
1733 struct xccdf_rule_result * xccdf_result_get_rule_result_by_id(struct xccdf_result * result, const char * id);
1734 
1740 struct xccdf_item *xccdf_item_get_parent(const struct xccdf_item *item);
1741 
1751 const struct xccdf_version_info* xccdf_item_get_schema_version(struct xccdf_item* item);
1752 
1756 struct oscap_string_iterator *xccdf_item_get_metadata(const struct xccdf_item *item);
1757 
1761 const char *xccdf_benchmark_get_id(const struct xccdf_benchmark *benchmark);
1765 bool xccdf_benchmark_get_resolved(const struct xccdf_benchmark *benchmark);
1769 struct oscap_text_iterator *xccdf_benchmark_get_title(const struct xccdf_benchmark *benchmark);
1773 struct oscap_text_iterator *xccdf_benchmark_get_description(const struct xccdf_benchmark *benchmark);
1777 const char *xccdf_benchmark_get_version(const struct xccdf_benchmark *benchmark);
1781 const struct xccdf_version_info* xccdf_benchmark_get_schema_version(const struct xccdf_benchmark* item);
1785 const char *xccdf_benchmark_get_style(const struct xccdf_benchmark *benchmark);
1789 const char *xccdf_benchmark_get_style_href(const struct xccdf_benchmark *benchmark);
1793 struct oscap_text_iterator *xccdf_benchmark_get_front_matter(const struct xccdf_benchmark *benchmark);
1797 struct oscap_text_iterator *xccdf_benchmark_get_rear_matter(const struct xccdf_benchmark *benchmark);
1801 struct xccdf_status_iterator *xccdf_benchmark_get_statuses(const struct xccdf_benchmark *benchmark);
1805 struct oscap_reference_iterator *xccdf_benchmark_get_dc_statuses(const struct xccdf_benchmark *benchmark);
1809 struct oscap_reference_iterator *xccdf_benchmark_get_references(const struct xccdf_benchmark *benchmark);
1813 struct oscap_string_iterator *xccdf_benchmark_get_platforms(const struct xccdf_benchmark *benchmark);
1817 struct xccdf_status * xccdf_benchmark_get_status_current(const struct xccdf_benchmark *benchmark);
1821 struct xccdf_plain_text_iterator *xccdf_benchmark_get_plain_texts(const struct xccdf_benchmark *item);
1825 struct xccdf_result_iterator* xccdf_benchmark_get_results(const struct xccdf_benchmark *bench);
1829 struct xccdf_value_iterator *xccdf_benchmark_get_values(const struct xccdf_benchmark *item);
1831 bool xccdf_benchmark_set_lang(struct xccdf_benchmark *item, const char *newval);
1833 const char *xccdf_benchmark_get_lang(const struct xccdf_benchmark *item);
1834 
1842 const char *xccdf_benchmark_get_plain_text(const struct xccdf_benchmark *benchmark, const char *id);
1843 
1851 struct xccdf_item *xccdf_benchmark_get_item(const struct xccdf_benchmark *benchmark, const char *id);
1852 
1860 struct xccdf_item *xccdf_benchmark_get_member(const struct xccdf_benchmark *benchmark, xccdf_type_t type, const char *key);
1861 
1867 struct xccdf_notice_iterator *xccdf_benchmark_get_notices(const struct xccdf_benchmark *benchmark);
1868 
1874 struct xccdf_model_iterator *xccdf_benchmark_get_models(const struct xccdf_benchmark *benchmark);
1875 
1882 
1890 struct xccdf_item_iterator *xccdf_benchmark_get_content(const struct xccdf_benchmark *benchmark);
1891 
1895 struct oscap_string_iterator *xccdf_benchmark_get_metadata(const struct xccdf_benchmark *benchmark);
1896 
1900 struct cpe_dict_model *xccdf_benchmark_get_cpe_list(const struct xccdf_benchmark *benchmark);
1901 
1905 struct cpe_lang_model *xccdf_benchmark_get_cpe_lang_model(const struct xccdf_benchmark *benchmark);
1906 
1910 const char *xccdf_profile_get_id(const struct xccdf_profile *profile);
1914 struct oscap_text_iterator *xccdf_profile_get_title(const struct xccdf_profile *profile);
1918 struct oscap_text_iterator *xccdf_profile_get_description(const struct xccdf_profile *profile);
1922 const char *xccdf_profile_get_version(const struct xccdf_profile *profile);
1926 const char *xccdf_profile_get_extends(const struct xccdf_profile *profile);
1930 struct xccdf_benchmark *xccdf_profile_get_benchmark(const struct xccdf_profile *profile);
1934 bool xccdf_profile_get_abstract(const struct xccdf_profile *profile);
1938 bool xccdf_profile_get_prohibit_changes(const struct xccdf_profile *profile);
1942 struct oscap_string_iterator *xccdf_profile_get_platforms(const struct xccdf_profile *profile);
1946 struct xccdf_status_iterator *xccdf_profile_get_statuses(const struct xccdf_profile *profile);
1950 struct oscap_reference_iterator *xccdf_profile_get_dc_statuses(const struct xccdf_profile *profile);
1954 struct oscap_reference_iterator *xccdf_profile_get_references(const struct xccdf_profile *profile);
1958 struct xccdf_status * xccdf_profile_get_status_current(const struct xccdf_profile *profile);
1962 struct xccdf_select_iterator *xccdf_profile_get_selects(const struct xccdf_profile *profile);
1966 struct xccdf_setvalue_iterator *xccdf_profile_get_setvalues(const struct xccdf_profile *profile);
1970 struct xccdf_refine_value_iterator *xccdf_profile_get_refine_values(const struct xccdf_profile *profile);
1974 struct xccdf_refine_rule_iterator *xccdf_profile_get_refine_rules(const struct xccdf_profile *profile);
1978 struct oscap_string_iterator *xccdf_profile_get_metadata(const struct xccdf_profile *profile);
1979 
1985 struct xccdf_item *xccdf_rule_get_parent(const struct xccdf_rule *rule);
1986 
1990 const char *xccdf_rule_get_id(const struct xccdf_rule *rule);
1994 struct oscap_text_iterator *xccdf_rule_get_title(const struct xccdf_rule *rule);
1998 struct oscap_text_iterator *xccdf_rule_get_description(const struct xccdf_rule *rule);
2002 const char *xccdf_rule_get_version(const struct xccdf_rule *rule);
2006 struct oscap_text_iterator *xccdf_rule_get_question(const struct xccdf_rule *rule);
2010 struct xccdf_warning_iterator *xccdf_rule_get_warnings(const struct xccdf_rule *rule);
2014 struct oscap_text_iterator *xccdf_rule_get_rationale(const struct xccdf_rule *rule);
2018 const char *xccdf_rule_get_cluster_id(const struct xccdf_rule *rule);
2022 float xccdf_rule_get_weight(const struct xccdf_rule *rule);
2026 bool xccdf_rule_set_weight(struct xccdf_rule *item, xccdf_numeric newval);
2030 const char *xccdf_rule_get_extends(const struct xccdf_rule *rule);
2034 bool xccdf_rule_get_abstract(const struct xccdf_rule *rule);
2038 bool xccdf_rule_get_prohibit_changes(const struct xccdf_rule *rule);
2042 bool xccdf_rule_get_hidden(const struct xccdf_rule *rule);
2046 bool xccdf_rule_get_selected(const struct xccdf_rule *rule);
2050 bool xccdf_rule_get_multiple(const struct xccdf_rule *rule);
2054 struct oscap_string_iterator *xccdf_rule_get_platforms(const struct xccdf_rule *rule);
2058 struct xccdf_status_iterator *xccdf_rule_get_statuses(const struct xccdf_rule *rule);
2062 struct oscap_reference_iterator *xccdf_rule_get_dc_statuses(const struct xccdf_rule *rule);
2066 struct oscap_reference_iterator *xccdf_rule_get_references(const struct xccdf_rule *rule);
2070 struct xccdf_status * xccdf_rule_get_status_current(const struct xccdf_rule *rule);
2074 const char *xccdf_rule_get_impact_metric(const struct xccdf_rule *rule);
2078 xccdf_role_t xccdf_rule_get_role(const struct xccdf_rule *rule);
2082 xccdf_level_t xccdf_rule_get_severity(const struct xccdf_rule *rule);
2086 struct xccdf_ident_iterator *xccdf_rule_get_idents(const struct xccdf_rule *rule);
2090 struct xccdf_check_iterator *xccdf_rule_get_checks(const struct xccdf_rule *rule);
2094 struct xccdf_profile_note_iterator *xccdf_rule_get_profile_notes(const struct xccdf_rule *rule);
2098 struct xccdf_fix_iterator *xccdf_rule_get_fixes(const struct xccdf_rule *rule);
2102 struct xccdf_fixtext_iterator *xccdf_rule_get_fixtexts(const struct xccdf_rule *rule);
2106 struct oscap_string_iterator *xccdf_rule_get_conflicts(const struct xccdf_rule* rule);
2110 struct oscap_stringlist_iterator *xccdf_rule_get_requires(const struct xccdf_rule* rule);
2114 struct oscap_string_iterator *xccdf_rule_get_metadata(const struct xccdf_rule *rule);
2115 
2116 /*
2117  * Return group's parent in the grouping hierarchy.
2118  * Returned item will be either a group or a benchmark.
2119  * @memberof xccdf_group
2120  */
2121 struct xccdf_item *xccdf_group_get_parent(const struct xccdf_group *group);
2122 
2130 struct xccdf_item_iterator *xccdf_group_get_content(const struct xccdf_group *group);
2131 
2133 struct xccdf_value_iterator *xccdf_group_get_values(const struct xccdf_group *group);
2134 
2136 const char *xccdf_group_get_id(const struct xccdf_group *group);
2138 struct oscap_text_iterator *xccdf_group_get_title(const struct xccdf_group *group);
2140 struct oscap_text_iterator *xccdf_group_get_description(const struct xccdf_group *group);
2142 const char *xccdf_group_get_version(const struct xccdf_group *group);
2144 struct oscap_text_iterator *xccdf_group_get_question(const struct xccdf_group *group);
2146 struct xccdf_warning_iterator *xccdf_group_get_warnings(const struct xccdf_group *group);
2148 struct oscap_text_iterator *xccdf_group_get_rationale(const struct xccdf_group *group);
2150 const char *xccdf_group_get_cluster_id(const struct xccdf_group *group);
2152 float xccdf_group_get_weight(const struct xccdf_group *group);
2154 bool xccdf_group_set_weight(struct xccdf_group *item, xccdf_numeric newval);
2156 const char *xccdf_group_get_extends(const struct xccdf_group *group);
2158 bool xccdf_group_get_abstract(const struct xccdf_group *group);
2160 bool xccdf_group_get_prohibit_changes(const struct xccdf_group *group);
2162 bool xccdf_group_get_hidden(const struct xccdf_group *group);
2164 bool xccdf_group_get_selected(const struct xccdf_group *group);
2166 struct oscap_string_iterator *xccdf_group_get_platforms(const struct xccdf_group *group);
2168 struct xccdf_status_iterator *xccdf_group_get_statuses(const struct xccdf_group *group);
2170 struct oscap_reference_iterator *xccdf_group_get_dc_statuses(const struct xccdf_group *group);
2172 struct oscap_reference_iterator *xccdf_group_get_references(const struct xccdf_group *group);
2174 struct xccdf_status * xccdf_group_get_status_current(const struct xccdf_group *group);
2176 struct oscap_string_iterator *xccdf_group_get_conflicts(const struct xccdf_group* group);
2180 struct oscap_string_iterator *xccdf_group_get_metadata(const struct xccdf_group *group);
2181 
2183 struct oscap_text_iterator *xccdf_value_get_title(const struct xccdf_value *value);
2185 const char *xccdf_value_get_id(const struct xccdf_value *value);
2187 struct oscap_text_iterator *xccdf_value_get_description(const struct xccdf_value *value);
2189 const char *xccdf_value_get_extends(const struct xccdf_value *value);
2191 bool xccdf_value_get_abstract(const struct xccdf_value *value);
2193 bool xccdf_value_get_prohibit_changes(const struct xccdf_value *value);
2195 bool xccdf_value_get_hidden(const struct xccdf_value *value);
2197 bool xccdf_value_get_interactive(const struct xccdf_value *value);
2199 struct xccdf_status_iterator *xccdf_value_get_statuses(const struct xccdf_value *value);
2201 struct oscap_reference_iterator *xccdf_value_get_dc_statuses(const struct xccdf_value *value);
2203 struct oscap_reference_iterator *xccdf_value_get_references(const struct xccdf_value *value);
2205 struct xccdf_status * xccdf_value_get_status_current(const struct xccdf_value *value);
2213 struct xccdf_value_instance *xccdf_value_get_instance_by_selector(const struct xccdf_value *value, const char *selector);
2215 bool xccdf_value_add_instance(struct xccdf_value *value, struct xccdf_value_instance *instance);
2219 struct oscap_string_iterator *xccdf_value_get_metadata(const struct xccdf_value *value);
2220 
2226 const char *xccdf_value_instance_get_selector(const struct xccdf_value_instance *item);
2228 bool xccdf_value_instance_set_selector(struct xccdf_value_instance *obj, const char *newval);
2234 bool xccdf_value_instance_set_must_match(struct xccdf_value_instance *obj, bool newval);
2238 bool xccdf_value_instance_set_value_boolean(struct xccdf_value_instance *inst, bool newval);
2244 const char *xccdf_value_instance_get_value_string(const struct xccdf_value_instance *inst);
2246 bool xccdf_value_instance_set_value_string(struct xccdf_value_instance *inst, const char *newval);
2250 bool xccdf_value_instance_set_defval_boolean(struct xccdf_value_instance *inst, bool newval);
2256 const char *xccdf_value_instance_get_defval_string(const struct xccdf_value_instance *inst);
2258 bool xccdf_value_instance_set_defval_string(struct xccdf_value_instance *inst, const char *newval);
2268 const char *xccdf_value_instance_get_match(const struct xccdf_value_instance *inst);
2270 bool xccdf_value_instance_set_match(struct xccdf_value_instance *inst, const char *newval);
2272 const char * xccdf_value_instance_get_value(const struct xccdf_value_instance * val);
2273 
2279 struct xccdf_item *xccdf_value_get_parent(const struct xccdf_value *value);
2280 
2281 
2283 time_t xccdf_status_get_date(const struct xccdf_status *status);
2288 
2290 const char *xccdf_notice_get_id(const struct xccdf_notice *notice);
2292 struct oscap_text *xccdf_notice_get_text(const struct xccdf_notice *notice);
2294 const char *xccdf_model_get_system(const struct xccdf_model *model);
2296 const char *xccdf_ident_get_id(const struct xccdf_ident *ident);
2298 const char *xccdf_ident_get_system(const struct xccdf_ident *ident);
2300 const char *xccdf_check_get_id(const struct xccdf_check *check);
2301 
2307 bool xccdf_check_get_complex(const struct xccdf_check *check);
2308 
2316 const char *xccdf_check_get_system(const struct xccdf_check *check);
2318 const char *xccdf_check_get_selector(const struct xccdf_check *check);
2320 const char *xccdf_check_get_content(const struct xccdf_check *check);
2322 bool xccdf_check_get_multicheck(const struct xccdf_check *check);
2324 bool xccdf_check_get_negate(const struct xccdf_check *check);
2326 //struct xccdf_rule *xccdf_check_get_parent(const struct xccdf_check *check);
2332 struct xccdf_check_iterator *xccdf_check_get_children(const struct xccdf_check *check);
2333 
2335 const char *xccdf_check_content_ref_get_href(const struct xccdf_check_content_ref *ref);
2337 const char *xccdf_check_content_ref_get_name(const struct xccdf_check_content_ref *ref);
2339 const char *xccdf_profile_note_get_reftag(const struct xccdf_profile_note *note);
2341 struct oscap_text *xccdf_profile_note_get_text(const struct xccdf_profile_note *note);
2343 const char *xccdf_check_import_get_name(const struct xccdf_check_import *item);
2345 const char *xccdf_check_import_get_xpath(const struct xccdf_check_import *item);
2347 const char *xccdf_check_import_get_content(const struct xccdf_check_import *item);
2349 const char *xccdf_check_export_get_value(const struct xccdf_check_export *item);
2351 const char *xccdf_check_export_get_name(const struct xccdf_check_export *item);
2352 
2354 const char *xccdf_fix_get_content(const struct xccdf_fix *fix);
2356 bool xccdf_fix_get_reboot(const struct xccdf_fix *fix);
2364 const char *xccdf_fix_get_id(const struct xccdf_fix *fix);
2366 const char *xccdf_fix_get_system(const struct xccdf_fix *fix);
2368 const char *xccdf_fix_get_platform(const struct xccdf_fix *fix);
2370 bool xccdf_fixtext_get_reboot(const struct xccdf_fixtext *fixtext);
2378 const char *xccdf_fixtext_get_fixref(const struct xccdf_fixtext *fixtext);
2380 struct oscap_text *xccdf_fixtext_get_text(const struct xccdf_fixtext *fixtext);
2382 const char *xccdf_value_get_version(const struct xccdf_value *value);
2384 struct oscap_text_iterator *xccdf_value_get_question(const struct xccdf_value *value);
2386 struct xccdf_warning_iterator *xccdf_value_get_warnings(const struct xccdf_value *value);
2388 const char *xccdf_value_get_version_update(const struct xccdf_value *value);
2390 const char *xccdf_value_get_version_time(const struct xccdf_value *value);
2392 struct xccdf_benchmark *xccdf_value_get_benchmark(const struct xccdf_value *value);
2394 struct oscap_string_iterator *xccdf_value_get_sources(const struct xccdf_value *value);
2396 const char *xccdf_value_get_cluster_id(const struct xccdf_value *value);
2397 
2399 struct oscap_text_iterator *xccdf_item_get_question(const struct xccdf_item *item);
2401 struct xccdf_warning_iterator *xccdf_item_get_warnings(const struct xccdf_item *item);
2403 struct oscap_text_iterator *xccdf_item_get_rationale(const struct xccdf_item *item);
2405 const char *xccdf_item_get_cluster_id(const struct xccdf_item *item);
2407 const char *xccdf_item_get_version_update(const struct xccdf_item *item);
2409 const char *xccdf_item_get_version_time(const struct xccdf_item *item);
2411 float xccdf_item_get_weight(const struct xccdf_item *item);
2413 struct xccdf_benchmark *xccdf_item_get_benchmark(const struct xccdf_item *item);
2415 struct oscap_string_iterator *xccdf_item_get_platforms(const struct xccdf_item *item);
2416 
2420 const char *xccdf_benchmark_get_version_update(const struct xccdf_benchmark *benchmark);
2422 const char *xccdf_benchmark_get_version_time(const struct xccdf_benchmark *benchmark);
2423 
2425 const char *xccdf_profile_get_version_update(const struct xccdf_profile *profile);
2427 const char *xccdf_profile_get_version_time(const struct xccdf_profile *profile);
2429 const char *xccdf_profile_get_note_tag(const struct xccdf_profile *profile);
2430 
2432 const char *xccdf_rule_get_version_update(const struct xccdf_rule *rule);
2434 const char *xccdf_rule_get_version_time(const struct xccdf_rule *rule);
2436 struct xccdf_benchmark *xccdf_rule_get_benchmark(const struct xccdf_rule *rule);
2437 
2439 const char *xccdf_group_get_version_time(const struct xccdf_group *group);
2441 const char *xccdf_group_get_version_update(const struct xccdf_group *group);
2443 struct xccdf_benchmark *xccdf_group_get_benchmark(const struct xccdf_group *group);
2444 
2451 
2453 bool xccdf_select_get_selected(const struct xccdf_select *select);
2455 const char *xccdf_select_get_item(const struct xccdf_select *select);
2457 struct oscap_text_iterator *xccdf_select_get_remarks(const struct xccdf_select *select);
2458 
2462 struct oscap_text *xccdf_warning_get_text(const struct xccdf_warning *warning);
2464 const char * xccdf_refine_rule_get_item(const struct xccdf_refine_rule* rr);
2466 const char * xccdf_refine_rule_get_selector(const struct xccdf_refine_rule* rr);
2476 bool xccdf_refine_rule_weight_defined(const struct xccdf_refine_rule *item);
2478 const char * xccdf_refine_value_get_item(const struct xccdf_refine_value* rv);
2480 const char * xccdf_refine_value_get_selector(const struct xccdf_refine_value* rv);
2486 const char *xccdf_setvalue_get_item(const struct xccdf_setvalue* sv);
2488 const char *xccdf_setvalue_get_value(const struct xccdf_setvalue* sv);
2489 
2491 const char *xccdf_plain_text_get_id(const struct xccdf_plain_text *item);
2493 const char *xccdf_plain_text_get_text(const struct xccdf_plain_text *item);
2494 
2496 struct xccdf_benchmark *xccdf_result_get_benchmark(const struct xccdf_result *item);
2498 const char *xccdf_result_get_id(const struct xccdf_result *item);
2500 struct oscap_text_iterator *xccdf_result_get_title(const struct xccdf_result *item);
2502 const char *xccdf_result_get_version(const struct xccdf_result *item);
2508 const char *xccdf_result_get_test_system(const struct xccdf_result *item);
2510 const char *xccdf_result_get_benchmark_uri(const struct xccdf_result *item);
2512 const char *xccdf_result_get_profile(const struct xccdf_result *item);
2516 struct oscap_string_iterator *xccdf_result_get_targets(const struct xccdf_result *item);
2522 struct oscap_text_iterator *xccdf_result_get_remarks(const struct xccdf_result *item);
2532 struct xccdf_score_iterator *xccdf_result_get_scores(const struct xccdf_result *item);
2534 const char * xccdf_result_get_start_time(const struct xccdf_result *item);
2536 const char * xccdf_result_get_end_time(const struct xccdf_result *item);
2538 struct oscap_string_iterator *xccdf_result_get_metadata(const struct xccdf_result *result);
2539 
2541 const char * xccdf_rule_result_get_time(const struct xccdf_rule_result *item);
2545 float xccdf_rule_result_get_weight(const struct xccdf_rule_result *item);
2551 const char *xccdf_rule_result_get_version(const struct xccdf_rule_result *item);
2553 const char *xccdf_rule_result_get_idref(const struct xccdf_rule_result *item);
2567 bool xccdf_identity_get_authenticated(const struct xccdf_identity *item);
2569 bool xccdf_identity_get_privileged(const struct xccdf_identity *item);
2571 const char *xccdf_identity_get_name(const struct xccdf_identity *item);
2575 xccdf_numeric xccdf_score_get_score(const struct xccdf_score *item);
2577 const char *xccdf_score_get_system(const struct xccdf_score *item);
2579 const char *xccdf_override_get_time(const struct xccdf_override *item);
2585 const char *xccdf_override_get_authority(const struct xccdf_override *item);
2587 struct oscap_text *xccdf_override_get_remark(const struct xccdf_override *item);
2591 const char *xccdf_message_get_content(const struct xccdf_message *item);
2595 const char *xccdf_target_fact_get_value(const struct xccdf_target_fact *item);
2597 const char *xccdf_target_fact_get_name(const struct xccdf_target_fact *item);
2601 const char *xccdf_target_identifier_get_system(const struct xccdf_target_identifier *item);
2603 const char *xccdf_target_identifier_get_href(const struct xccdf_target_identifier *item);
2605 const char *xccdf_target_identifier_get_name(const struct xccdf_target_identifier *item);
2607 const char *xccdf_instance_get_context(const struct xccdf_instance *item);
2609 const char *xccdf_instance_get_parent_context(const struct xccdf_instance *item);
2611 const char *xccdf_instance_get_content(const struct xccdf_instance *item);
2612 
2613 
2614 /************************************************************
2615  ** @} End of Getters group */
2616 
2617 /************************************************************/
2625 
2626 bool xccdf_item_set_weight(struct xccdf_item *item, xccdf_numeric newval);
2628 bool xccdf_item_set_id(struct xccdf_item *item, const char *newval);
2630 bool xccdf_item_set_cluster_id(struct xccdf_item *item, const char *newval);
2632 bool xccdf_item_set_extends(struct xccdf_item *item, const char *newval);
2634 bool xccdf_item_set_version(struct xccdf_item *item, const char *newval);
2636 bool xccdf_item_set_version_time(struct xccdf_item *item, const char *newval);
2638 bool xccdf_item_set_version_update(struct xccdf_item *item, const char *newval);
2640 bool xccdf_item_set_abstract(struct xccdf_item *item, bool newval);
2642 bool xccdf_item_set_hidden(struct xccdf_item *item, bool newval);
2644 bool xccdf_item_set_prohibit_changes(struct xccdf_item *item, bool newval);
2646 bool xccdf_item_set_selected(struct xccdf_item *item, bool newval);
2647 
2649 bool xccdf_item_add_metadata(struct xccdf_item *item, const char* metadata);
2650 
2652 bool xccdf_benchmark_set_resolved(struct xccdf_benchmark *item, bool newval);
2653 
2655 bool xccdf_benchmark_set_style_href(struct xccdf_benchmark *item, const char *newval);
2657 bool xccdf_benchmark_set_style(struct xccdf_benchmark *item, const char *newval);
2659 bool xccdf_benchmark_set_id(struct xccdf_benchmark *item, const char *newval);
2661 bool xccdf_benchmark_set_version(struct xccdf_benchmark *item, const char *newval);
2663 bool xccdf_benchmark_set_version_time(struct xccdf_benchmark *item, const char *newval);
2665 bool xccdf_benchmark_set_version_update(struct xccdf_benchmark *item, const char *newval);
2667 bool xccdf_benchmark_set_schema_version(struct xccdf_benchmark* item, const struct xccdf_version_info* newval);
2669 bool xccdf_benchmark_add_metadata(struct xccdf_benchmark* item, const char* metadata);
2671 bool xccdf_benchmark_set_cpe_list(struct xccdf_benchmark* item, struct cpe_dict_model* cpe_list);
2675 bool xccdf_profile_set_note_tag(struct xccdf_profile *item, const char *newval);
2677 bool xccdf_profile_set_id(struct xccdf_profile *item, const char *newval);
2679 bool xccdf_profile_set_abstract(struct xccdf_profile *item, bool newval);
2681 bool xccdf_profile_set_prohibit_changes(struct xccdf_profile *item, bool newval);
2683 bool xccdf_profile_set_extends(struct xccdf_profile *item, const char *newval);
2685 bool xccdf_profile_set_version(struct xccdf_profile *item, const char *newval);
2687 bool xccdf_profile_set_version_time(struct xccdf_profile *item, const char *newval);
2689 bool xccdf_profile_set_version_update(struct xccdf_profile *item, const char *newval);
2691 bool xccdf_profile_add_metadata(struct xccdf_profile* item, const char* metadata);
2692 
2694 bool xccdf_rule_set_id(struct xccdf_rule *item, const char *newval);
2696 bool xccdf_rule_set_cluster_id(struct xccdf_rule *item, const char *newval);
2698 bool xccdf_rule_set_extends(struct xccdf_rule *item, const char *newval);
2700 bool xccdf_rule_set_version(struct xccdf_rule *item, const char *newval);
2702 bool xccdf_rule_set_version_time(struct xccdf_rule *item, const char *newval);
2704 bool xccdf_rule_set_version_update(struct xccdf_rule *item, const char *newval);
2706 bool xccdf_rule_set_abstract(struct xccdf_rule *item, bool newval);
2708 bool xccdf_rule_set_hidden(struct xccdf_rule *item, bool newval);
2710 bool xccdf_rule_set_prohibit_changes(struct xccdf_rule *item, bool newval);
2712 bool xccdf_rule_set_selected(struct xccdf_rule *item, bool newval);
2714 bool xccdf_rule_set_multiple(struct xccdf_rule *item, bool newval);
2716 //bool xccdf_rule_set_selector(struct xccdf_rule *item, const char * selector);
2718 bool xccdf_rule_set_impact_metric(struct xccdf_rule *item, const char *newval);
2720 bool xccdf_rule_set_role(struct xccdf_rule *item, xccdf_role_t newval);
2722 bool xccdf_rule_set_severity(struct xccdf_rule *item, xccdf_level_t newval);
2724 bool xccdf_rule_add_metadata(struct xccdf_rule* item, const char* metadata);
2725 
2727 bool xccdf_group_set_id(struct xccdf_group *item, const char *newval);
2729 bool xccdf_group_set_cluster_id(struct xccdf_group *item, const char *newval);
2731 bool xccdf_group_set_extends(struct xccdf_group *item, const char *newval);
2733 bool xccdf_group_set_version(struct xccdf_group *item, const char *newval);
2735 bool xccdf_group_set_version_time(struct xccdf_group *item, const char *newval);
2737 bool xccdf_group_set_version_update(struct xccdf_group *item, const char *newval);
2739 bool xccdf_group_set_abstract(struct xccdf_group *item, bool newval);
2741 bool xccdf_group_set_hidden(struct xccdf_group *item, bool newval);
2743 bool xccdf_group_set_prohibit_changes(struct xccdf_group *item, bool newval);
2745 bool xccdf_group_set_selected(struct xccdf_group *item, bool newval);
2747 bool xccdf_group_add_metadata(struct xccdf_group* item, const char* metadata);
2748 
2750 bool xccdf_value_set_id(struct xccdf_value *item, const char *newval);
2752 bool xccdf_value_set_cluster_id(struct xccdf_value *item, const char *newval);
2754 bool xccdf_value_set_extends(struct xccdf_value *item, const char *newval);
2756 bool xccdf_value_set_version(struct xccdf_value *item, const char *newval);
2758 bool xccdf_value_set_version_time(struct xccdf_value *item, const char *newval);
2760 bool xccdf_value_set_version_update(struct xccdf_value *item, const char *newval);
2762 bool xccdf_value_set_abstract(struct xccdf_value *item, bool newval);
2764 bool xccdf_value_set_hidden(struct xccdf_value *item, bool newval);
2766 bool xccdf_value_set_multiple(struct xccdf_value *item, bool newval);
2768 bool xccdf_value_set_prohibit_changes(struct xccdf_value *item, bool newval);
2770 bool xccdf_value_set_oper(struct xccdf_value * item, xccdf_operator_t oper);
2772 bool xccdf_value_set_interactive(struct xccdf_value *item, bool newval);
2774 bool xccdf_value_add_metadata(struct xccdf_value* item, const char* metadata);
2775 
2777 bool xccdf_status_set_date(struct xccdf_status *obj, time_t newval);
2779 bool xccdf_status_set_status(struct xccdf_status *obj, xccdf_status_type_t newval);
2780 
2782 bool xccdf_notice_set_id(struct xccdf_notice *obj, const char *newval);
2784 bool xccdf_notice_set_text(struct xccdf_notice *obj, struct oscap_text *newval);
2785 
2787 bool xccdf_model_set_system(struct xccdf_model *obj, const char *newval);
2788 
2790 bool xccdf_check_set_id(struct xccdf_check *obj, const char *newval);
2792 bool xccdf_check_set_system(struct xccdf_check *obj, const char *newval);
2794 bool xccdf_check_set_selector(struct xccdf_check *obj, const char *newval);
2796 bool xccdf_check_set_content(struct xccdf_check *obj, const char *newval);
2798 bool xccdf_check_set_oper(struct xccdf_check *obj, xccdf_bool_operator_t newval);
2800 bool xccdf_check_set_multicheck(struct xccdf_check *obj, bool newval);
2802 bool xccdf_check_set_negate(struct xccdf_check *obj, bool newval);
2803 
2805 bool xccdf_check_content_ref_set_name(struct xccdf_check_content_ref *obj, const char *newval);
2807 bool xccdf_check_content_ref_set_href(struct xccdf_check_content_ref *obj, const char *newval);
2808 
2810 bool xccdf_profile_note_set_reftag(struct xccdf_profile_note *obj, const char *newval);
2812 bool xccdf_profile_note_set_text(struct xccdf_profile_note *obj, struct oscap_text *newval);
2813 
2815 bool xccdf_check_import_set_name(struct xccdf_check_import *obj, const char *newval);
2817 bool xccdf_check_import_set_xpath(struct xccdf_check_import *obj, const char *newval);
2819 bool xccdf_check_import_set_content(struct xccdf_check_import *obj, const char *newval);
2820 
2822 bool xccdf_check_export_set_name(struct xccdf_check_export *obj, const char *newval);
2824 bool xccdf_check_export_set_value(struct xccdf_check_export *obj, const char *newval);
2825 
2827 bool xccdf_fix_set_strategy(struct xccdf_fix *obj, xccdf_strategy_t newval);
2829 bool xccdf_fix_set_disruption(struct xccdf_fix *obj, xccdf_level_t newval);
2831 bool xccdf_fix_set_complexity(struct xccdf_fix *obj, xccdf_level_t newval);
2833 bool xccdf_fix_set_reboot(struct xccdf_fix *obj, bool newval);
2835 bool xccdf_fix_set_content(struct xccdf_fix *obj, const char *newval);
2837 bool xccdf_fix_set_system(struct xccdf_fix *obj, const char *newval);
2839 bool xccdf_fix_set_platform(struct xccdf_fix *obj, const char *newval);
2841 bool xccdf_fix_set_id(struct xccdf_fix *obj, const char *newval);
2842 
2846 bool xccdf_fixtext_set_disruption(struct xccdf_fixtext *obj, xccdf_level_t newval);
2848 bool xccdf_fixtext_set_complexity(struct xccdf_fixtext *obj, xccdf_level_t newval);
2850 bool xccdf_fixtext_set_reboot(struct xccdf_fixtext *obj, bool newval);
2852 bool xccdf_fixtext_set_text(struct xccdf_fixtext *obj, struct oscap_text *newval);
2854 bool xccdf_fixtext_set_fixref(struct xccdf_fixtext *obj, const char *newval);
2855 
2857 bool xccdf_select_set_item(struct xccdf_select *obj, const char *newval);
2859 bool xccdf_select_set_selected(struct xccdf_select *obj, bool newval);
2860 
2864 bool xccdf_warning_set_text(struct xccdf_warning *obj, struct oscap_text *newval);
2867 
2869 struct xccdf_refine_rule * xccdf_refine_rule_clone(const struct xccdf_refine_rule * old_rule);
2871 bool xccdf_refine_rule_set_item(struct xccdf_refine_rule *obj, const char *newval);
2873 bool xccdf_refine_rule_set_selector(struct xccdf_refine_rule *obj, const char *newval);
2880 
2884 struct xccdf_refine_value * xccdf_refine_value_clone(const struct xccdf_refine_value * old_value);
2886 bool xccdf_refine_value_set_item(struct xccdf_refine_value *obj, const char *newval);
2888 bool xccdf_refine_value_set_selector(struct xccdf_refine_value *obj, const char *newval);
2891 
2893 struct xccdf_setvalue *xccdf_setvalue_new(void);
2895 struct xccdf_setvalue * xccdf_setvalue_clone(const struct xccdf_setvalue * old_value);
2897 bool xccdf_setvalue_set_item(struct xccdf_setvalue *obj, const char *newval);
2899 bool xccdf_setvalue_set_value(struct xccdf_setvalue *obj, const char *newval);
2901 bool xccdf_plain_text_set_id(struct xccdf_plain_text *obj, const char *newval);
2903 bool xccdf_plain_text_set_text(struct xccdf_plain_text *obj, const char *newval);
2904 
2906 bool xccdf_result_set_id(struct xccdf_result *item, const char *newval);
2908 bool xccdf_result_set_test_system(struct xccdf_result *item, const char *newval);
2910 bool xccdf_result_set_benchmark_uri(struct xccdf_result *item, const char *newval);
2912 bool xccdf_result_set_profile(struct xccdf_result *item, const char *newval);
2914 bool xccdf_result_set_start_time(struct xccdf_result *item, const char *newval);
2916 bool xccdf_result_set_end_time(struct xccdf_result *item, const char *newval);
2918 bool xccdf_result_set_version(struct xccdf_result *item, const char *newval);
2920 bool xccdf_result_add_metadata(struct xccdf_result *item, const char *metadata);
2921 
2923 bool xccdf_rule_result_set_time(struct xccdf_rule_result *obj, const char *newval);
2927 bool xccdf_rule_result_set_weight(struct xccdf_rule_result *obj, float newval);
2933 bool xccdf_rule_result_set_version(struct xccdf_rule_result *obj, const char *newval);
2935 bool xccdf_rule_result_set_idref(struct xccdf_rule_result *obj, const char *newval);
2936 
2938 bool xccdf_identity_set_authenticated(struct xccdf_identity *obj, bool newval);
2940 bool xccdf_identity_set_privileged(struct xccdf_identity *obj, bool newval);
2942 bool xccdf_identity_set_name(struct xccdf_identity *obj, const char *newval);
2943 
2945 bool xccdf_score_set_maximum(struct xccdf_score *obj, xccdf_numeric newval);
2947 bool xccdf_score_set_score(struct xccdf_score *obj, xccdf_numeric newval);
2949 bool xccdf_score_set_system(struct xccdf_score *obj, const char *newval);
2950 
2952 bool xccdf_override_set_time(struct xccdf_override *obj, const char *newval);
2958 bool xccdf_override_set_authority(struct xccdf_override *obj, const char *newval);
2960 bool xccdf_override_set_remark(struct xccdf_override *obj, struct oscap_text *newval);
2961 
2965 bool xccdf_message_set_content(struct xccdf_message *obj, const char *newval);
2966 
2968 bool xccdf_target_fact_set_string(struct xccdf_target_fact *fact, const char *str);
2972 bool xccdf_target_fact_set_boolean(struct xccdf_target_fact *fact, bool val);
2974 bool xccdf_target_fact_set_name(struct xccdf_target_fact *obj, const char *newval);
2975 
2979 bool xccdf_target_identifier_set_system(struct xccdf_target_identifier *ti, const char *newval);
2981 bool xccdf_target_identifier_set_href(struct xccdf_target_identifier *ti, const char *newval);
2983 bool xccdf_target_identifier_set_name(struct xccdf_target_identifier *ti, const char *newval);
2984 
2986 bool xccdf_instance_set_context(struct xccdf_instance *obj, const char *newval);
2988 bool xccdf_instance_set_parent_context(struct xccdf_instance *obj, const char *newval);
2990 bool xccdf_instance_set_content(struct xccdf_instance *obj, const char *newval);
2991 
2992 // @memberof xccdf_ident
2993 void xccdf_ident_set_id(struct xccdf_ident * ident, const char *id);
2994 // @memberof xccdf_ident
2995 void xccdf_ident_set_system(struct xccdf_ident * ident, const char *sys);
2996 
2998 bool xccdf_benchmark_add_result(struct xccdf_benchmark *bench, struct xccdf_result *result);
2999 
3001 bool xccdf_benchmark_add_description(struct xccdf_benchmark *item, struct oscap_text *newval);
3003 bool xccdf_benchmark_add_platform(struct xccdf_benchmark *item, const char *newval);
3005 bool xccdf_benchmark_add_reference(struct xccdf_benchmark *item, struct oscap_reference *newval);
3007 bool xccdf_benchmark_add_status(struct xccdf_benchmark *item, struct xccdf_status *newval);
3009 bool xccdf_benchmark_add_dc_status(struct xccdf_benchmark *item, struct oscap_reference *newval);
3011 bool xccdf_benchmark_add_title(struct xccdf_benchmark *item, struct oscap_text *newval);
3013 bool xccdf_benchmark_add_front_matter(struct xccdf_benchmark *item, struct oscap_text *newval);
3015 //bool xccdf_benchmark_add_item(struct xccdf_benchmark *item, struct xccdf_item *newval);
3017 bool xccdf_benchmark_add_model(struct xccdf_benchmark *item, struct xccdf_model *newval);
3019 bool xccdf_benchmark_add_notice(struct xccdf_benchmark *item, struct xccdf_notice *newval);
3021 bool xccdf_benchmark_add_plain_text(struct xccdf_benchmark *item, struct xccdf_plain_text *newval);
3023 bool xccdf_benchmark_add_profile(struct xccdf_benchmark *item, struct xccdf_profile *newval);
3025 bool xccdf_benchmark_add_rear_matter(struct xccdf_benchmark *item, struct oscap_text *newval);
3027 bool xccdf_benchmark_add_rule(struct xccdf_benchmark *benchmark, struct xccdf_rule *rule);
3029 bool xccdf_benchmark_add_group(struct xccdf_benchmark *benchmark, struct xccdf_group *group);
3031 bool xccdf_benchmark_add_value(struct xccdf_benchmark *benchmark, struct xccdf_value *value);
3033 bool xccdf_benchmark_add_content(struct xccdf_benchmark *bench, struct xccdf_item *item);
3034 
3036 bool xccdf_profile_add_select(struct xccdf_profile *item, struct xccdf_select *newval);
3038 bool xccdf_profile_add_setvalue(struct xccdf_profile *item, struct xccdf_setvalue *newval);
3040 bool xccdf_profile_add_refine_value(struct xccdf_profile *item, struct xccdf_refine_value *newval);
3042 bool xccdf_profile_add_refine_rule(struct xccdf_profile *item, struct xccdf_refine_rule *newval);
3043 
3045 bool xccdf_profile_add_description(struct xccdf_profile *item, struct oscap_text *newval);
3047 bool xccdf_profile_add_platform(struct xccdf_profile *item, const char *newval);
3049 bool xccdf_profile_add_reference(struct xccdf_profile *item, struct oscap_reference *newval);
3051 bool xccdf_profile_add_status(struct xccdf_profile *item, struct xccdf_status *newval);
3053 bool xccdf_profile_add_dc_status(struct xccdf_profile *item, struct oscap_reference *newval);
3055 bool xccdf_profile_add_title(struct xccdf_profile *item, struct oscap_text *newval);
3056 
3058 bool xccdf_rule_add_description(struct xccdf_rule *item, struct oscap_text *newval);
3060 bool xccdf_rule_add_platform(struct xccdf_rule *item, const char *newval);
3062 bool xccdf_rule_add_question(struct xccdf_rule *item, struct oscap_text *newval);
3064 bool xccdf_rule_add_rationale(struct xccdf_rule *item, struct oscap_text *newval);
3066 bool xccdf_rule_add_reference(struct xccdf_rule *item, struct oscap_reference *newval);
3068 bool xccdf_rule_add_status(struct xccdf_rule *item, struct xccdf_status *newval);
3070 bool xccdf_rule_add_dc_status(struct xccdf_rule *item, struct oscap_reference *newval);
3072 bool xccdf_rule_add_title(struct xccdf_rule *item, struct oscap_text *newval);
3074 bool xccdf_rule_add_warning(struct xccdf_rule *item, struct xccdf_warning *newval);
3076 bool xccdf_rule_add_ident(struct xccdf_rule *item, struct xccdf_ident *newval);
3078 bool xccdf_rule_add_check(struct xccdf_rule *item, struct xccdf_check *newval);
3080 bool xccdf_rule_add_profile_note(struct xccdf_rule *item, struct xccdf_profile_note *newval);
3082 bool xccdf_rule_add_fix(struct xccdf_rule *item, struct xccdf_fix *newval);
3084 bool xccdf_rule_add_fixtext(struct xccdf_rule *item, struct xccdf_fixtext *newval);
3085 
3087 bool xccdf_group_add_description(struct xccdf_group *item, struct oscap_text *newval);
3089 bool xccdf_group_add_platform(struct xccdf_group *item, const char *newval);
3091 bool xccdf_group_add_question(struct xccdf_group *item, struct oscap_text *newval);
3093 bool xccdf_group_add_rationale(struct xccdf_group *item, struct oscap_text *newval);
3095 bool xccdf_group_add_reference(struct xccdf_group *item, struct oscap_reference *newval);
3097 bool xccdf_group_add_status(struct xccdf_group *item, struct xccdf_status *newval);
3099 bool xccdf_group_add_dc_status(struct xccdf_group *item, struct oscap_reference *newval);
3101 bool xccdf_group_add_title(struct xccdf_group *item, struct oscap_text *newval);
3103 bool xccdf_group_add_warning(struct xccdf_group *item, struct xccdf_warning *newval);
3105 bool xccdf_group_add_rule(struct xccdf_group *group, struct xccdf_rule *item);
3107 bool xccdf_group_add_group(struct xccdf_group *group, struct xccdf_group *item);
3109 bool xccdf_group_add_value(struct xccdf_group *group, struct xccdf_value *item);
3111 bool xccdf_group_add_content(struct xccdf_group *rule, struct xccdf_item *item);
3112 
3114 bool xccdf_value_add_description(struct xccdf_value *item, struct oscap_text *newval);
3116 bool xccdf_value_add_question(struct xccdf_value *item, struct oscap_text *newval);
3118 bool xccdf_value_add_reference(struct xccdf_value *item, struct oscap_reference *newval);
3120 bool xccdf_value_add_status(struct xccdf_value *item, struct xccdf_status *newval);
3122 bool xccdf_value_add_dc_status(struct xccdf_value *item, struct oscap_reference *newval);
3124 bool xccdf_value_add_title(struct xccdf_value *item, struct oscap_text *newval);
3126 bool xccdf_value_add_warning(struct xccdf_value *item, struct xccdf_warning *newval);
3127 
3129 bool xccdf_check_add_import(struct xccdf_check *obj, struct xccdf_check_import *item);
3131 bool xccdf_check_add_export(struct xccdf_check *obj, struct xccdf_check_export *item);
3133 bool xccdf_check_add_content_ref(struct xccdf_check *obj, struct xccdf_check_content_ref *item);
3135 bool xccdf_check_add_child(struct xccdf_check *obj, struct xccdf_check *item);
3137 bool xccdf_select_add_remark(struct xccdf_select *obj, struct oscap_text *item);
3139 bool xccdf_refine_value_add_remark(struct xccdf_refine_value *obj, struct oscap_text *item);
3141 bool xccdf_result_add_rule_result(struct xccdf_result *item, struct xccdf_rule_result *newval);
3143 bool xccdf_result_add_setvalue(struct xccdf_result *item, struct xccdf_setvalue *newval);
3145 bool xccdf_result_add_target_fact(struct xccdf_result *item, struct xccdf_target_fact *newval);
3149 bool xccdf_result_add_remark(struct xccdf_result *item, struct oscap_text *newval);
3151 bool xccdf_result_add_organization(struct xccdf_result *item, const char *newval);
3153 bool xccdf_result_add_target(struct xccdf_result *item, const char *newval);
3155 bool xccdf_result_add_identity(struct xccdf_result *item, struct xccdf_identity *newval);
3157 bool xccdf_result_add_score(struct xccdf_result *item, struct xccdf_score *newval);
3159 bool xccdf_result_add_title(struct xccdf_result *item, struct oscap_text *newval);
3161 bool xccdf_result_add_target_address(struct xccdf_result *item, const char *newval);
3163 bool xccdf_rule_result_add_ident(struct xccdf_rule_result *obj, struct xccdf_ident *item);
3165 bool xccdf_rule_result_add_fix(struct xccdf_rule_result *obj, struct xccdf_fix *item);
3167 bool xccdf_rule_result_add_check(struct xccdf_rule_result *obj, struct xccdf_check *item);
3169 bool xccdf_rule_result_add_override(struct xccdf_rule_result *obj, struct xccdf_override *item);
3171 bool xccdf_rule_result_add_message(struct xccdf_rule_result *obj, struct xccdf_message *item);
3173 bool xccdf_rule_result_add_instance(struct xccdf_rule_result *obj, struct xccdf_instance *item);
3175 bool xccdf_item_add_description(struct xccdf_item *item, struct oscap_text *newval);
3177 bool xccdf_item_add_platform(struct xccdf_item *item, const char *newval);
3179 bool xccdf_item_add_question(struct xccdf_item *item, struct oscap_text *newval);
3181 bool xccdf_item_add_rationale(struct xccdf_item *item, struct oscap_text *newval);
3183 bool xccdf_item_add_reference(struct xccdf_item *item, struct oscap_reference *newval);
3185 bool xccdf_item_add_dc_status(struct xccdf_item *item, struct oscap_reference *newval);
3187 bool xccdf_item_add_status(struct xccdf_item *item, struct xccdf_status *newval);
3189 bool xccdf_item_add_title(struct xccdf_item *item, struct oscap_text *newval);
3191 bool xccdf_item_add_warning(struct xccdf_item *item, struct xccdf_warning *newval);
3193 bool xccdf_refine_rule_add_remark(struct xccdf_refine_rule *obj, struct oscap_text *item);
3194 
3196 bool xccdf_rule_add_requires(struct xccdf_rule *rule, struct oscap_stringlist *requires);
3198 bool xccdf_group_add_requires(struct xccdf_group *group, struct oscap_stringlist *requires);
3200 bool xccdf_item_add_requires(struct xccdf_item *item, struct oscap_stringlist *requires);
3202 bool xccdf_rule_add_conflicts(struct xccdf_rule *rule, const char *conflicts);
3204 bool xccdf_group_add_conflicts(struct xccdf_group *group, const char *conflicts);
3206 bool xccdf_item_add_conflicts(struct xccdf_item *item, const char *conflicts);
3207 
3208 /************************************************************
3209  ** @} End of Setters group */
3210 
3211 // remove operations
3212 
3273 
3274 
3275 // reset iterators
3298 
3299 
3300 // textual substitution interface
3301 
3303 typedef enum xccdf_subst_type {
3304  XCCDF_SUBST_NONE,
3309 
3318 typedef char*(*xccdf_substitution_func)(xccdf_subst_type_t type, const char *id, void *arg);
3319 
3320 
3329 char* oscap_text_xccdf_substitute(const char *text, xccdf_substitution_func cb, void *arg);
3330 
3331 /************************************************************/
3333 
3334 
3335 #endif