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 
235 struct xccdf_tailoring;
236 
237 /*--------------------*\
238 | Support structures |
239 \*--------------------*/
240 
245 struct xccdf_notice;
246 
251 struct xccdf_status;
252 
257 struct xccdf_model;
258 
263 struct xccdf_warning;
264 
269 struct xccdf_select;
270 
275 struct xccdf_setvalue;
276 
281 struct xccdf_refine_value;
282 
287 struct xccdf_refine_rule;
288 
293 struct xccdf_ident;
294 
299 struct xccdf_check;
305 
310 struct xccdf_profile_note;
311 
317 struct xccdf_check_import;
318 
324 struct xccdf_check_export;
325 
331 struct xccdf_fix;
332 
338 struct xccdf_fixtext;
339 
347 struct xccdf_value_instance;
348 
354 struct xccdf_identity;
355 
361 struct xccdf_instance;
362 
368 struct xccdf_message;
369 
375 struct xccdf_override;
376 
382 struct xccdf_rule_result;
383 
389 struct xccdf_score;
390 
396 struct xccdf_target_fact;
397 
405 
412 
419 
426 
433 
440 
447 
454 
461 
468 
475 
482 
488 
495 
502 
509 
516 
523 
530 
537 
544 
551 
558 
565 
572 
579 
586 
593 
600 
607 
614 
621 
625 struct xccdf_version_info;
626 
628 const char* xccdf_version_info_get_version(const struct xccdf_version_info* v);
630 const char* xccdf_version_info_get_namespace_uri(const struct xccdf_version_info* v);
632 const char* xccdf_version_info_get_cpe_version(const struct xccdf_version_info* v);
633 
640 char * xccdf_detect_version(const char* file);
641 
642 /************************************************************/
643 
645 void xccdf_item_free(struct xccdf_item *item);
646 
648 struct xccdf_item * xccdf_item_clone(const struct xccdf_item * old_item);
649 
657 
664 struct xccdf_profile* xccdf_item_to_profile(struct xccdf_item* item);
665 
672 struct xccdf_rule* xccdf_item_to_rule(struct xccdf_item* item);
673 
680 struct xccdf_group* xccdf_item_to_group(struct xccdf_item* item);
681 
688 struct xccdf_value* xccdf_item_to_value(struct xccdf_item* item);
689 
696 struct xccdf_result* xccdf_item_to_result(struct xccdf_item* item);
697 
705 struct xccdf_benchmark* xccdf_benchmark_import(const char *file);
706 
713 int xccdf_benchmark_export(struct xccdf_benchmark *benchmark, const char *file);
714 
719 void xccdf_result_fill_sysinfo(struct xccdf_result *result);
720 
727 int xccdf_result_export(struct xccdf_result *result, const char *file);
728 
735 bool xccdf_benchmark_resolve(struct xccdf_benchmark *benchmark);
736 
740 void xccdf_benchmark_free(struct xccdf_benchmark *benchmark);
744 struct xccdf_benchmark * xccdf_benchmark_clone( const struct xccdf_benchmark * benchmark );
745 
751 const char * xccdf_benchmark_supported(void);
752 
754 struct xccdf_profile *xccdf_profile_new(void);
756 void xccdf_profile_free(struct xccdf_item *prof);
758 struct xccdf_item *xccdf_profile_to_item(struct xccdf_profile *item);
760 struct xccdf_profile * xccdf_profile_clone( const struct xccdf_profile * profile);
761 
763 struct xccdf_rule *xccdf_rule_new(void);
765 void xccdf_rule_free(struct xccdf_item *rule);
767 struct xccdf_item *xccdf_rule_to_item(struct xccdf_rule *item);
769 struct xccdf_rule * xccdf_rule_clone(const struct xccdf_rule * rule);
770 
772 struct xccdf_group *xccdf_group_new(void);
774 void xccdf_group_free(struct xccdf_item *group);
776 struct xccdf_item *xccdf_group_to_item(struct xccdf_group *item);
778 struct xccdf_group * xccdf_group_clone(const struct xccdf_group * group);
779 
783 void xccdf_value_free(struct xccdf_item *val);
785 struct xccdf_item *xccdf_value_to_item(struct xccdf_value *item);
787 struct xccdf_value * xccdf_value_clone(const struct xccdf_value * value);
788 
790 struct xccdf_status *xccdf_status_new(void);
792 struct xccdf_status * xccdf_status_clone(const struct xccdf_status * old_status);
794 struct xccdf_status *xccdf_status_new_fill(const char *status, const char *date);
796 void xccdf_status_free(struct xccdf_status *status);
798 struct xccdf_notice *xccdf_notice_new(void);
800 void xccdf_notice_free(struct xccdf_notice *notice);
802 struct xccdf_notice * xccdf_notice_clone(const struct xccdf_notice * notice);
803 
805 struct xccdf_model *xccdf_model_new(void);
807 struct xccdf_model * xccdf_model_clone(const struct xccdf_model * old_model);
809 void xccdf_model_free(struct xccdf_model *model);
810 
812 struct xccdf_ident *xccdf_ident_new(void);
814 struct xccdf_ident *xccdf_ident_new_fill(const char *id, const char *sys);
816 struct xccdf_ident *xccdf_ident_clone(const struct xccdf_ident * ident);
818 void xccdf_ident_free(struct xccdf_ident *ident);
819 
820 
822 struct xccdf_check *xccdf_check_new(void);
824 void xccdf_check_free(struct xccdf_check *check);
825 
827 struct xccdf_check *xccdf_check_clone(const struct xccdf_check *old_check);
829 struct xccdf_check_import *xccdf_check_import_clone(const struct xccdf_check_import *old_import);
831 struct xccdf_check_export *xccdf_check_export_clone(const struct xccdf_check_export *old_export);
834 
839 
844 
849 
854 
856 struct xccdf_fix *xccdf_fix_new(void);
858 struct xccdf_fix *xccdf_fix_clone(const struct xccdf_fix *old_fix);
860 void xccdf_fix_free(struct xccdf_fix *item);
861 
863 struct xccdf_fixtext *xccdf_fixtext_new(void);
865 struct xccdf_fixtext * xccdf_fixtext_clone(const struct xccdf_fixtext * fixtext);
867 void xccdf_fixtext_free(struct xccdf_fixtext *item);
868 
870 void xccdf_select_free(struct xccdf_select *sel);
872 struct xccdf_select *xccdf_select_clone(const struct xccdf_select * select);
874 struct xccdf_select *xccdf_select_new(void);
875 
877 struct xccdf_warning *xccdf_warning_new(void);
879 struct xccdf_warning *xccdf_warning_clone(const struct xccdf_warning *old_warning);
881 void xccdf_warning_free(struct xccdf_warning * warn);
882 
884 void xccdf_refine_rule_free(struct xccdf_refine_rule *obj);
885 
888 
889 void xccdf_setvalue_free(struct xccdf_setvalue *sv);
890 
895 OSCAP_DEPRECATED(void xccdf_cleanup(void));
896 
902 struct xccdf_group *xccdf_benchmark_append_new_group(struct xccdf_benchmark *, const char *id);
903 
910 
916 struct xccdf_rule *xccdf_benchmark_append_new_rule(struct xccdf_benchmark *, const char *id);
917 
921 struct xccdf_plain_text *xccdf_plain_text_new_fill(const char *id, const char *text);
923 void xccdf_plain_text_free(struct xccdf_plain_text *plain);
925 struct xccdf_plain_text *xccdf_plain_text_clone(const struct xccdf_plain_text * pt);
926 
928 struct xccdf_result *xccdf_result_new(void);
930 void xccdf_result_free(struct xccdf_result *item);
932 struct xccdf_item *xccdf_result_to_item(struct xccdf_result *item);
934 struct xccdf_result * xccdf_result_clone(const struct xccdf_result * result);
935 
939 struct xccdf_rule_result * xccdf_rule_result_clone(const struct xccdf_rule_result * result);
942 
944 struct xccdf_identity *xccdf_identity_new(void);
946 struct xccdf_identity * xccdf_identity_clone(const struct xccdf_identity * identity);
948 void xccdf_identity_free(struct xccdf_identity *identity);
949 
951 struct xccdf_score *xccdf_score_new(void);
953 struct xccdf_score * xccdf_score_clone(const struct xccdf_score * score);
955 void xccdf_score_free(struct xccdf_score *score);
956 
958 struct xccdf_override *xccdf_override_new(void);
960 struct xccdf_override * xccdf_override_clone(const struct xccdf_override * override);
962 void xccdf_override_free(struct xccdf_override *oride);
963 
965 struct xccdf_message *xccdf_message_new(void);
967 struct xccdf_message * xccdf_message_clone(const struct xccdf_message * message);
969 void xccdf_message_free(struct xccdf_message *msg);
970 
976 void xccdf_target_fact_free(struct xccdf_target_fact *fact);
977 
984 
986 struct xccdf_instance *xccdf_instance_new(void);
988 struct xccdf_instance * xccdf_instance_clone(const struct xccdf_instance * instance);
990 void xccdf_instance_free(struct xccdf_instance *inst);
991 
994 
995 /************************************************************/
1021 
1022 
1043 
1044 
1065 
1066 
1087 
1088 
1109 
1110 
1131 
1132 
1153 
1154 
1175 
1176 
1197 
1198 
1219 
1220 
1241 
1242 
1263 
1264 
1285 
1286 
1307 
1308 
1329 
1330 
1351 
1352 
1373 
1374 
1395 
1396 
1412 
1413 
1434 
1435 
1456 
1457 
1478 
1479 
1500 
1501 
1522 
1523 
1544 
1545 
1566 
1567 
1588 
1609 
1610 
1631 
1632 
1653 
1654 /************************************************************
1655  ** @} End of Iterators group */
1656 
1657 /************************************************************/
1668 xccdf_type_t xccdf_item_get_type(const struct xccdf_item *item);
1672 const char *xccdf_item_get_id(const struct xccdf_item *item);
1676 struct oscap_text_iterator *xccdf_item_get_title(const struct xccdf_item *item);
1680 struct oscap_text_iterator *xccdf_item_get_description(const struct xccdf_item *item);
1684 const char *xccdf_item_get_version(const struct xccdf_item *item);
1688 const char *xccdf_item_get_extends(const struct xccdf_item *item);
1692 struct xccdf_status_iterator *xccdf_item_get_statuses(const struct xccdf_item *item);
1696 struct oscap_reference_iterator *xccdf_item_get_dc_statuses(const struct xccdf_item *item);
1700 struct oscap_reference_iterator *xccdf_item_get_references(const struct xccdf_item *item);
1704 struct oscap_string_iterator *xccdf_item_get_conflicts(const struct xccdf_item* item);
1708 struct oscap_stringlist_iterator *xccdf_item_get_requires(const struct xccdf_item* item);
1712 struct xccdf_status * xccdf_item_get_current_status(const struct xccdf_item *item);
1716 bool xccdf_item_get_hidden(const struct xccdf_item *item);
1720 bool xccdf_item_get_selected(const struct xccdf_item *item);
1724 bool xccdf_item_get_prohibit_changes(const struct xccdf_item *item);
1728 bool xccdf_item_get_abstract(const struct xccdf_item *item);
1732 struct xccdf_item_iterator *xccdf_item_get_content(const struct xccdf_item *item);
1736 const char * xccdf_test_result_type_get_text(xccdf_test_result_type_t id);
1740 struct xccdf_rule_result * xccdf_result_get_rule_result_by_id(struct xccdf_result * result, const char * id);
1741 
1747 struct xccdf_item *xccdf_item_get_parent(const struct xccdf_item *item);
1748 
1758 const struct xccdf_version_info* xccdf_item_get_schema_version(struct xccdf_item* item);
1759 
1763 struct oscap_string_iterator *xccdf_item_get_metadata(const struct xccdf_item *item);
1764 
1768 const char *xccdf_benchmark_get_id(const struct xccdf_benchmark *benchmark);
1772 bool xccdf_benchmark_get_resolved(const struct xccdf_benchmark *benchmark);
1776 struct oscap_text_iterator *xccdf_benchmark_get_title(const struct xccdf_benchmark *benchmark);
1780 struct oscap_text_iterator *xccdf_benchmark_get_description(const struct xccdf_benchmark *benchmark);
1784 const char *xccdf_benchmark_get_version(const struct xccdf_benchmark *benchmark);
1788 const struct xccdf_version_info* xccdf_benchmark_get_schema_version(const struct xccdf_benchmark* item);
1792 const char *xccdf_benchmark_get_style(const struct xccdf_benchmark *benchmark);
1796 const char *xccdf_benchmark_get_style_href(const struct xccdf_benchmark *benchmark);
1800 struct oscap_text_iterator *xccdf_benchmark_get_front_matter(const struct xccdf_benchmark *benchmark);
1804 struct oscap_text_iterator *xccdf_benchmark_get_rear_matter(const struct xccdf_benchmark *benchmark);
1808 struct xccdf_status_iterator *xccdf_benchmark_get_statuses(const struct xccdf_benchmark *benchmark);
1812 struct oscap_reference_iterator *xccdf_benchmark_get_dc_statuses(const struct xccdf_benchmark *benchmark);
1816 struct oscap_reference_iterator *xccdf_benchmark_get_references(const struct xccdf_benchmark *benchmark);
1820 struct oscap_string_iterator *xccdf_benchmark_get_platforms(const struct xccdf_benchmark *benchmark);
1824 struct xccdf_status * xccdf_benchmark_get_status_current(const struct xccdf_benchmark *benchmark);
1828 struct xccdf_plain_text_iterator *xccdf_benchmark_get_plain_texts(const struct xccdf_benchmark *item);
1832 struct xccdf_result_iterator* xccdf_benchmark_get_results(const struct xccdf_benchmark *bench);
1836 struct xccdf_value_iterator *xccdf_benchmark_get_values(const struct xccdf_benchmark *item);
1838 bool xccdf_benchmark_set_lang(struct xccdf_benchmark *item, const char *newval);
1840 const char *xccdf_benchmark_get_lang(const struct xccdf_benchmark *item);
1841 
1849 const char *xccdf_benchmark_get_plain_text(const struct xccdf_benchmark *benchmark, const char *id);
1850 
1858 struct xccdf_item *xccdf_benchmark_get_item(const struct xccdf_benchmark *benchmark, const char *id);
1859 
1867 struct xccdf_item *xccdf_benchmark_get_member(const struct xccdf_benchmark *benchmark, xccdf_type_t type, const char *key);
1868 
1874 struct xccdf_notice_iterator *xccdf_benchmark_get_notices(const struct xccdf_benchmark *benchmark);
1875 
1881 struct xccdf_model_iterator *xccdf_benchmark_get_models(const struct xccdf_benchmark *benchmark);
1882 
1889 
1897 struct xccdf_item_iterator *xccdf_benchmark_get_content(const struct xccdf_benchmark *benchmark);
1898 
1902 struct oscap_string_iterator *xccdf_benchmark_get_metadata(const struct xccdf_benchmark *benchmark);
1903 
1907 struct cpe_dict_model *xccdf_benchmark_get_cpe_list(const struct xccdf_benchmark *benchmark);
1908 
1912 struct cpe_lang_model *xccdf_benchmark_get_cpe_lang_model(const struct xccdf_benchmark *benchmark);
1913 
1917 const char *xccdf_profile_get_id(const struct xccdf_profile *profile);
1921 struct oscap_text_iterator *xccdf_profile_get_title(const struct xccdf_profile *profile);
1925 struct oscap_text_iterator *xccdf_profile_get_description(const struct xccdf_profile *profile);
1929 const char *xccdf_profile_get_version(const struct xccdf_profile *profile);
1933 const char *xccdf_profile_get_extends(const struct xccdf_profile *profile);
1937 struct xccdf_benchmark *xccdf_profile_get_benchmark(const struct xccdf_profile *profile);
1941 bool xccdf_profile_get_abstract(const struct xccdf_profile *profile);
1945 bool xccdf_profile_get_prohibit_changes(const struct xccdf_profile *profile);
1949 struct oscap_string_iterator *xccdf_profile_get_platforms(const struct xccdf_profile *profile);
1953 struct xccdf_status_iterator *xccdf_profile_get_statuses(const struct xccdf_profile *profile);
1957 struct oscap_reference_iterator *xccdf_profile_get_dc_statuses(const struct xccdf_profile *profile);
1961 struct oscap_reference_iterator *xccdf_profile_get_references(const struct xccdf_profile *profile);
1965 struct xccdf_status * xccdf_profile_get_status_current(const struct xccdf_profile *profile);
1969 struct xccdf_select_iterator *xccdf_profile_get_selects(const struct xccdf_profile *profile);
1973 struct xccdf_setvalue_iterator *xccdf_profile_get_setvalues(const struct xccdf_profile *profile);
1977 struct xccdf_refine_value_iterator *xccdf_profile_get_refine_values(const struct xccdf_profile *profile);
1981 struct xccdf_refine_rule_iterator *xccdf_profile_get_refine_rules(const struct xccdf_profile *profile);
1985 struct oscap_string_iterator *xccdf_profile_get_metadata(const struct xccdf_profile *profile);
1986 
1992 struct xccdf_item *xccdf_rule_get_parent(const struct xccdf_rule *rule);
1993 
1997 const char *xccdf_rule_get_id(const struct xccdf_rule *rule);
2001 struct oscap_text_iterator *xccdf_rule_get_title(const struct xccdf_rule *rule);
2005 struct oscap_text_iterator *xccdf_rule_get_description(const struct xccdf_rule *rule);
2009 const char *xccdf_rule_get_version(const struct xccdf_rule *rule);
2013 struct oscap_text_iterator *xccdf_rule_get_question(const struct xccdf_rule *rule);
2017 struct xccdf_warning_iterator *xccdf_rule_get_warnings(const struct xccdf_rule *rule);
2021 struct oscap_text_iterator *xccdf_rule_get_rationale(const struct xccdf_rule *rule);
2025 const char *xccdf_rule_get_cluster_id(const struct xccdf_rule *rule);
2029 float xccdf_rule_get_weight(const struct xccdf_rule *rule);
2033 bool xccdf_rule_set_weight(struct xccdf_rule *item, xccdf_numeric newval);
2037 const char *xccdf_rule_get_extends(const struct xccdf_rule *rule);
2041 bool xccdf_rule_get_abstract(const struct xccdf_rule *rule);
2045 bool xccdf_rule_get_prohibit_changes(const struct xccdf_rule *rule);
2049 bool xccdf_rule_get_hidden(const struct xccdf_rule *rule);
2053 bool xccdf_rule_get_selected(const struct xccdf_rule *rule);
2057 bool xccdf_rule_get_multiple(const struct xccdf_rule *rule);
2061 struct oscap_string_iterator *xccdf_rule_get_platforms(const struct xccdf_rule *rule);
2065 struct xccdf_status_iterator *xccdf_rule_get_statuses(const struct xccdf_rule *rule);
2069 struct oscap_reference_iterator *xccdf_rule_get_dc_statuses(const struct xccdf_rule *rule);
2073 struct oscap_reference_iterator *xccdf_rule_get_references(const struct xccdf_rule *rule);
2077 struct xccdf_status * xccdf_rule_get_status_current(const struct xccdf_rule *rule);
2081 const char *xccdf_rule_get_impact_metric(const struct xccdf_rule *rule);
2085 xccdf_role_t xccdf_rule_get_role(const struct xccdf_rule *rule);
2089 xccdf_level_t xccdf_rule_get_severity(const struct xccdf_rule *rule);
2093 struct xccdf_ident_iterator *xccdf_rule_get_idents(const struct xccdf_rule *rule);
2097 struct xccdf_check_iterator *xccdf_rule_get_checks(const struct xccdf_rule *rule);
2101 struct xccdf_profile_note_iterator *xccdf_rule_get_profile_notes(const struct xccdf_rule *rule);
2105 struct xccdf_fix_iterator *xccdf_rule_get_fixes(const struct xccdf_rule *rule);
2109 struct xccdf_fixtext_iterator *xccdf_rule_get_fixtexts(const struct xccdf_rule *rule);
2113 struct oscap_string_iterator *xccdf_rule_get_conflicts(const struct xccdf_rule* rule);
2117 struct oscap_stringlist_iterator *xccdf_rule_get_requires(const struct xccdf_rule* rule);
2121 struct oscap_string_iterator *xccdf_rule_get_metadata(const struct xccdf_rule *rule);
2122 
2123 /*
2124  * Return group's parent in the grouping hierarchy.
2125  * Returned item will be either a group or a benchmark.
2126  * @memberof xccdf_group
2127  */
2128 struct xccdf_item *xccdf_group_get_parent(const struct xccdf_group *group);
2129 
2137 struct xccdf_item_iterator *xccdf_group_get_content(const struct xccdf_group *group);
2138 
2140 struct xccdf_value_iterator *xccdf_group_get_values(const struct xccdf_group *group);
2141 
2143 const char *xccdf_group_get_id(const struct xccdf_group *group);
2145 struct oscap_text_iterator *xccdf_group_get_title(const struct xccdf_group *group);
2147 struct oscap_text_iterator *xccdf_group_get_description(const struct xccdf_group *group);
2149 const char *xccdf_group_get_version(const struct xccdf_group *group);
2151 struct oscap_text_iterator *xccdf_group_get_question(const struct xccdf_group *group);
2153 struct xccdf_warning_iterator *xccdf_group_get_warnings(const struct xccdf_group *group);
2155 struct oscap_text_iterator *xccdf_group_get_rationale(const struct xccdf_group *group);
2157 const char *xccdf_group_get_cluster_id(const struct xccdf_group *group);
2159 float xccdf_group_get_weight(const struct xccdf_group *group);
2161 bool xccdf_group_set_weight(struct xccdf_group *item, xccdf_numeric newval);
2163 const char *xccdf_group_get_extends(const struct xccdf_group *group);
2165 bool xccdf_group_get_abstract(const struct xccdf_group *group);
2167 bool xccdf_group_get_prohibit_changes(const struct xccdf_group *group);
2169 bool xccdf_group_get_hidden(const struct xccdf_group *group);
2171 bool xccdf_group_get_selected(const struct xccdf_group *group);
2173 struct oscap_string_iterator *xccdf_group_get_platforms(const struct xccdf_group *group);
2175 struct xccdf_status_iterator *xccdf_group_get_statuses(const struct xccdf_group *group);
2177 struct oscap_reference_iterator *xccdf_group_get_dc_statuses(const struct xccdf_group *group);
2179 struct oscap_reference_iterator *xccdf_group_get_references(const struct xccdf_group *group);
2181 struct xccdf_status * xccdf_group_get_status_current(const struct xccdf_group *group);
2183 struct oscap_string_iterator *xccdf_group_get_conflicts(const struct xccdf_group* group);
2187 struct oscap_string_iterator *xccdf_group_get_metadata(const struct xccdf_group *group);
2188 
2190 struct oscap_text_iterator *xccdf_value_get_title(const struct xccdf_value *value);
2192 const char *xccdf_value_get_id(const struct xccdf_value *value);
2194 struct oscap_text_iterator *xccdf_value_get_description(const struct xccdf_value *value);
2196 const char *xccdf_value_get_extends(const struct xccdf_value *value);
2198 bool xccdf_value_get_abstract(const struct xccdf_value *value);
2200 bool xccdf_value_get_prohibit_changes(const struct xccdf_value *value);
2202 bool xccdf_value_get_hidden(const struct xccdf_value *value);
2204 bool xccdf_value_get_interactive(const struct xccdf_value *value);
2206 struct xccdf_status_iterator *xccdf_value_get_statuses(const struct xccdf_value *value);
2208 struct oscap_reference_iterator *xccdf_value_get_dc_statuses(const struct xccdf_value *value);
2210 struct oscap_reference_iterator *xccdf_value_get_references(const struct xccdf_value *value);
2212 struct xccdf_status * xccdf_value_get_status_current(const struct xccdf_value *value);
2220 struct xccdf_value_instance *xccdf_value_get_instance_by_selector(const struct xccdf_value *value, const char *selector);
2222 bool xccdf_value_add_instance(struct xccdf_value *value, struct xccdf_value_instance *instance);
2226 struct oscap_string_iterator *xccdf_value_get_metadata(const struct xccdf_value *value);
2227 
2233 const char *xccdf_value_instance_get_selector(const struct xccdf_value_instance *item);
2235 bool xccdf_value_instance_set_selector(struct xccdf_value_instance *obj, const char *newval);
2241 bool xccdf_value_instance_set_must_match(struct xccdf_value_instance *obj, bool newval);
2245 bool xccdf_value_instance_set_value_boolean(struct xccdf_value_instance *inst, bool newval);
2251 const char *xccdf_value_instance_get_value_string(const struct xccdf_value_instance *inst);
2253 bool xccdf_value_instance_set_value_string(struct xccdf_value_instance *inst, const char *newval);
2257 bool xccdf_value_instance_set_defval_boolean(struct xccdf_value_instance *inst, bool newval);
2263 const char *xccdf_value_instance_get_defval_string(const struct xccdf_value_instance *inst);
2265 bool xccdf_value_instance_set_defval_string(struct xccdf_value_instance *inst, const char *newval);
2275 const char *xccdf_value_instance_get_match(const struct xccdf_value_instance *inst);
2277 bool xccdf_value_instance_set_match(struct xccdf_value_instance *inst, const char *newval);
2279 const char * xccdf_value_instance_get_value(const struct xccdf_value_instance * val);
2280 
2286 struct xccdf_item *xccdf_value_get_parent(const struct xccdf_value *value);
2287 
2288 
2290 time_t xccdf_status_get_date(const struct xccdf_status *status);
2295 
2297 const char *xccdf_notice_get_id(const struct xccdf_notice *notice);
2299 struct oscap_text *xccdf_notice_get_text(const struct xccdf_notice *notice);
2301 const char *xccdf_model_get_system(const struct xccdf_model *model);
2303 const char *xccdf_ident_get_id(const struct xccdf_ident *ident);
2305 const char *xccdf_ident_get_system(const struct xccdf_ident *ident);
2307 const char *xccdf_check_get_id(const struct xccdf_check *check);
2308 
2314 bool xccdf_check_get_complex(const struct xccdf_check *check);
2315 
2323 const char *xccdf_check_get_system(const struct xccdf_check *check);
2325 const char *xccdf_check_get_selector(const struct xccdf_check *check);
2327 const char *xccdf_check_get_content(const struct xccdf_check *check);
2329 bool xccdf_check_get_multicheck(const struct xccdf_check *check);
2331 bool xccdf_check_get_negate(const struct xccdf_check *check);
2333 //struct xccdf_rule *xccdf_check_get_parent(const struct xccdf_check *check);
2339 struct xccdf_check_iterator *xccdf_check_get_children(const struct xccdf_check *check);
2340 
2342 const char *xccdf_check_content_ref_get_href(const struct xccdf_check_content_ref *ref);
2344 const char *xccdf_check_content_ref_get_name(const struct xccdf_check_content_ref *ref);
2346 const char *xccdf_profile_note_get_reftag(const struct xccdf_profile_note *note);
2348 struct oscap_text *xccdf_profile_note_get_text(const struct xccdf_profile_note *note);
2350 const char *xccdf_check_import_get_name(const struct xccdf_check_import *item);
2352 const char *xccdf_check_import_get_xpath(const struct xccdf_check_import *item);
2354 const char *xccdf_check_import_get_content(const struct xccdf_check_import *item);
2356 const char *xccdf_check_export_get_value(const struct xccdf_check_export *item);
2358 const char *xccdf_check_export_get_name(const struct xccdf_check_export *item);
2359 
2361 const char *xccdf_fix_get_content(const struct xccdf_fix *fix);
2363 bool xccdf_fix_get_reboot(const struct xccdf_fix *fix);
2371 const char *xccdf_fix_get_id(const struct xccdf_fix *fix);
2373 const char *xccdf_fix_get_system(const struct xccdf_fix *fix);
2375 const char *xccdf_fix_get_platform(const struct xccdf_fix *fix);
2377 bool xccdf_fixtext_get_reboot(const struct xccdf_fixtext *fixtext);
2385 const char *xccdf_fixtext_get_fixref(const struct xccdf_fixtext *fixtext);
2387 struct oscap_text *xccdf_fixtext_get_text(const struct xccdf_fixtext *fixtext);
2389 const char *xccdf_value_get_version(const struct xccdf_value *value);
2391 struct oscap_text_iterator *xccdf_value_get_question(const struct xccdf_value *value);
2393 struct xccdf_warning_iterator *xccdf_value_get_warnings(const struct xccdf_value *value);
2395 const char *xccdf_value_get_version_update(const struct xccdf_value *value);
2397 const char *xccdf_value_get_version_time(const struct xccdf_value *value);
2399 struct xccdf_benchmark *xccdf_value_get_benchmark(const struct xccdf_value *value);
2401 struct oscap_string_iterator *xccdf_value_get_sources(const struct xccdf_value *value);
2403 const char *xccdf_value_get_cluster_id(const struct xccdf_value *value);
2404 
2406 struct oscap_text_iterator *xccdf_item_get_question(const struct xccdf_item *item);
2408 struct xccdf_warning_iterator *xccdf_item_get_warnings(const struct xccdf_item *item);
2410 struct oscap_text_iterator *xccdf_item_get_rationale(const struct xccdf_item *item);
2412 const char *xccdf_item_get_cluster_id(const struct xccdf_item *item);
2414 const char *xccdf_item_get_version_update(const struct xccdf_item *item);
2416 const char *xccdf_item_get_version_time(const struct xccdf_item *item);
2418 float xccdf_item_get_weight(const struct xccdf_item *item);
2420 struct xccdf_benchmark *xccdf_item_get_benchmark(const struct xccdf_item *item);
2422 struct oscap_string_iterator *xccdf_item_get_platforms(const struct xccdf_item *item);
2423 
2427 const char *xccdf_benchmark_get_version_update(const struct xccdf_benchmark *benchmark);
2429 const char *xccdf_benchmark_get_version_time(const struct xccdf_benchmark *benchmark);
2430 
2432 const char *xccdf_profile_get_version_update(const struct xccdf_profile *profile);
2434 const char *xccdf_profile_get_version_time(const struct xccdf_profile *profile);
2436 bool xccdf_profile_get_tailoring(const struct xccdf_profile *profile);
2438 const char *xccdf_profile_get_note_tag(const struct xccdf_profile *profile);
2439 
2441 const char *xccdf_rule_get_version_update(const struct xccdf_rule *rule);
2443 const char *xccdf_rule_get_version_time(const struct xccdf_rule *rule);
2445 struct xccdf_benchmark *xccdf_rule_get_benchmark(const struct xccdf_rule *rule);
2446 
2448 const char *xccdf_group_get_version_time(const struct xccdf_group *group);
2450 const char *xccdf_group_get_version_update(const struct xccdf_group *group);
2452 struct xccdf_benchmark *xccdf_group_get_benchmark(const struct xccdf_group *group);
2453 
2460 
2462 bool xccdf_select_get_selected(const struct xccdf_select *select);
2464 const char *xccdf_select_get_item(const struct xccdf_select *select);
2466 struct oscap_text_iterator *xccdf_select_get_remarks(const struct xccdf_select *select);
2467 
2471 struct oscap_text *xccdf_warning_get_text(const struct xccdf_warning *warning);
2473 const char * xccdf_refine_rule_get_item(const struct xccdf_refine_rule* rr);
2475 const char * xccdf_refine_rule_get_selector(const struct xccdf_refine_rule* rr);
2485 bool xccdf_refine_rule_weight_defined(const struct xccdf_refine_rule *item);
2487 const char * xccdf_refine_value_get_item(const struct xccdf_refine_value* rv);
2489 const char * xccdf_refine_value_get_selector(const struct xccdf_refine_value* rv);
2495 const char *xccdf_setvalue_get_item(const struct xccdf_setvalue* sv);
2497 const char *xccdf_setvalue_get_value(const struct xccdf_setvalue* sv);
2498 
2500 const char *xccdf_plain_text_get_id(const struct xccdf_plain_text *item);
2502 const char *xccdf_plain_text_get_text(const struct xccdf_plain_text *item);
2503 
2505 struct xccdf_benchmark *xccdf_result_get_benchmark(const struct xccdf_result *item);
2507 const char *xccdf_result_get_id(const struct xccdf_result *item);
2509 struct oscap_text_iterator *xccdf_result_get_title(const struct xccdf_result *item);
2511 const char *xccdf_result_get_version(const struct xccdf_result *item);
2517 const char *xccdf_result_get_test_system(const struct xccdf_result *item);
2519 const char *xccdf_result_get_benchmark_uri(const struct xccdf_result *item);
2521 const char *xccdf_result_get_profile(const struct xccdf_result *item);
2525 struct oscap_string_iterator *xccdf_result_get_targets(const struct xccdf_result *item);
2531 struct oscap_text_iterator *xccdf_result_get_remarks(const struct xccdf_result *item);
2541 struct xccdf_score_iterator *xccdf_result_get_scores(const struct xccdf_result *item);
2543 const char * xccdf_result_get_start_time(const struct xccdf_result *item);
2545 const char * xccdf_result_get_end_time(const struct xccdf_result *item);
2547 struct oscap_string_iterator *xccdf_result_get_metadata(const struct xccdf_result *result);
2548 
2550 const char * xccdf_rule_result_get_time(const struct xccdf_rule_result *item);
2554 float xccdf_rule_result_get_weight(const struct xccdf_rule_result *item);
2560 const char *xccdf_rule_result_get_version(const struct xccdf_rule_result *item);
2562 const char *xccdf_rule_result_get_idref(const struct xccdf_rule_result *item);
2576 bool xccdf_identity_get_authenticated(const struct xccdf_identity *item);
2578 bool xccdf_identity_get_privileged(const struct xccdf_identity *item);
2580 const char *xccdf_identity_get_name(const struct xccdf_identity *item);
2584 xccdf_numeric xccdf_score_get_score(const struct xccdf_score *item);
2586 const char *xccdf_score_get_system(const struct xccdf_score *item);
2588 const char *xccdf_override_get_time(const struct xccdf_override *item);
2594 const char *xccdf_override_get_authority(const struct xccdf_override *item);
2596 struct oscap_text *xccdf_override_get_remark(const struct xccdf_override *item);
2600 const char *xccdf_message_get_content(const struct xccdf_message *item);
2604 const char *xccdf_target_fact_get_value(const struct xccdf_target_fact *item);
2606 const char *xccdf_target_fact_get_name(const struct xccdf_target_fact *item);
2610 const char *xccdf_target_identifier_get_system(const struct xccdf_target_identifier *item);
2612 const char *xccdf_target_identifier_get_href(const struct xccdf_target_identifier *item);
2614 const char *xccdf_target_identifier_get_name(const struct xccdf_target_identifier *item);
2616 const char *xccdf_instance_get_context(const struct xccdf_instance *item);
2618 const char *xccdf_instance_get_parent_context(const struct xccdf_instance *item);
2620 const char *xccdf_instance_get_content(const struct xccdf_instance *item);
2622 struct xccdf_tailoring *xccdf_tailoring_import(const char *file, struct xccdf_benchmark *benchmark);
2624 const char *xccdf_tailoring_get_version(const struct xccdf_tailoring *tailoring);
2626 const char *xccdf_tailoring_get_version_update(const struct xccdf_tailoring *tailoring);
2628 const char *xccdf_tailoring_get_version_time(const struct xccdf_tailoring *tailoring);
2630 struct oscap_string_iterator *xccdf_tailoring_get_metadata(const struct xccdf_tailoring *tailoring);
2634 struct xccdf_status_iterator *xccdf_tailoring_get_statuses(const struct xccdf_tailoring *tailoring);
2636 struct oscap_reference_iterator *xccdf_tailoring_get_dc_statuses(const struct xccdf_tailoring *tailoring);
2644 struct xccdf_profile *xccdf_tailoring_get_profile_by_id(const struct xccdf_tailoring *tailoring, const char *profile_id);
2645 
2646 /************************************************************
2647  ** @} End of Getters group */
2648 
2649 /************************************************************/
2657 
2658 bool xccdf_item_set_weight(struct xccdf_item *item, xccdf_numeric newval);
2660 bool xccdf_item_set_id(struct xccdf_item *item, const char *newval);
2662 bool xccdf_item_set_cluster_id(struct xccdf_item *item, const char *newval);
2664 bool xccdf_item_set_extends(struct xccdf_item *item, const char *newval);
2666 bool xccdf_item_set_version(struct xccdf_item *item, const char *newval);
2668 bool xccdf_item_set_version_time(struct xccdf_item *item, const char *newval);
2670 bool xccdf_item_set_version_update(struct xccdf_item *item, const char *newval);
2672 bool xccdf_item_set_abstract(struct xccdf_item *item, bool newval);
2674 bool xccdf_item_set_hidden(struct xccdf_item *item, bool newval);
2676 bool xccdf_item_set_prohibit_changes(struct xccdf_item *item, bool newval);
2678 bool xccdf_item_set_selected(struct xccdf_item *item, bool newval);
2679 
2681 bool xccdf_item_add_metadata(struct xccdf_item *item, const char* metadata);
2682 
2684 bool xccdf_benchmark_set_resolved(struct xccdf_benchmark *item, bool newval);
2685 
2687 bool xccdf_benchmark_set_style_href(struct xccdf_benchmark *item, const char *newval);
2689 bool xccdf_benchmark_set_style(struct xccdf_benchmark *item, const char *newval);
2691 bool xccdf_benchmark_set_id(struct xccdf_benchmark *item, const char *newval);
2693 bool xccdf_benchmark_set_version(struct xccdf_benchmark *item, const char *newval);
2695 bool xccdf_benchmark_set_version_time(struct xccdf_benchmark *item, const char *newval);
2697 bool xccdf_benchmark_set_version_update(struct xccdf_benchmark *item, const char *newval);
2699 bool xccdf_benchmark_set_schema_version(struct xccdf_benchmark* item, const struct xccdf_version_info* newval);
2701 bool xccdf_benchmark_add_metadata(struct xccdf_benchmark* item, const char* metadata);
2703 bool xccdf_benchmark_set_cpe_list(struct xccdf_benchmark* item, struct cpe_dict_model* cpe_list);
2707 bool xccdf_profile_set_note_tag(struct xccdf_profile *item, const char *newval);
2709 bool xccdf_profile_set_id(struct xccdf_profile *item, const char *newval);
2711 bool xccdf_profile_set_abstract(struct xccdf_profile *item, bool newval);
2713 bool xccdf_profile_set_prohibit_changes(struct xccdf_profile *item, bool newval);
2715 bool xccdf_profile_set_extends(struct xccdf_profile *item, const char *newval);
2717 bool xccdf_profile_set_version(struct xccdf_profile *item, const char *newval);
2719 bool xccdf_profile_set_version_time(struct xccdf_profile *item, const char *newval);
2721 bool xccdf_profile_set_version_update(struct xccdf_profile *item, const char *newval);
2723 bool xccdf_profile_set_tailoring(struct xccdf_profile *item, bool tailoring);
2725 bool xccdf_profile_add_metadata(struct xccdf_profile* item, const char* metadata);
2726 
2728 bool xccdf_rule_set_id(struct xccdf_rule *item, const char *newval);
2730 bool xccdf_rule_set_cluster_id(struct xccdf_rule *item, const char *newval);
2732 bool xccdf_rule_set_extends(struct xccdf_rule *item, const char *newval);
2734 bool xccdf_rule_set_version(struct xccdf_rule *item, const char *newval);
2736 bool xccdf_rule_set_version_time(struct xccdf_rule *item, const char *newval);
2738 bool xccdf_rule_set_version_update(struct xccdf_rule *item, const char *newval);
2740 bool xccdf_rule_set_abstract(struct xccdf_rule *item, bool newval);
2742 bool xccdf_rule_set_hidden(struct xccdf_rule *item, bool newval);
2744 bool xccdf_rule_set_prohibit_changes(struct xccdf_rule *item, bool newval);
2746 bool xccdf_rule_set_selected(struct xccdf_rule *item, bool newval);
2748 bool xccdf_rule_set_multiple(struct xccdf_rule *item, bool newval);
2750 //bool xccdf_rule_set_selector(struct xccdf_rule *item, const char * selector);
2752 bool xccdf_rule_set_impact_metric(struct xccdf_rule *item, const char *newval);
2754 bool xccdf_rule_set_role(struct xccdf_rule *item, xccdf_role_t newval);
2756 bool xccdf_rule_set_severity(struct xccdf_rule *item, xccdf_level_t newval);
2758 bool xccdf_rule_add_metadata(struct xccdf_rule* item, const char* metadata);
2759 
2761 bool xccdf_group_set_id(struct xccdf_group *item, const char *newval);
2763 bool xccdf_group_set_cluster_id(struct xccdf_group *item, const char *newval);
2765 bool xccdf_group_set_extends(struct xccdf_group *item, const char *newval);
2767 bool xccdf_group_set_version(struct xccdf_group *item, const char *newval);
2769 bool xccdf_group_set_version_time(struct xccdf_group *item, const char *newval);
2771 bool xccdf_group_set_version_update(struct xccdf_group *item, const char *newval);
2773 bool xccdf_group_set_abstract(struct xccdf_group *item, bool newval);
2775 bool xccdf_group_set_hidden(struct xccdf_group *item, bool newval);
2777 bool xccdf_group_set_prohibit_changes(struct xccdf_group *item, bool newval);
2779 bool xccdf_group_set_selected(struct xccdf_group *item, bool newval);
2781 bool xccdf_group_add_metadata(struct xccdf_group* item, const char* metadata);
2782 
2784 bool xccdf_value_set_id(struct xccdf_value *item, const char *newval);
2786 bool xccdf_value_set_cluster_id(struct xccdf_value *item, const char *newval);
2788 bool xccdf_value_set_extends(struct xccdf_value *item, const char *newval);
2790 bool xccdf_value_set_version(struct xccdf_value *item, const char *newval);
2792 bool xccdf_value_set_version_time(struct xccdf_value *item, const char *newval);
2794 bool xccdf_value_set_version_update(struct xccdf_value *item, const char *newval);
2796 bool xccdf_value_set_abstract(struct xccdf_value *item, bool newval);
2798 bool xccdf_value_set_hidden(struct xccdf_value *item, bool newval);
2800 bool xccdf_value_set_multiple(struct xccdf_value *item, bool newval);
2802 bool xccdf_value_set_prohibit_changes(struct xccdf_value *item, bool newval);
2804 bool xccdf_value_set_oper(struct xccdf_value * item, xccdf_operator_t oper);
2806 bool xccdf_value_set_interactive(struct xccdf_value *item, bool newval);
2808 bool xccdf_value_add_metadata(struct xccdf_value* item, const char* metadata);
2809 
2811 bool xccdf_status_set_date(struct xccdf_status *obj, time_t newval);
2813 bool xccdf_status_set_status(struct xccdf_status *obj, xccdf_status_type_t newval);
2814 
2816 bool xccdf_notice_set_id(struct xccdf_notice *obj, const char *newval);
2818 bool xccdf_notice_set_text(struct xccdf_notice *obj, struct oscap_text *newval);
2819 
2821 bool xccdf_model_set_system(struct xccdf_model *obj, const char *newval);
2822 
2824 bool xccdf_check_set_id(struct xccdf_check *obj, const char *newval);
2826 bool xccdf_check_set_system(struct xccdf_check *obj, const char *newval);
2828 bool xccdf_check_set_selector(struct xccdf_check *obj, const char *newval);
2830 bool xccdf_check_set_content(struct xccdf_check *obj, const char *newval);
2832 bool xccdf_check_set_oper(struct xccdf_check *obj, xccdf_bool_operator_t newval);
2834 bool xccdf_check_set_multicheck(struct xccdf_check *obj, bool newval);
2836 bool xccdf_check_set_negate(struct xccdf_check *obj, bool newval);
2837 
2839 bool xccdf_check_content_ref_set_name(struct xccdf_check_content_ref *obj, const char *newval);
2841 bool xccdf_check_content_ref_set_href(struct xccdf_check_content_ref *obj, const char *newval);
2842 
2844 bool xccdf_profile_note_set_reftag(struct xccdf_profile_note *obj, const char *newval);
2846 bool xccdf_profile_note_set_text(struct xccdf_profile_note *obj, struct oscap_text *newval);
2847 
2849 bool xccdf_check_import_set_name(struct xccdf_check_import *obj, const char *newval);
2851 bool xccdf_check_import_set_xpath(struct xccdf_check_import *obj, const char *newval);
2853 bool xccdf_check_import_set_content(struct xccdf_check_import *obj, const char *newval);
2854 
2856 bool xccdf_check_export_set_name(struct xccdf_check_export *obj, const char *newval);
2858 bool xccdf_check_export_set_value(struct xccdf_check_export *obj, const char *newval);
2859 
2861 bool xccdf_fix_set_strategy(struct xccdf_fix *obj, xccdf_strategy_t newval);
2863 bool xccdf_fix_set_disruption(struct xccdf_fix *obj, xccdf_level_t newval);
2865 bool xccdf_fix_set_complexity(struct xccdf_fix *obj, xccdf_level_t newval);
2867 bool xccdf_fix_set_reboot(struct xccdf_fix *obj, bool newval);
2869 bool xccdf_fix_set_content(struct xccdf_fix *obj, const char *newval);
2871 bool xccdf_fix_set_system(struct xccdf_fix *obj, const char *newval);
2873 bool xccdf_fix_set_platform(struct xccdf_fix *obj, const char *newval);
2875 bool xccdf_fix_set_id(struct xccdf_fix *obj, const char *newval);
2876 
2880 bool xccdf_fixtext_set_disruption(struct xccdf_fixtext *obj, xccdf_level_t newval);
2882 bool xccdf_fixtext_set_complexity(struct xccdf_fixtext *obj, xccdf_level_t newval);
2884 bool xccdf_fixtext_set_reboot(struct xccdf_fixtext *obj, bool newval);
2886 bool xccdf_fixtext_set_text(struct xccdf_fixtext *obj, struct oscap_text *newval);
2888 bool xccdf_fixtext_set_fixref(struct xccdf_fixtext *obj, const char *newval);
2889 
2891 bool xccdf_select_set_item(struct xccdf_select *obj, const char *newval);
2893 bool xccdf_select_set_selected(struct xccdf_select *obj, bool newval);
2894 
2898 bool xccdf_warning_set_text(struct xccdf_warning *obj, struct oscap_text *newval);
2901 
2903 struct xccdf_refine_rule * xccdf_refine_rule_clone(const struct xccdf_refine_rule * old_rule);
2905 bool xccdf_refine_rule_set_item(struct xccdf_refine_rule *obj, const char *newval);
2907 bool xccdf_refine_rule_set_selector(struct xccdf_refine_rule *obj, const char *newval);
2914 
2918 struct xccdf_refine_value * xccdf_refine_value_clone(const struct xccdf_refine_value * old_value);
2920 bool xccdf_refine_value_set_item(struct xccdf_refine_value *obj, const char *newval);
2922 bool xccdf_refine_value_set_selector(struct xccdf_refine_value *obj, const char *newval);
2925 
2927 struct xccdf_setvalue *xccdf_setvalue_new(void);
2929 struct xccdf_setvalue * xccdf_setvalue_clone(const struct xccdf_setvalue * old_value);
2931 bool xccdf_setvalue_set_item(struct xccdf_setvalue *obj, const char *newval);
2933 bool xccdf_setvalue_set_value(struct xccdf_setvalue *obj, const char *newval);
2935 bool xccdf_plain_text_set_id(struct xccdf_plain_text *obj, const char *newval);
2937 bool xccdf_plain_text_set_text(struct xccdf_plain_text *obj, const char *newval);
2938 
2940 bool xccdf_result_set_id(struct xccdf_result *item, const char *newval);
2942 bool xccdf_result_set_test_system(struct xccdf_result *item, const char *newval);
2944 bool xccdf_result_set_benchmark_uri(struct xccdf_result *item, const char *newval);
2946 bool xccdf_result_set_profile(struct xccdf_result *item, const char *newval);
2948 bool xccdf_result_set_start_time(struct xccdf_result *item, const char *newval);
2950 bool xccdf_result_set_end_time(struct xccdf_result *item, const char *newval);
2952 bool xccdf_result_set_version(struct xccdf_result *item, const char *newval);
2954 bool xccdf_result_add_metadata(struct xccdf_result *item, const char *metadata);
2955 
2957 bool xccdf_rule_result_set_time(struct xccdf_rule_result *obj, const char *newval);
2961 bool xccdf_rule_result_set_weight(struct xccdf_rule_result *obj, float newval);
2967 bool xccdf_rule_result_set_version(struct xccdf_rule_result *obj, const char *newval);
2969 bool xccdf_rule_result_set_idref(struct xccdf_rule_result *obj, const char *newval);
2970 
2972 bool xccdf_identity_set_authenticated(struct xccdf_identity *obj, bool newval);
2974 bool xccdf_identity_set_privileged(struct xccdf_identity *obj, bool newval);
2976 bool xccdf_identity_set_name(struct xccdf_identity *obj, const char *newval);
2977 
2979 bool xccdf_score_set_maximum(struct xccdf_score *obj, xccdf_numeric newval);
2981 bool xccdf_score_set_score(struct xccdf_score *obj, xccdf_numeric newval);
2983 bool xccdf_score_set_system(struct xccdf_score *obj, const char *newval);
2984 
2986 bool xccdf_override_set_time(struct xccdf_override *obj, const char *newval);
2992 bool xccdf_override_set_authority(struct xccdf_override *obj, const char *newval);
2994 bool xccdf_override_set_remark(struct xccdf_override *obj, struct oscap_text *newval);
2995 
2999 bool xccdf_message_set_content(struct xccdf_message *obj, const char *newval);
3000 
3002 bool xccdf_target_fact_set_string(struct xccdf_target_fact *fact, const char *str);
3006 bool xccdf_target_fact_set_boolean(struct xccdf_target_fact *fact, bool val);
3008 bool xccdf_target_fact_set_name(struct xccdf_target_fact *obj, const char *newval);
3009 
3013 bool xccdf_target_identifier_set_system(struct xccdf_target_identifier *ti, const char *newval);
3015 bool xccdf_target_identifier_set_href(struct xccdf_target_identifier *ti, const char *newval);
3017 bool xccdf_target_identifier_set_name(struct xccdf_target_identifier *ti, const char *newval);
3018 
3020 bool xccdf_instance_set_context(struct xccdf_instance *obj, const char *newval);
3022 bool xccdf_instance_set_parent_context(struct xccdf_instance *obj, const char *newval);
3024 bool xccdf_instance_set_content(struct xccdf_instance *obj, const char *newval);
3025 
3026 // @memberof xccdf_ident
3027 void xccdf_ident_set_id(struct xccdf_ident * ident, const char *id);
3028 // @memberof xccdf_ident
3029 void xccdf_ident_set_system(struct xccdf_ident * ident, const char *sys);
3030 
3032 bool xccdf_benchmark_add_result(struct xccdf_benchmark *bench, struct xccdf_result *result);
3033 
3035 bool xccdf_benchmark_add_description(struct xccdf_benchmark *item, struct oscap_text *newval);
3037 bool xccdf_benchmark_add_platform(struct xccdf_benchmark *item, const char *newval);
3039 bool xccdf_benchmark_add_reference(struct xccdf_benchmark *item, struct oscap_reference *newval);
3041 bool xccdf_benchmark_add_status(struct xccdf_benchmark *item, struct xccdf_status *newval);
3043 bool xccdf_benchmark_add_dc_status(struct xccdf_benchmark *item, struct oscap_reference *newval);
3045 bool xccdf_benchmark_add_title(struct xccdf_benchmark *item, struct oscap_text *newval);
3047 bool xccdf_benchmark_add_front_matter(struct xccdf_benchmark *item, struct oscap_text *newval);
3049 //bool xccdf_benchmark_add_item(struct xccdf_benchmark *item, struct xccdf_item *newval);
3051 bool xccdf_benchmark_add_model(struct xccdf_benchmark *item, struct xccdf_model *newval);
3053 bool xccdf_benchmark_add_notice(struct xccdf_benchmark *item, struct xccdf_notice *newval);
3055 bool xccdf_benchmark_add_plain_text(struct xccdf_benchmark *item, struct xccdf_plain_text *newval);
3057 bool xccdf_benchmark_add_profile(struct xccdf_benchmark *item, struct xccdf_profile *newval);
3059 bool xccdf_benchmark_add_rear_matter(struct xccdf_benchmark *item, struct oscap_text *newval);
3061 bool xccdf_benchmark_add_rule(struct xccdf_benchmark *benchmark, struct xccdf_rule *rule);
3063 bool xccdf_benchmark_add_group(struct xccdf_benchmark *benchmark, struct xccdf_group *group);
3065 bool xccdf_benchmark_add_value(struct xccdf_benchmark *benchmark, struct xccdf_value *value);
3067 bool xccdf_benchmark_add_content(struct xccdf_benchmark *bench, struct xccdf_item *item);
3068 
3070 bool xccdf_profile_add_select(struct xccdf_profile *item, struct xccdf_select *newval);
3072 bool xccdf_profile_add_setvalue(struct xccdf_profile *item, struct xccdf_setvalue *newval);
3074 bool xccdf_profile_add_refine_value(struct xccdf_profile *item, struct xccdf_refine_value *newval);
3076 bool xccdf_profile_add_refine_rule(struct xccdf_profile *item, struct xccdf_refine_rule *newval);
3077 
3079 bool xccdf_profile_add_description(struct xccdf_profile *item, struct oscap_text *newval);
3081 bool xccdf_profile_add_platform(struct xccdf_profile *item, const char *newval);
3083 bool xccdf_profile_add_reference(struct xccdf_profile *item, struct oscap_reference *newval);
3085 bool xccdf_profile_add_status(struct xccdf_profile *item, struct xccdf_status *newval);
3087 bool xccdf_profile_add_dc_status(struct xccdf_profile *item, struct oscap_reference *newval);
3089 bool xccdf_profile_add_title(struct xccdf_profile *item, struct oscap_text *newval);
3090 
3092 bool xccdf_rule_add_description(struct xccdf_rule *item, struct oscap_text *newval);
3094 bool xccdf_rule_add_platform(struct xccdf_rule *item, const char *newval);
3096 bool xccdf_rule_add_question(struct xccdf_rule *item, struct oscap_text *newval);
3098 bool xccdf_rule_add_rationale(struct xccdf_rule *item, struct oscap_text *newval);
3100 bool xccdf_rule_add_reference(struct xccdf_rule *item, struct oscap_reference *newval);
3102 bool xccdf_rule_add_status(struct xccdf_rule *item, struct xccdf_status *newval);
3104 bool xccdf_rule_add_dc_status(struct xccdf_rule *item, struct oscap_reference *newval);
3106 bool xccdf_rule_add_title(struct xccdf_rule *item, struct oscap_text *newval);
3108 bool xccdf_rule_add_warning(struct xccdf_rule *item, struct xccdf_warning *newval);
3110 bool xccdf_rule_add_ident(struct xccdf_rule *item, struct xccdf_ident *newval);
3112 bool xccdf_rule_add_check(struct xccdf_rule *item, struct xccdf_check *newval);
3114 bool xccdf_rule_add_profile_note(struct xccdf_rule *item, struct xccdf_profile_note *newval);
3116 bool xccdf_rule_add_fix(struct xccdf_rule *item, struct xccdf_fix *newval);
3118 bool xccdf_rule_add_fixtext(struct xccdf_rule *item, struct xccdf_fixtext *newval);
3119 
3121 bool xccdf_group_add_description(struct xccdf_group *item, struct oscap_text *newval);
3123 bool xccdf_group_add_platform(struct xccdf_group *item, const char *newval);
3125 bool xccdf_group_add_question(struct xccdf_group *item, struct oscap_text *newval);
3127 bool xccdf_group_add_rationale(struct xccdf_group *item, struct oscap_text *newval);
3129 bool xccdf_group_add_reference(struct xccdf_group *item, struct oscap_reference *newval);
3131 bool xccdf_group_add_status(struct xccdf_group *item, struct xccdf_status *newval);
3133 bool xccdf_group_add_dc_status(struct xccdf_group *item, struct oscap_reference *newval);
3135 bool xccdf_group_add_title(struct xccdf_group *item, struct oscap_text *newval);
3137 bool xccdf_group_add_warning(struct xccdf_group *item, struct xccdf_warning *newval);
3139 bool xccdf_group_add_rule(struct xccdf_group *group, struct xccdf_rule *item);
3141 bool xccdf_group_add_group(struct xccdf_group *group, struct xccdf_group *item);
3143 bool xccdf_group_add_value(struct xccdf_group *group, struct xccdf_value *item);
3145 bool xccdf_group_add_content(struct xccdf_group *rule, struct xccdf_item *item);
3146 
3148 bool xccdf_value_add_description(struct xccdf_value *item, struct oscap_text *newval);
3150 bool xccdf_value_add_question(struct xccdf_value *item, struct oscap_text *newval);
3152 bool xccdf_value_add_reference(struct xccdf_value *item, struct oscap_reference *newval);
3154 bool xccdf_value_add_status(struct xccdf_value *item, struct xccdf_status *newval);
3156 bool xccdf_value_add_dc_status(struct xccdf_value *item, struct oscap_reference *newval);
3158 bool xccdf_value_add_title(struct xccdf_value *item, struct oscap_text *newval);
3160 bool xccdf_value_add_warning(struct xccdf_value *item, struct xccdf_warning *newval);
3161 
3163 bool xccdf_check_add_import(struct xccdf_check *obj, struct xccdf_check_import *item);
3165 bool xccdf_check_add_export(struct xccdf_check *obj, struct xccdf_check_export *item);
3167 bool xccdf_check_add_content_ref(struct xccdf_check *obj, struct xccdf_check_content_ref *item);
3169 bool xccdf_check_add_child(struct xccdf_check *obj, struct xccdf_check *item);
3171 bool xccdf_select_add_remark(struct xccdf_select *obj, struct oscap_text *item);
3173 bool xccdf_refine_value_add_remark(struct xccdf_refine_value *obj, struct oscap_text *item);
3175 bool xccdf_result_add_rule_result(struct xccdf_result *item, struct xccdf_rule_result *newval);
3177 bool xccdf_result_add_setvalue(struct xccdf_result *item, struct xccdf_setvalue *newval);
3179 bool xccdf_result_add_target_fact(struct xccdf_result *item, struct xccdf_target_fact *newval);
3183 bool xccdf_result_add_remark(struct xccdf_result *item, struct oscap_text *newval);
3185 bool xccdf_result_add_organization(struct xccdf_result *item, const char *newval);
3187 bool xccdf_result_add_target(struct xccdf_result *item, const char *newval);
3189 bool xccdf_result_add_identity(struct xccdf_result *item, struct xccdf_identity *newval);
3191 bool xccdf_result_add_score(struct xccdf_result *item, struct xccdf_score *newval);
3193 bool xccdf_result_add_title(struct xccdf_result *item, struct oscap_text *newval);
3195 bool xccdf_result_add_target_address(struct xccdf_result *item, const char *newval);
3197 bool xccdf_rule_result_add_ident(struct xccdf_rule_result *obj, struct xccdf_ident *item);
3199 bool xccdf_rule_result_add_fix(struct xccdf_rule_result *obj, struct xccdf_fix *item);
3201 bool xccdf_rule_result_add_check(struct xccdf_rule_result *obj, struct xccdf_check *item);
3203 bool xccdf_rule_result_add_override(struct xccdf_rule_result *obj, struct xccdf_override *item);
3205 bool xccdf_rule_result_add_message(struct xccdf_rule_result *obj, struct xccdf_message *item);
3207 bool xccdf_rule_result_add_instance(struct xccdf_rule_result *obj, struct xccdf_instance *item);
3209 bool xccdf_item_add_description(struct xccdf_item *item, struct oscap_text *newval);
3211 bool xccdf_item_add_platform(struct xccdf_item *item, const char *newval);
3213 bool xccdf_item_add_question(struct xccdf_item *item, struct oscap_text *newval);
3215 bool xccdf_item_add_rationale(struct xccdf_item *item, struct oscap_text *newval);
3217 bool xccdf_item_add_reference(struct xccdf_item *item, struct oscap_reference *newval);
3219 bool xccdf_item_add_dc_status(struct xccdf_item *item, struct oscap_reference *newval);
3221 bool xccdf_item_add_status(struct xccdf_item *item, struct xccdf_status *newval);
3223 bool xccdf_item_add_title(struct xccdf_item *item, struct oscap_text *newval);
3225 bool xccdf_item_add_warning(struct xccdf_item *item, struct xccdf_warning *newval);
3227 bool xccdf_refine_rule_add_remark(struct xccdf_refine_rule *obj, struct oscap_text *item);
3228 
3230 bool xccdf_rule_add_requires(struct xccdf_rule *rule, struct oscap_stringlist *requires);
3232 bool xccdf_group_add_requires(struct xccdf_group *group, struct oscap_stringlist *requires);
3234 bool xccdf_item_add_requires(struct xccdf_item *item, struct oscap_stringlist *requires);
3236 bool xccdf_rule_add_conflicts(struct xccdf_rule *rule, const char *conflicts);
3238 bool xccdf_group_add_conflicts(struct xccdf_group *group, const char *conflicts);
3240 bool xccdf_item_add_conflicts(struct xccdf_item *item, const char *conflicts);
3241 
3242 /************************************************************
3243  ** @} End of Setters group */
3244 
3245 // remove operations
3246 
3307 
3308 
3309 // reset iterators
3332 
3333 
3334 // textual substitution interface
3335 
3341 typedef enum xccdf_subst_type {
3342  XCCDF_SUBST_NONE,
3347 
3358 typedef char*(*xccdf_substitution_func)(xccdf_subst_type_t type, const char *id, void *arg);
3359 
3360 
3371 OSCAP_DEPRECATED(char* oscap_text_xccdf_substitute(const char *text, xccdf_substitution_func cb, void *arg));
3372 
3373 /************************************************************/
3375 
3376 
3377 #endif