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 
894 void xccdf_tailoring_free(struct xccdf_tailoring *tailoring);
896 int xccdf_tailoring_export(struct xccdf_tailoring *tailoring, const char *file, const struct xccdf_version_info *version_info);
897 
902 OSCAP_DEPRECATED(void xccdf_cleanup(void));
903 
909 struct xccdf_group *xccdf_benchmark_append_new_group(struct xccdf_benchmark *, const char *id);
910 
917 
923 struct xccdf_rule *xccdf_benchmark_append_new_rule(struct xccdf_benchmark *, const char *id);
924 
928 struct xccdf_plain_text *xccdf_plain_text_new_fill(const char *id, const char *text);
930 void xccdf_plain_text_free(struct xccdf_plain_text *plain);
932 struct xccdf_plain_text *xccdf_plain_text_clone(const struct xccdf_plain_text * pt);
933 
935 struct xccdf_result *xccdf_result_new(void);
937 void xccdf_result_free(struct xccdf_result *item);
939 struct xccdf_item *xccdf_result_to_item(struct xccdf_result *item);
941 struct xccdf_result * xccdf_result_clone(const struct xccdf_result * result);
942 
946 struct xccdf_rule_result * xccdf_rule_result_clone(const struct xccdf_rule_result * result);
949 
951 struct xccdf_identity *xccdf_identity_new(void);
953 struct xccdf_identity * xccdf_identity_clone(const struct xccdf_identity * identity);
955 void xccdf_identity_free(struct xccdf_identity *identity);
956 
958 struct xccdf_score *xccdf_score_new(void);
960 struct xccdf_score * xccdf_score_clone(const struct xccdf_score * score);
962 void xccdf_score_free(struct xccdf_score *score);
963 
965 struct xccdf_override *xccdf_override_new(void);
967 struct xccdf_override * xccdf_override_clone(const struct xccdf_override * override);
969 void xccdf_override_free(struct xccdf_override *oride);
970 
972 struct xccdf_message *xccdf_message_new(void);
974 struct xccdf_message * xccdf_message_clone(const struct xccdf_message * message);
976 void xccdf_message_free(struct xccdf_message *msg);
977 
983 void xccdf_target_fact_free(struct xccdf_target_fact *fact);
984 
991 
993 struct xccdf_instance *xccdf_instance_new(void);
995 struct xccdf_instance * xccdf_instance_clone(const struct xccdf_instance * instance);
997 void xccdf_instance_free(struct xccdf_instance *inst);
998 
1001 
1002 /************************************************************/
1028 
1029 
1050 
1051 
1072 
1073 
1094 
1095 
1116 
1117 
1138 
1139 
1160 
1161 
1182 
1183 
1204 
1205 
1226 
1227 
1248 
1249 
1270 
1271 
1292 
1293 
1314 
1315 
1336 
1337 
1358 
1359 
1380 
1381 
1402 
1403 
1419 
1420 
1441 
1442 
1463 
1464 
1485 
1486 
1507 
1508 
1529 
1530 
1551 
1552 
1573 
1574 
1595 
1616 
1617 
1638 
1639 
1660 
1661 /************************************************************
1662  ** @} End of Iterators group */
1663 
1664 /************************************************************/
1675 xccdf_type_t xccdf_item_get_type(const struct xccdf_item *item);
1679 const char *xccdf_item_get_id(const struct xccdf_item *item);
1683 struct oscap_text_iterator *xccdf_item_get_title(const struct xccdf_item *item);
1687 struct oscap_text_iterator *xccdf_item_get_description(const struct xccdf_item *item);
1691 const char *xccdf_item_get_version(const struct xccdf_item *item);
1695 const char *xccdf_item_get_extends(const struct xccdf_item *item);
1699 struct xccdf_status_iterator *xccdf_item_get_statuses(const struct xccdf_item *item);
1703 struct oscap_reference_iterator *xccdf_item_get_dc_statuses(const struct xccdf_item *item);
1707 struct oscap_reference_iterator *xccdf_item_get_references(const struct xccdf_item *item);
1711 struct oscap_string_iterator *xccdf_item_get_conflicts(const struct xccdf_item* item);
1715 struct oscap_stringlist_iterator *xccdf_item_get_requires(const struct xccdf_item* item);
1719 struct xccdf_status * xccdf_item_get_current_status(const struct xccdf_item *item);
1723 bool xccdf_item_get_hidden(const struct xccdf_item *item);
1727 bool xccdf_item_get_selected(const struct xccdf_item *item);
1731 bool xccdf_item_get_prohibit_changes(const struct xccdf_item *item);
1735 bool xccdf_item_get_abstract(const struct xccdf_item *item);
1739 struct xccdf_item_iterator *xccdf_item_get_content(const struct xccdf_item *item);
1743 const char * xccdf_test_result_type_get_text(xccdf_test_result_type_t id);
1747 struct xccdf_rule_result * xccdf_result_get_rule_result_by_id(struct xccdf_result * result, const char * id);
1748 
1754 struct xccdf_item *xccdf_item_get_parent(const struct xccdf_item *item);
1755 
1765 const struct xccdf_version_info* xccdf_item_get_schema_version(struct xccdf_item* item);
1766 
1770 struct oscap_string_iterator *xccdf_item_get_metadata(const struct xccdf_item *item);
1771 
1775 const char *xccdf_benchmark_get_id(const struct xccdf_benchmark *benchmark);
1779 bool xccdf_benchmark_get_resolved(const struct xccdf_benchmark *benchmark);
1783 struct oscap_text_iterator *xccdf_benchmark_get_title(const struct xccdf_benchmark *benchmark);
1787 struct oscap_text_iterator *xccdf_benchmark_get_description(const struct xccdf_benchmark *benchmark);
1791 const char *xccdf_benchmark_get_version(const struct xccdf_benchmark *benchmark);
1795 const struct xccdf_version_info* xccdf_benchmark_get_schema_version(const struct xccdf_benchmark* item);
1799 const char *xccdf_benchmark_get_style(const struct xccdf_benchmark *benchmark);
1803 const char *xccdf_benchmark_get_style_href(const struct xccdf_benchmark *benchmark);
1807 struct oscap_text_iterator *xccdf_benchmark_get_front_matter(const struct xccdf_benchmark *benchmark);
1811 struct oscap_text_iterator *xccdf_benchmark_get_rear_matter(const struct xccdf_benchmark *benchmark);
1815 struct xccdf_status_iterator *xccdf_benchmark_get_statuses(const struct xccdf_benchmark *benchmark);
1819 struct oscap_reference_iterator *xccdf_benchmark_get_dc_statuses(const struct xccdf_benchmark *benchmark);
1823 struct oscap_reference_iterator *xccdf_benchmark_get_references(const struct xccdf_benchmark *benchmark);
1827 struct oscap_string_iterator *xccdf_benchmark_get_platforms(const struct xccdf_benchmark *benchmark);
1831 struct xccdf_status * xccdf_benchmark_get_status_current(const struct xccdf_benchmark *benchmark);
1835 struct xccdf_plain_text_iterator *xccdf_benchmark_get_plain_texts(const struct xccdf_benchmark *item);
1839 struct xccdf_result_iterator* xccdf_benchmark_get_results(const struct xccdf_benchmark *bench);
1843 struct xccdf_value_iterator *xccdf_benchmark_get_values(const struct xccdf_benchmark *item);
1845 bool xccdf_benchmark_set_lang(struct xccdf_benchmark *item, const char *newval);
1847 const char *xccdf_benchmark_get_lang(const struct xccdf_benchmark *item);
1848 
1856 const char *xccdf_benchmark_get_plain_text(const struct xccdf_benchmark *benchmark, const char *id);
1857 
1865 struct xccdf_item *xccdf_benchmark_get_item(const struct xccdf_benchmark *benchmark, const char *id);
1866 
1874 struct xccdf_item *xccdf_benchmark_get_member(const struct xccdf_benchmark *benchmark, xccdf_type_t type, const char *key);
1875 
1881 struct xccdf_notice_iterator *xccdf_benchmark_get_notices(const struct xccdf_benchmark *benchmark);
1882 
1888 struct xccdf_model_iterator *xccdf_benchmark_get_models(const struct xccdf_benchmark *benchmark);
1889 
1896 
1904 struct xccdf_item_iterator *xccdf_benchmark_get_content(const struct xccdf_benchmark *benchmark);
1905 
1909 struct oscap_string_iterator *xccdf_benchmark_get_metadata(const struct xccdf_benchmark *benchmark);
1910 
1914 struct cpe_dict_model *xccdf_benchmark_get_cpe_list(const struct xccdf_benchmark *benchmark);
1915 
1919 struct cpe_lang_model *xccdf_benchmark_get_cpe_lang_model(const struct xccdf_benchmark *benchmark);
1920 
1924 const char *xccdf_profile_get_id(const struct xccdf_profile *profile);
1928 struct oscap_text_iterator *xccdf_profile_get_title(const struct xccdf_profile *profile);
1932 struct oscap_text_iterator *xccdf_profile_get_description(const struct xccdf_profile *profile);
1936 const char *xccdf_profile_get_version(const struct xccdf_profile *profile);
1940 const char *xccdf_profile_get_extends(const struct xccdf_profile *profile);
1944 struct xccdf_benchmark *xccdf_profile_get_benchmark(const struct xccdf_profile *profile);
1948 bool xccdf_profile_get_abstract(const struct xccdf_profile *profile);
1952 bool xccdf_profile_get_prohibit_changes(const struct xccdf_profile *profile);
1956 struct oscap_string_iterator *xccdf_profile_get_platforms(const struct xccdf_profile *profile);
1960 struct xccdf_status_iterator *xccdf_profile_get_statuses(const struct xccdf_profile *profile);
1964 struct oscap_reference_iterator *xccdf_profile_get_dc_statuses(const struct xccdf_profile *profile);
1968 struct oscap_reference_iterator *xccdf_profile_get_references(const struct xccdf_profile *profile);
1972 struct xccdf_status * xccdf_profile_get_status_current(const struct xccdf_profile *profile);
1976 struct xccdf_select_iterator *xccdf_profile_get_selects(const struct xccdf_profile *profile);
1980 struct xccdf_setvalue_iterator *xccdf_profile_get_setvalues(const struct xccdf_profile *profile);
1984 struct xccdf_refine_value_iterator *xccdf_profile_get_refine_values(const struct xccdf_profile *profile);
1988 struct xccdf_refine_rule_iterator *xccdf_profile_get_refine_rules(const struct xccdf_profile *profile);
1992 struct oscap_string_iterator *xccdf_profile_get_metadata(const struct xccdf_profile *profile);
1993 
1999 struct xccdf_item *xccdf_rule_get_parent(const struct xccdf_rule *rule);
2000 
2004 const char *xccdf_rule_get_id(const struct xccdf_rule *rule);
2008 struct oscap_text_iterator *xccdf_rule_get_title(const struct xccdf_rule *rule);
2012 struct oscap_text_iterator *xccdf_rule_get_description(const struct xccdf_rule *rule);
2016 const char *xccdf_rule_get_version(const struct xccdf_rule *rule);
2020 struct oscap_text_iterator *xccdf_rule_get_question(const struct xccdf_rule *rule);
2024 struct xccdf_warning_iterator *xccdf_rule_get_warnings(const struct xccdf_rule *rule);
2028 struct oscap_text_iterator *xccdf_rule_get_rationale(const struct xccdf_rule *rule);
2032 const char *xccdf_rule_get_cluster_id(const struct xccdf_rule *rule);
2036 float xccdf_rule_get_weight(const struct xccdf_rule *rule);
2040 bool xccdf_rule_set_weight(struct xccdf_rule *item, xccdf_numeric newval);
2044 const char *xccdf_rule_get_extends(const struct xccdf_rule *rule);
2048 bool xccdf_rule_get_abstract(const struct xccdf_rule *rule);
2052 bool xccdf_rule_get_prohibit_changes(const struct xccdf_rule *rule);
2056 bool xccdf_rule_get_hidden(const struct xccdf_rule *rule);
2060 bool xccdf_rule_get_selected(const struct xccdf_rule *rule);
2064 bool xccdf_rule_get_multiple(const struct xccdf_rule *rule);
2068 struct oscap_string_iterator *xccdf_rule_get_platforms(const struct xccdf_rule *rule);
2072 struct xccdf_status_iterator *xccdf_rule_get_statuses(const struct xccdf_rule *rule);
2076 struct oscap_reference_iterator *xccdf_rule_get_dc_statuses(const struct xccdf_rule *rule);
2080 struct oscap_reference_iterator *xccdf_rule_get_references(const struct xccdf_rule *rule);
2084 struct xccdf_status * xccdf_rule_get_status_current(const struct xccdf_rule *rule);
2088 const char *xccdf_rule_get_impact_metric(const struct xccdf_rule *rule);
2092 xccdf_role_t xccdf_rule_get_role(const struct xccdf_rule *rule);
2096 xccdf_level_t xccdf_rule_get_severity(const struct xccdf_rule *rule);
2100 struct xccdf_ident_iterator *xccdf_rule_get_idents(const struct xccdf_rule *rule);
2104 struct xccdf_check_iterator *xccdf_rule_get_checks(const struct xccdf_rule *rule);
2108 struct xccdf_profile_note_iterator *xccdf_rule_get_profile_notes(const struct xccdf_rule *rule);
2112 struct xccdf_fix_iterator *xccdf_rule_get_fixes(const struct xccdf_rule *rule);
2116 struct xccdf_fixtext_iterator *xccdf_rule_get_fixtexts(const struct xccdf_rule *rule);
2120 struct oscap_string_iterator *xccdf_rule_get_conflicts(const struct xccdf_rule* rule);
2124 struct oscap_stringlist_iterator *xccdf_rule_get_requires(const struct xccdf_rule* rule);
2128 struct oscap_string_iterator *xccdf_rule_get_metadata(const struct xccdf_rule *rule);
2129 
2130 /*
2131  * Return group's parent in the grouping hierarchy.
2132  * Returned item will be either a group or a benchmark.
2133  * @memberof xccdf_group
2134  */
2135 struct xccdf_item *xccdf_group_get_parent(const struct xccdf_group *group);
2136 
2144 struct xccdf_item_iterator *xccdf_group_get_content(const struct xccdf_group *group);
2145 
2147 struct xccdf_value_iterator *xccdf_group_get_values(const struct xccdf_group *group);
2148 
2150 const char *xccdf_group_get_id(const struct xccdf_group *group);
2152 struct oscap_text_iterator *xccdf_group_get_title(const struct xccdf_group *group);
2154 struct oscap_text_iterator *xccdf_group_get_description(const struct xccdf_group *group);
2156 const char *xccdf_group_get_version(const struct xccdf_group *group);
2158 struct oscap_text_iterator *xccdf_group_get_question(const struct xccdf_group *group);
2160 struct xccdf_warning_iterator *xccdf_group_get_warnings(const struct xccdf_group *group);
2162 struct oscap_text_iterator *xccdf_group_get_rationale(const struct xccdf_group *group);
2164 const char *xccdf_group_get_cluster_id(const struct xccdf_group *group);
2166 float xccdf_group_get_weight(const struct xccdf_group *group);
2168 bool xccdf_group_set_weight(struct xccdf_group *item, xccdf_numeric newval);
2170 const char *xccdf_group_get_extends(const struct xccdf_group *group);
2172 bool xccdf_group_get_abstract(const struct xccdf_group *group);
2174 bool xccdf_group_get_prohibit_changes(const struct xccdf_group *group);
2176 bool xccdf_group_get_hidden(const struct xccdf_group *group);
2178 bool xccdf_group_get_selected(const struct xccdf_group *group);
2180 struct oscap_string_iterator *xccdf_group_get_platforms(const struct xccdf_group *group);
2182 struct xccdf_status_iterator *xccdf_group_get_statuses(const struct xccdf_group *group);
2184 struct oscap_reference_iterator *xccdf_group_get_dc_statuses(const struct xccdf_group *group);
2186 struct oscap_reference_iterator *xccdf_group_get_references(const struct xccdf_group *group);
2188 struct xccdf_status * xccdf_group_get_status_current(const struct xccdf_group *group);
2190 struct oscap_string_iterator *xccdf_group_get_conflicts(const struct xccdf_group* group);
2194 struct oscap_string_iterator *xccdf_group_get_metadata(const struct xccdf_group *group);
2195 
2197 struct oscap_text_iterator *xccdf_value_get_title(const struct xccdf_value *value);
2199 const char *xccdf_value_get_id(const struct xccdf_value *value);
2201 struct oscap_text_iterator *xccdf_value_get_description(const struct xccdf_value *value);
2203 const char *xccdf_value_get_extends(const struct xccdf_value *value);
2205 bool xccdf_value_get_abstract(const struct xccdf_value *value);
2207 bool xccdf_value_get_prohibit_changes(const struct xccdf_value *value);
2209 bool xccdf_value_get_hidden(const struct xccdf_value *value);
2211 bool xccdf_value_get_interactive(const struct xccdf_value *value);
2213 struct xccdf_status_iterator *xccdf_value_get_statuses(const struct xccdf_value *value);
2215 struct oscap_reference_iterator *xccdf_value_get_dc_statuses(const struct xccdf_value *value);
2217 struct oscap_reference_iterator *xccdf_value_get_references(const struct xccdf_value *value);
2219 struct xccdf_status * xccdf_value_get_status_current(const struct xccdf_value *value);
2227 struct xccdf_value_instance *xccdf_value_get_instance_by_selector(const struct xccdf_value *value, const char *selector);
2229 bool xccdf_value_add_instance(struct xccdf_value *value, struct xccdf_value_instance *instance);
2233 struct oscap_string_iterator *xccdf_value_get_metadata(const struct xccdf_value *value);
2234 
2240 const char *xccdf_value_instance_get_selector(const struct xccdf_value_instance *item);
2242 bool xccdf_value_instance_set_selector(struct xccdf_value_instance *obj, const char *newval);
2248 bool xccdf_value_instance_set_must_match(struct xccdf_value_instance *obj, bool newval);
2252 bool xccdf_value_instance_set_value_boolean(struct xccdf_value_instance *inst, bool newval);
2258 const char *xccdf_value_instance_get_value_string(const struct xccdf_value_instance *inst);
2260 bool xccdf_value_instance_set_value_string(struct xccdf_value_instance *inst, const char *newval);
2264 bool xccdf_value_instance_set_defval_boolean(struct xccdf_value_instance *inst, bool newval);
2270 const char *xccdf_value_instance_get_defval_string(const struct xccdf_value_instance *inst);
2272 bool xccdf_value_instance_set_defval_string(struct xccdf_value_instance *inst, const char *newval);
2282 const char *xccdf_value_instance_get_match(const struct xccdf_value_instance *inst);
2284 bool xccdf_value_instance_set_match(struct xccdf_value_instance *inst, const char *newval);
2286 const char * xccdf_value_instance_get_value(const struct xccdf_value_instance * val);
2287 
2293 struct xccdf_item *xccdf_value_get_parent(const struct xccdf_value *value);
2294 
2295 
2297 time_t xccdf_status_get_date(const struct xccdf_status *status);
2302 
2304 const char *xccdf_notice_get_id(const struct xccdf_notice *notice);
2306 struct oscap_text *xccdf_notice_get_text(const struct xccdf_notice *notice);
2308 const char *xccdf_model_get_system(const struct xccdf_model *model);
2310 const char *xccdf_ident_get_id(const struct xccdf_ident *ident);
2312 const char *xccdf_ident_get_system(const struct xccdf_ident *ident);
2314 const char *xccdf_check_get_id(const struct xccdf_check *check);
2315 
2321 bool xccdf_check_get_complex(const struct xccdf_check *check);
2322 
2330 const char *xccdf_check_get_system(const struct xccdf_check *check);
2332 const char *xccdf_check_get_selector(const struct xccdf_check *check);
2334 const char *xccdf_check_get_content(const struct xccdf_check *check);
2336 bool xccdf_check_get_multicheck(const struct xccdf_check *check);
2338 bool xccdf_check_get_negate(const struct xccdf_check *check);
2340 //struct xccdf_rule *xccdf_check_get_parent(const struct xccdf_check *check);
2346 struct xccdf_check_iterator *xccdf_check_get_children(const struct xccdf_check *check);
2347 
2349 const char *xccdf_check_content_ref_get_href(const struct xccdf_check_content_ref *ref);
2351 const char *xccdf_check_content_ref_get_name(const struct xccdf_check_content_ref *ref);
2353 const char *xccdf_profile_note_get_reftag(const struct xccdf_profile_note *note);
2355 struct oscap_text *xccdf_profile_note_get_text(const struct xccdf_profile_note *note);
2357 const char *xccdf_check_import_get_name(const struct xccdf_check_import *item);
2359 const char *xccdf_check_import_get_xpath(const struct xccdf_check_import *item);
2361 const char *xccdf_check_import_get_content(const struct xccdf_check_import *item);
2363 const char *xccdf_check_export_get_value(const struct xccdf_check_export *item);
2365 const char *xccdf_check_export_get_name(const struct xccdf_check_export *item);
2366 
2368 const char *xccdf_fix_get_content(const struct xccdf_fix *fix);
2370 bool xccdf_fix_get_reboot(const struct xccdf_fix *fix);
2378 const char *xccdf_fix_get_id(const struct xccdf_fix *fix);
2380 const char *xccdf_fix_get_system(const struct xccdf_fix *fix);
2382 const char *xccdf_fix_get_platform(const struct xccdf_fix *fix);
2384 bool xccdf_fixtext_get_reboot(const struct xccdf_fixtext *fixtext);
2392 const char *xccdf_fixtext_get_fixref(const struct xccdf_fixtext *fixtext);
2394 struct oscap_text *xccdf_fixtext_get_text(const struct xccdf_fixtext *fixtext);
2396 const char *xccdf_value_get_version(const struct xccdf_value *value);
2398 struct oscap_text_iterator *xccdf_value_get_question(const struct xccdf_value *value);
2400 struct xccdf_warning_iterator *xccdf_value_get_warnings(const struct xccdf_value *value);
2402 const char *xccdf_value_get_version_update(const struct xccdf_value *value);
2404 const char *xccdf_value_get_version_time(const struct xccdf_value *value);
2406 struct xccdf_benchmark *xccdf_value_get_benchmark(const struct xccdf_value *value);
2408 struct oscap_string_iterator *xccdf_value_get_sources(const struct xccdf_value *value);
2410 const char *xccdf_value_get_cluster_id(const struct xccdf_value *value);
2411 
2413 struct oscap_text_iterator *xccdf_item_get_question(const struct xccdf_item *item);
2415 struct xccdf_warning_iterator *xccdf_item_get_warnings(const struct xccdf_item *item);
2417 struct oscap_text_iterator *xccdf_item_get_rationale(const struct xccdf_item *item);
2419 const char *xccdf_item_get_cluster_id(const struct xccdf_item *item);
2421 const char *xccdf_item_get_version_update(const struct xccdf_item *item);
2423 const char *xccdf_item_get_version_time(const struct xccdf_item *item);
2425 float xccdf_item_get_weight(const struct xccdf_item *item);
2427 struct xccdf_benchmark *xccdf_item_get_benchmark(const struct xccdf_item *item);
2429 struct oscap_string_iterator *xccdf_item_get_platforms(const struct xccdf_item *item);
2430 
2434 const char *xccdf_benchmark_get_version_update(const struct xccdf_benchmark *benchmark);
2436 const char *xccdf_benchmark_get_version_time(const struct xccdf_benchmark *benchmark);
2437 
2439 const char *xccdf_profile_get_version_update(const struct xccdf_profile *profile);
2441 const char *xccdf_profile_get_version_time(const struct xccdf_profile *profile);
2443 bool xccdf_profile_get_tailoring(const struct xccdf_profile *profile);
2445 const char *xccdf_profile_get_note_tag(const struct xccdf_profile *profile);
2446 
2448 const char *xccdf_rule_get_version_update(const struct xccdf_rule *rule);
2450 const char *xccdf_rule_get_version_time(const struct xccdf_rule *rule);
2452 struct xccdf_benchmark *xccdf_rule_get_benchmark(const struct xccdf_rule *rule);
2453 
2455 const char *xccdf_group_get_version_time(const struct xccdf_group *group);
2457 const char *xccdf_group_get_version_update(const struct xccdf_group *group);
2459 struct xccdf_benchmark *xccdf_group_get_benchmark(const struct xccdf_group *group);
2460 
2467 
2469 bool xccdf_select_get_selected(const struct xccdf_select *select);
2471 const char *xccdf_select_get_item(const struct xccdf_select *select);
2473 struct oscap_text_iterator *xccdf_select_get_remarks(const struct xccdf_select *select);
2474 
2478 struct oscap_text *xccdf_warning_get_text(const struct xccdf_warning *warning);
2480 const char * xccdf_refine_rule_get_item(const struct xccdf_refine_rule* rr);
2482 const char * xccdf_refine_rule_get_selector(const struct xccdf_refine_rule* rr);
2492 bool xccdf_refine_rule_weight_defined(const struct xccdf_refine_rule *item);
2494 const char * xccdf_refine_value_get_item(const struct xccdf_refine_value* rv);
2496 const char * xccdf_refine_value_get_selector(const struct xccdf_refine_value* rv);
2502 const char *xccdf_setvalue_get_item(const struct xccdf_setvalue* sv);
2504 const char *xccdf_setvalue_get_value(const struct xccdf_setvalue* sv);
2505 
2507 const char *xccdf_plain_text_get_id(const struct xccdf_plain_text *item);
2509 const char *xccdf_plain_text_get_text(const struct xccdf_plain_text *item);
2510 
2512 struct xccdf_benchmark *xccdf_result_get_benchmark(const struct xccdf_result *item);
2514 const char *xccdf_result_get_id(const struct xccdf_result *item);
2516 struct oscap_text_iterator *xccdf_result_get_title(const struct xccdf_result *item);
2518 const char *xccdf_result_get_version(const struct xccdf_result *item);
2524 const char *xccdf_result_get_test_system(const struct xccdf_result *item);
2526 const char *xccdf_result_get_benchmark_uri(const struct xccdf_result *item);
2528 const char *xccdf_result_get_profile(const struct xccdf_result *item);
2532 struct oscap_string_iterator *xccdf_result_get_targets(const struct xccdf_result *item);
2538 struct oscap_text_iterator *xccdf_result_get_remarks(const struct xccdf_result *item);
2548 struct xccdf_score_iterator *xccdf_result_get_scores(const struct xccdf_result *item);
2550 const char * xccdf_result_get_start_time(const struct xccdf_result *item);
2552 const char * xccdf_result_get_end_time(const struct xccdf_result *item);
2554 struct oscap_string_iterator *xccdf_result_get_metadata(const struct xccdf_result *result);
2555 
2557 const char * xccdf_rule_result_get_time(const struct xccdf_rule_result *item);
2561 float xccdf_rule_result_get_weight(const struct xccdf_rule_result *item);
2567 const char *xccdf_rule_result_get_version(const struct xccdf_rule_result *item);
2569 const char *xccdf_rule_result_get_idref(const struct xccdf_rule_result *item);
2583 bool xccdf_identity_get_authenticated(const struct xccdf_identity *item);
2585 bool xccdf_identity_get_privileged(const struct xccdf_identity *item);
2587 const char *xccdf_identity_get_name(const struct xccdf_identity *item);
2591 xccdf_numeric xccdf_score_get_score(const struct xccdf_score *item);
2593 const char *xccdf_score_get_system(const struct xccdf_score *item);
2595 const char *xccdf_override_get_time(const struct xccdf_override *item);
2601 const char *xccdf_override_get_authority(const struct xccdf_override *item);
2603 struct oscap_text *xccdf_override_get_remark(const struct xccdf_override *item);
2607 const char *xccdf_message_get_content(const struct xccdf_message *item);
2611 const char *xccdf_target_fact_get_value(const struct xccdf_target_fact *item);
2613 const char *xccdf_target_fact_get_name(const struct xccdf_target_fact *item);
2617 const char *xccdf_target_identifier_get_system(const struct xccdf_target_identifier *item);
2619 const char *xccdf_target_identifier_get_href(const struct xccdf_target_identifier *item);
2621 const char *xccdf_target_identifier_get_name(const struct xccdf_target_identifier *item);
2623 const char *xccdf_instance_get_context(const struct xccdf_instance *item);
2625 const char *xccdf_instance_get_parent_context(const struct xccdf_instance *item);
2627 const char *xccdf_instance_get_content(const struct xccdf_instance *item);
2629 struct xccdf_tailoring *xccdf_tailoring_import(const char *file, struct xccdf_benchmark *benchmark);
2631 const char *xccdf_tailoring_get_id(const struct xccdf_tailoring *tailoring);
2633 const char *xccdf_tailoring_get_version(const struct xccdf_tailoring *tailoring);
2635 const char *xccdf_tailoring_get_version_update(const struct xccdf_tailoring *tailoring);
2637 const char *xccdf_tailoring_get_version_time(const struct xccdf_tailoring *tailoring);
2639 const char *xccdf_tailoring_get_benchmark_ref(const struct xccdf_tailoring *tailoring);
2641 const char *xccdf_tailoring_get_benchmark_ref_version(const struct xccdf_tailoring *tailoring);
2643 struct oscap_string_iterator *xccdf_tailoring_get_metadata(const struct xccdf_tailoring *tailoring);
2647 struct xccdf_status_iterator *xccdf_tailoring_get_statuses(const struct xccdf_tailoring *tailoring);
2649 struct oscap_reference_iterator *xccdf_tailoring_get_dc_statuses(const struct xccdf_tailoring *tailoring);
2657 struct xccdf_profile *xccdf_tailoring_get_profile_by_id(const struct xccdf_tailoring *tailoring, const char *profile_id);
2658 
2659 /************************************************************
2660  ** @} End of Getters group */
2661 
2662 /************************************************************/
2670 
2671 bool xccdf_item_set_weight(struct xccdf_item *item, xccdf_numeric newval);
2673 bool xccdf_item_set_id(struct xccdf_item *item, const char *newval);
2675 bool xccdf_item_set_cluster_id(struct xccdf_item *item, const char *newval);
2677 bool xccdf_item_set_extends(struct xccdf_item *item, const char *newval);
2679 bool xccdf_item_set_version(struct xccdf_item *item, const char *newval);
2681 bool xccdf_item_set_version_time(struct xccdf_item *item, const char *newval);
2683 bool xccdf_item_set_version_update(struct xccdf_item *item, const char *newval);
2685 bool xccdf_item_set_abstract(struct xccdf_item *item, bool newval);
2687 bool xccdf_item_set_hidden(struct xccdf_item *item, bool newval);
2689 bool xccdf_item_set_prohibit_changes(struct xccdf_item *item, bool newval);
2691 bool xccdf_item_set_selected(struct xccdf_item *item, bool newval);
2692 
2694 bool xccdf_item_add_metadata(struct xccdf_item *item, const char* metadata);
2695 
2697 bool xccdf_benchmark_set_resolved(struct xccdf_benchmark *item, bool newval);
2698 
2700 bool xccdf_benchmark_set_style_href(struct xccdf_benchmark *item, const char *newval);
2702 bool xccdf_benchmark_set_style(struct xccdf_benchmark *item, const char *newval);
2704 bool xccdf_benchmark_set_id(struct xccdf_benchmark *item, const char *newval);
2706 bool xccdf_benchmark_set_version(struct xccdf_benchmark *item, const char *newval);
2708 bool xccdf_benchmark_set_version_time(struct xccdf_benchmark *item, const char *newval);
2710 bool xccdf_benchmark_set_version_update(struct xccdf_benchmark *item, const char *newval);
2712 bool xccdf_benchmark_set_schema_version(struct xccdf_benchmark* item, const struct xccdf_version_info* newval);
2714 bool xccdf_benchmark_add_metadata(struct xccdf_benchmark* item, const char* metadata);
2716 bool xccdf_benchmark_set_cpe_list(struct xccdf_benchmark* item, struct cpe_dict_model* cpe_list);
2720 bool xccdf_profile_set_note_tag(struct xccdf_profile *item, const char *newval);
2722 bool xccdf_profile_set_id(struct xccdf_profile *item, const char *newval);
2724 bool xccdf_profile_set_abstract(struct xccdf_profile *item, bool newval);
2726 bool xccdf_profile_set_prohibit_changes(struct xccdf_profile *item, bool newval);
2728 bool xccdf_profile_set_extends(struct xccdf_profile *item, const char *newval);
2730 bool xccdf_profile_set_version(struct xccdf_profile *item, const char *newval);
2732 bool xccdf_profile_set_version_time(struct xccdf_profile *item, const char *newval);
2734 bool xccdf_profile_set_version_update(struct xccdf_profile *item, const char *newval);
2736 bool xccdf_profile_set_tailoring(struct xccdf_profile *item, bool tailoring);
2738 bool xccdf_profile_add_metadata(struct xccdf_profile* item, const char* metadata);
2739 
2741 bool xccdf_rule_set_id(struct xccdf_rule *item, const char *newval);
2743 bool xccdf_rule_set_cluster_id(struct xccdf_rule *item, const char *newval);
2745 bool xccdf_rule_set_extends(struct xccdf_rule *item, const char *newval);
2747 bool xccdf_rule_set_version(struct xccdf_rule *item, const char *newval);
2749 bool xccdf_rule_set_version_time(struct xccdf_rule *item, const char *newval);
2751 bool xccdf_rule_set_version_update(struct xccdf_rule *item, const char *newval);
2753 bool xccdf_rule_set_abstract(struct xccdf_rule *item, bool newval);
2755 bool xccdf_rule_set_hidden(struct xccdf_rule *item, bool newval);
2757 bool xccdf_rule_set_prohibit_changes(struct xccdf_rule *item, bool newval);
2759 bool xccdf_rule_set_selected(struct xccdf_rule *item, bool newval);
2761 bool xccdf_rule_set_multiple(struct xccdf_rule *item, bool newval);
2763 //bool xccdf_rule_set_selector(struct xccdf_rule *item, const char * selector);
2765 bool xccdf_rule_set_impact_metric(struct xccdf_rule *item, const char *newval);
2767 bool xccdf_rule_set_role(struct xccdf_rule *item, xccdf_role_t newval);
2769 bool xccdf_rule_set_severity(struct xccdf_rule *item, xccdf_level_t newval);
2771 bool xccdf_rule_add_metadata(struct xccdf_rule* item, const char* metadata);
2772 
2774 bool xccdf_group_set_id(struct xccdf_group *item, const char *newval);
2776 bool xccdf_group_set_cluster_id(struct xccdf_group *item, const char *newval);
2778 bool xccdf_group_set_extends(struct xccdf_group *item, const char *newval);
2780 bool xccdf_group_set_version(struct xccdf_group *item, const char *newval);
2782 bool xccdf_group_set_version_time(struct xccdf_group *item, const char *newval);
2784 bool xccdf_group_set_version_update(struct xccdf_group *item, const char *newval);
2786 bool xccdf_group_set_abstract(struct xccdf_group *item, bool newval);
2788 bool xccdf_group_set_hidden(struct xccdf_group *item, bool newval);
2790 bool xccdf_group_set_prohibit_changes(struct xccdf_group *item, bool newval);
2792 bool xccdf_group_set_selected(struct xccdf_group *item, bool newval);
2794 bool xccdf_group_add_metadata(struct xccdf_group* item, const char* metadata);
2795 
2797 bool xccdf_value_set_id(struct xccdf_value *item, const char *newval);
2799 bool xccdf_value_set_cluster_id(struct xccdf_value *item, const char *newval);
2801 bool xccdf_value_set_extends(struct xccdf_value *item, const char *newval);
2803 bool xccdf_value_set_version(struct xccdf_value *item, const char *newval);
2805 bool xccdf_value_set_version_time(struct xccdf_value *item, const char *newval);
2807 bool xccdf_value_set_version_update(struct xccdf_value *item, const char *newval);
2809 bool xccdf_value_set_abstract(struct xccdf_value *item, bool newval);
2811 bool xccdf_value_set_hidden(struct xccdf_value *item, bool newval);
2813 bool xccdf_value_set_multiple(struct xccdf_value *item, bool newval);
2815 bool xccdf_value_set_prohibit_changes(struct xccdf_value *item, bool newval);
2817 bool xccdf_value_set_oper(struct xccdf_value * item, xccdf_operator_t oper);
2819 bool xccdf_value_set_interactive(struct xccdf_value *item, bool newval);
2821 bool xccdf_value_add_metadata(struct xccdf_value* item, const char* metadata);
2822 
2824 bool xccdf_status_set_date(struct xccdf_status *obj, time_t newval);
2826 bool xccdf_status_set_status(struct xccdf_status *obj, xccdf_status_type_t newval);
2827 
2829 bool xccdf_notice_set_id(struct xccdf_notice *obj, const char *newval);
2831 bool xccdf_notice_set_text(struct xccdf_notice *obj, struct oscap_text *newval);
2832 
2834 bool xccdf_model_set_system(struct xccdf_model *obj, const char *newval);
2835 
2837 bool xccdf_check_set_id(struct xccdf_check *obj, const char *newval);
2839 bool xccdf_check_set_system(struct xccdf_check *obj, const char *newval);
2841 bool xccdf_check_set_selector(struct xccdf_check *obj, const char *newval);
2843 bool xccdf_check_set_content(struct xccdf_check *obj, const char *newval);
2845 bool xccdf_check_set_oper(struct xccdf_check *obj, xccdf_bool_operator_t newval);
2847 bool xccdf_check_set_multicheck(struct xccdf_check *obj, bool newval);
2849 bool xccdf_check_set_negate(struct xccdf_check *obj, bool newval);
2850 
2852 bool xccdf_check_content_ref_set_name(struct xccdf_check_content_ref *obj, const char *newval);
2854 bool xccdf_check_content_ref_set_href(struct xccdf_check_content_ref *obj, const char *newval);
2855 
2857 bool xccdf_profile_note_set_reftag(struct xccdf_profile_note *obj, const char *newval);
2859 bool xccdf_profile_note_set_text(struct xccdf_profile_note *obj, struct oscap_text *newval);
2860 
2862 bool xccdf_check_import_set_name(struct xccdf_check_import *obj, const char *newval);
2864 bool xccdf_check_import_set_xpath(struct xccdf_check_import *obj, const char *newval);
2866 bool xccdf_check_import_set_content(struct xccdf_check_import *obj, const char *newval);
2867 
2869 bool xccdf_check_export_set_name(struct xccdf_check_export *obj, const char *newval);
2871 bool xccdf_check_export_set_value(struct xccdf_check_export *obj, const char *newval);
2872 
2874 bool xccdf_fix_set_strategy(struct xccdf_fix *obj, xccdf_strategy_t newval);
2876 bool xccdf_fix_set_disruption(struct xccdf_fix *obj, xccdf_level_t newval);
2878 bool xccdf_fix_set_complexity(struct xccdf_fix *obj, xccdf_level_t newval);
2880 bool xccdf_fix_set_reboot(struct xccdf_fix *obj, bool newval);
2882 bool xccdf_fix_set_content(struct xccdf_fix *obj, const char *newval);
2884 bool xccdf_fix_set_system(struct xccdf_fix *obj, const char *newval);
2886 bool xccdf_fix_set_platform(struct xccdf_fix *obj, const char *newval);
2888 bool xccdf_fix_set_id(struct xccdf_fix *obj, const char *newval);
2889 
2893 bool xccdf_fixtext_set_disruption(struct xccdf_fixtext *obj, xccdf_level_t newval);
2895 bool xccdf_fixtext_set_complexity(struct xccdf_fixtext *obj, xccdf_level_t newval);
2897 bool xccdf_fixtext_set_reboot(struct xccdf_fixtext *obj, bool newval);
2899 bool xccdf_fixtext_set_text(struct xccdf_fixtext *obj, struct oscap_text *newval);
2901 bool xccdf_fixtext_set_fixref(struct xccdf_fixtext *obj, const char *newval);
2902 
2904 bool xccdf_select_set_item(struct xccdf_select *obj, const char *newval);
2906 bool xccdf_select_set_selected(struct xccdf_select *obj, bool newval);
2907 
2911 bool xccdf_warning_set_text(struct xccdf_warning *obj, struct oscap_text *newval);
2914 
2916 struct xccdf_refine_rule * xccdf_refine_rule_clone(const struct xccdf_refine_rule * old_rule);
2918 bool xccdf_refine_rule_set_item(struct xccdf_refine_rule *obj, const char *newval);
2920 bool xccdf_refine_rule_set_selector(struct xccdf_refine_rule *obj, const char *newval);
2927 
2931 struct xccdf_refine_value * xccdf_refine_value_clone(const struct xccdf_refine_value * old_value);
2933 bool xccdf_refine_value_set_item(struct xccdf_refine_value *obj, const char *newval);
2935 bool xccdf_refine_value_set_selector(struct xccdf_refine_value *obj, const char *newval);
2938 
2940 struct xccdf_setvalue *xccdf_setvalue_new(void);
2942 struct xccdf_setvalue * xccdf_setvalue_clone(const struct xccdf_setvalue * old_value);
2944 bool xccdf_setvalue_set_item(struct xccdf_setvalue *obj, const char *newval);
2946 bool xccdf_setvalue_set_value(struct xccdf_setvalue *obj, const char *newval);
2948 bool xccdf_plain_text_set_id(struct xccdf_plain_text *obj, const char *newval);
2950 bool xccdf_plain_text_set_text(struct xccdf_plain_text *obj, const char *newval);
2951 
2953 bool xccdf_result_set_id(struct xccdf_result *item, const char *newval);
2955 bool xccdf_result_set_test_system(struct xccdf_result *item, const char *newval);
2957 bool xccdf_result_set_benchmark_uri(struct xccdf_result *item, const char *newval);
2959 bool xccdf_result_set_profile(struct xccdf_result *item, const char *newval);
2961 bool xccdf_result_set_start_time(struct xccdf_result *item, const char *newval);
2963 bool xccdf_result_set_end_time(struct xccdf_result *item, const char *newval);
2965 bool xccdf_result_set_version(struct xccdf_result *item, const char *newval);
2967 bool xccdf_result_add_metadata(struct xccdf_result *item, const char *metadata);
2968 
2970 bool xccdf_rule_result_set_time(struct xccdf_rule_result *obj, const char *newval);
2974 bool xccdf_rule_result_set_weight(struct xccdf_rule_result *obj, float newval);
2980 bool xccdf_rule_result_set_version(struct xccdf_rule_result *obj, const char *newval);
2982 bool xccdf_rule_result_set_idref(struct xccdf_rule_result *obj, const char *newval);
2983 
2985 bool xccdf_identity_set_authenticated(struct xccdf_identity *obj, bool newval);
2987 bool xccdf_identity_set_privileged(struct xccdf_identity *obj, bool newval);
2989 bool xccdf_identity_set_name(struct xccdf_identity *obj, const char *newval);
2990 
2992 bool xccdf_score_set_maximum(struct xccdf_score *obj, xccdf_numeric newval);
2994 bool xccdf_score_set_score(struct xccdf_score *obj, xccdf_numeric newval);
2996 bool xccdf_score_set_system(struct xccdf_score *obj, const char *newval);
2997 
2999 bool xccdf_override_set_time(struct xccdf_override *obj, const char *newval);
3005 bool xccdf_override_set_authority(struct xccdf_override *obj, const char *newval);
3007 bool xccdf_override_set_remark(struct xccdf_override *obj, struct oscap_text *newval);
3008 
3012 bool xccdf_message_set_content(struct xccdf_message *obj, const char *newval);
3013 
3015 bool xccdf_target_fact_set_string(struct xccdf_target_fact *fact, const char *str);
3019 bool xccdf_target_fact_set_boolean(struct xccdf_target_fact *fact, bool val);
3021 bool xccdf_target_fact_set_name(struct xccdf_target_fact *obj, const char *newval);
3022 
3026 bool xccdf_target_identifier_set_system(struct xccdf_target_identifier *ti, const char *newval);
3028 bool xccdf_target_identifier_set_href(struct xccdf_target_identifier *ti, const char *newval);
3030 bool xccdf_target_identifier_set_name(struct xccdf_target_identifier *ti, const char *newval);
3031 
3033 bool xccdf_instance_set_context(struct xccdf_instance *obj, const char *newval);
3035 bool xccdf_instance_set_parent_context(struct xccdf_instance *obj, const char *newval);
3037 bool xccdf_instance_set_content(struct xccdf_instance *obj, const char *newval);
3038 
3040 bool xccdf_tailoring_set_id(struct xccdf_tailoring *tailoring, const char* newval);
3042 bool xccdf_tailoring_set_version(struct xccdf_tailoring *tailoring, const char* newval);
3044 bool xccdf_tailoring_set_version_update(struct xccdf_tailoring *tailoring, const char *newval);
3046 bool xccdf_tailoring_set_version_time(struct xccdf_tailoring *tailoring, const char *newval);
3048 bool xccdf_tailoring_set_benchmark_ref(struct xccdf_tailoring *tailoring, const char *newval);
3050 bool xccdf_tailoring_set_benchmark_ref_version(struct xccdf_tailoring *tailoring, const char *newval);
3051 
3053 bool xccdf_tailoring_add_profile(struct xccdf_tailoring *tailoring, struct xccdf_profile *profile);
3054 
3055 // @memberof xccdf_ident
3056 void xccdf_ident_set_id(struct xccdf_ident * ident, const char *id);
3057 // @memberof xccdf_ident
3058 void xccdf_ident_set_system(struct xccdf_ident * ident, const char *sys);
3059 
3061 bool xccdf_benchmark_add_result(struct xccdf_benchmark *bench, struct xccdf_result *result);
3062 
3064 bool xccdf_benchmark_add_description(struct xccdf_benchmark *item, struct oscap_text *newval);
3066 bool xccdf_benchmark_add_platform(struct xccdf_benchmark *item, const char *newval);
3068 bool xccdf_benchmark_add_reference(struct xccdf_benchmark *item, struct oscap_reference *newval);
3070 bool xccdf_benchmark_add_status(struct xccdf_benchmark *item, struct xccdf_status *newval);
3072 bool xccdf_benchmark_add_dc_status(struct xccdf_benchmark *item, struct oscap_reference *newval);
3074 bool xccdf_benchmark_add_title(struct xccdf_benchmark *item, struct oscap_text *newval);
3076 bool xccdf_benchmark_add_front_matter(struct xccdf_benchmark *item, struct oscap_text *newval);
3078 //bool xccdf_benchmark_add_item(struct xccdf_benchmark *item, struct xccdf_item *newval);
3080 bool xccdf_benchmark_add_model(struct xccdf_benchmark *item, struct xccdf_model *newval);
3082 bool xccdf_benchmark_add_notice(struct xccdf_benchmark *item, struct xccdf_notice *newval);
3084 bool xccdf_benchmark_add_plain_text(struct xccdf_benchmark *item, struct xccdf_plain_text *newval);
3086 bool xccdf_benchmark_add_profile(struct xccdf_benchmark *item, struct xccdf_profile *newval);
3088 bool xccdf_benchmark_add_rear_matter(struct xccdf_benchmark *item, struct oscap_text *newval);
3090 bool xccdf_benchmark_add_rule(struct xccdf_benchmark *benchmark, struct xccdf_rule *rule);
3092 bool xccdf_benchmark_add_group(struct xccdf_benchmark *benchmark, struct xccdf_group *group);
3094 bool xccdf_benchmark_add_value(struct xccdf_benchmark *benchmark, struct xccdf_value *value);
3096 bool xccdf_benchmark_add_content(struct xccdf_benchmark *bench, struct xccdf_item *item);
3097 
3099 bool xccdf_profile_add_select(struct xccdf_profile *item, struct xccdf_select *newval);
3101 bool xccdf_profile_add_setvalue(struct xccdf_profile *item, struct xccdf_setvalue *newval);
3103 bool xccdf_profile_add_refine_value(struct xccdf_profile *item, struct xccdf_refine_value *newval);
3105 bool xccdf_profile_add_refine_rule(struct xccdf_profile *item, struct xccdf_refine_rule *newval);
3106 
3108 bool xccdf_profile_add_description(struct xccdf_profile *item, struct oscap_text *newval);
3110 bool xccdf_profile_add_platform(struct xccdf_profile *item, const char *newval);
3112 bool xccdf_profile_add_reference(struct xccdf_profile *item, struct oscap_reference *newval);
3114 bool xccdf_profile_add_status(struct xccdf_profile *item, struct xccdf_status *newval);
3116 bool xccdf_profile_add_dc_status(struct xccdf_profile *item, struct oscap_reference *newval);
3118 bool xccdf_profile_add_title(struct xccdf_profile *item, struct oscap_text *newval);
3119 
3121 bool xccdf_rule_add_description(struct xccdf_rule *item, struct oscap_text *newval);
3123 bool xccdf_rule_add_platform(struct xccdf_rule *item, const char *newval);
3125 bool xccdf_rule_add_question(struct xccdf_rule *item, struct oscap_text *newval);
3127 bool xccdf_rule_add_rationale(struct xccdf_rule *item, struct oscap_text *newval);
3129 bool xccdf_rule_add_reference(struct xccdf_rule *item, struct oscap_reference *newval);
3131 bool xccdf_rule_add_status(struct xccdf_rule *item, struct xccdf_status *newval);
3133 bool xccdf_rule_add_dc_status(struct xccdf_rule *item, struct oscap_reference *newval);
3135 bool xccdf_rule_add_title(struct xccdf_rule *item, struct oscap_text *newval);
3137 bool xccdf_rule_add_warning(struct xccdf_rule *item, struct xccdf_warning *newval);
3139 bool xccdf_rule_add_ident(struct xccdf_rule *item, struct xccdf_ident *newval);
3141 bool xccdf_rule_add_check(struct xccdf_rule *item, struct xccdf_check *newval);
3143 bool xccdf_rule_add_profile_note(struct xccdf_rule *item, struct xccdf_profile_note *newval);
3145 bool xccdf_rule_add_fix(struct xccdf_rule *item, struct xccdf_fix *newval);
3147 bool xccdf_rule_add_fixtext(struct xccdf_rule *item, struct xccdf_fixtext *newval);
3148 
3150 bool xccdf_group_add_description(struct xccdf_group *item, struct oscap_text *newval);
3152 bool xccdf_group_add_platform(struct xccdf_group *item, const char *newval);
3154 bool xccdf_group_add_question(struct xccdf_group *item, struct oscap_text *newval);
3156 bool xccdf_group_add_rationale(struct xccdf_group *item, struct oscap_text *newval);
3158 bool xccdf_group_add_reference(struct xccdf_group *item, struct oscap_reference *newval);
3160 bool xccdf_group_add_status(struct xccdf_group *item, struct xccdf_status *newval);
3162 bool xccdf_group_add_dc_status(struct xccdf_group *item, struct oscap_reference *newval);
3164 bool xccdf_group_add_title(struct xccdf_group *item, struct oscap_text *newval);
3166 bool xccdf_group_add_warning(struct xccdf_group *item, struct xccdf_warning *newval);
3168 bool xccdf_group_add_rule(struct xccdf_group *group, struct xccdf_rule *item);
3170 bool xccdf_group_add_group(struct xccdf_group *group, struct xccdf_group *item);
3172 bool xccdf_group_add_value(struct xccdf_group *group, struct xccdf_value *item);
3174 bool xccdf_group_add_content(struct xccdf_group *rule, struct xccdf_item *item);
3175 
3177 bool xccdf_value_add_description(struct xccdf_value *item, struct oscap_text *newval);
3179 bool xccdf_value_add_question(struct xccdf_value *item, struct oscap_text *newval);
3181 bool xccdf_value_add_reference(struct xccdf_value *item, struct oscap_reference *newval);
3183 bool xccdf_value_add_status(struct xccdf_value *item, struct xccdf_status *newval);
3185 bool xccdf_value_add_dc_status(struct xccdf_value *item, struct oscap_reference *newval);
3187 bool xccdf_value_add_title(struct xccdf_value *item, struct oscap_text *newval);
3189 bool xccdf_value_add_warning(struct xccdf_value *item, struct xccdf_warning *newval);
3190 
3192 bool xccdf_check_add_import(struct xccdf_check *obj, struct xccdf_check_import *item);
3194 bool xccdf_check_add_export(struct xccdf_check *obj, struct xccdf_check_export *item);
3196 bool xccdf_check_add_content_ref(struct xccdf_check *obj, struct xccdf_check_content_ref *item);
3198 bool xccdf_check_add_child(struct xccdf_check *obj, struct xccdf_check *item);
3200 bool xccdf_select_add_remark(struct xccdf_select *obj, struct oscap_text *item);
3202 bool xccdf_refine_value_add_remark(struct xccdf_refine_value *obj, struct oscap_text *item);
3204 bool xccdf_result_add_rule_result(struct xccdf_result *item, struct xccdf_rule_result *newval);
3206 bool xccdf_result_add_setvalue(struct xccdf_result *item, struct xccdf_setvalue *newval);
3208 bool xccdf_result_add_target_fact(struct xccdf_result *item, struct xccdf_target_fact *newval);
3212 bool xccdf_result_add_remark(struct xccdf_result *item, struct oscap_text *newval);
3214 bool xccdf_result_add_organization(struct xccdf_result *item, const char *newval);
3216 bool xccdf_result_add_target(struct xccdf_result *item, const char *newval);
3218 bool xccdf_result_add_identity(struct xccdf_result *item, struct xccdf_identity *newval);
3220 bool xccdf_result_add_score(struct xccdf_result *item, struct xccdf_score *newval);
3222 bool xccdf_result_add_title(struct xccdf_result *item, struct oscap_text *newval);
3224 bool xccdf_result_add_target_address(struct xccdf_result *item, const char *newval);
3226 bool xccdf_rule_result_add_ident(struct xccdf_rule_result *obj, struct xccdf_ident *item);
3228 bool xccdf_rule_result_add_fix(struct xccdf_rule_result *obj, struct xccdf_fix *item);
3230 bool xccdf_rule_result_add_check(struct xccdf_rule_result *obj, struct xccdf_check *item);
3232 bool xccdf_rule_result_add_override(struct xccdf_rule_result *obj, struct xccdf_override *item);
3234 bool xccdf_rule_result_add_message(struct xccdf_rule_result *obj, struct xccdf_message *item);
3236 bool xccdf_rule_result_add_instance(struct xccdf_rule_result *obj, struct xccdf_instance *item);
3238 bool xccdf_item_add_description(struct xccdf_item *item, struct oscap_text *newval);
3240 bool xccdf_item_add_platform(struct xccdf_item *item, const char *newval);
3242 bool xccdf_item_add_question(struct xccdf_item *item, struct oscap_text *newval);
3244 bool xccdf_item_add_rationale(struct xccdf_item *item, struct oscap_text *newval);
3246 bool xccdf_item_add_reference(struct xccdf_item *item, struct oscap_reference *newval);
3248 bool xccdf_item_add_dc_status(struct xccdf_item *item, struct oscap_reference *newval);
3250 bool xccdf_item_add_status(struct xccdf_item *item, struct xccdf_status *newval);
3252 bool xccdf_item_add_title(struct xccdf_item *item, struct oscap_text *newval);
3254 bool xccdf_item_add_warning(struct xccdf_item *item, struct xccdf_warning *newval);
3256 bool xccdf_refine_rule_add_remark(struct xccdf_refine_rule *obj, struct oscap_text *item);
3257 
3259 bool xccdf_rule_add_requires(struct xccdf_rule *rule, struct oscap_stringlist *requires);
3261 bool xccdf_group_add_requires(struct xccdf_group *group, struct oscap_stringlist *requires);
3263 bool xccdf_item_add_requires(struct xccdf_item *item, struct oscap_stringlist *requires);
3265 bool xccdf_rule_add_conflicts(struct xccdf_rule *rule, const char *conflicts);
3267 bool xccdf_group_add_conflicts(struct xccdf_group *group, const char *conflicts);
3269 bool xccdf_item_add_conflicts(struct xccdf_item *item, const char *conflicts);
3270 
3271 /************************************************************
3272  ** @} End of Setters group */
3273 
3274 // remove operations
3275 
3336 
3337 
3338 // reset iterators
3361 
3362 
3363 // textual substitution interface
3364 
3370 typedef enum xccdf_subst_type {
3371  XCCDF_SUBST_NONE,
3376 
3387 typedef char*(*xccdf_substitution_func)(xccdf_subst_type_t type, const char *id, void *arg);
3388 
3389 
3400 OSCAP_DEPRECATED(char* oscap_text_xccdf_substitute(const char *text, xccdf_substitution_func cb, void *arg));
3401 
3402 /************************************************************/
3404 
3405 
3406 #endif