/* * Copyright 2009 Red Hat Inc., Durham, North Carolina. * All Rights Reserved. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * */ /** * @addtogroup XCCDF * @{ * @file xccdf.h * Open-scap XCCDF library interface. * @author Lukas Kuklinek */ #ifndef XCCDF_POLICY_H_ #define XCCDF_POLICY_H_ #include #include #include "oscap.h" #include struct xccdf_policy_model; struct xccdf_policy; struct xccdf_policy_iterator; struct xccdf_policy_model *xccdf_policy_model_new(struct xccdf_benchmark *); void xccdf_policy_model_free(struct xccdf_policy_model *); struct xccdf_benchmark *xccdf_policy_model_get_benchmark(struct xccdf_policy_model *); struct xccdf_policy_iterator *xccdf_policy_model_get_policies(struct xccdf_policy_model *); struct xccdf_rule_iterator *xccdf_policy_get_selected_rules(struct xccdf_policy *); struct xccdf_value_binding_iterator *xccdf_policy_get_bound_values(struct xccdf_policy *); void xccdf_policy_export_variables(struct xccdf_policy *, char *export_namespace, struct oscap_export_target *); void xccdf_policy_export_controls (struct xccdf_policy *, char *export_namespace, struct oscap_export_target *); void xccdf_policy_import_results(struct xccdf_policy *, char *import_namespace, struct oscap_import_stream *); void xccdf_policy_export_results(struct xccdf_policy *, char *scoring_model_namespace, struct oscap_export_target); #endif