|
Open SCAP Library
|
00001 /* 00002 * Copyright 2014 Red Hat Inc., Durham, North Carolina. 00003 * All Rights Reserved. 00004 * 00005 * This library is free software; you can redistribute it and/or 00006 * modify it under the terms of the GNU Lesser General Public 00007 * License as published by the Free Software Foundation; either 00008 * version 2.1 of the License, or (at your option) any later version. 00009 * 00010 * This library is distributed in the hope that it will be useful, 00011 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00013 * Lesser General Public License for more details. 00014 * 00015 * You should have received a copy of the GNU Lesser General Public 00016 * License along with this library; if not, write to the Free Software 00017 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00018 * 00019 * Author: 00020 * Šimon Lukašík 00021 */ 00022 #ifndef DS_SDS_SESSION_H 00023 #define DS_SDS_SESSION_H 00024 00025 #ifdef HAVE_CONFIG_H 00026 #include <config.h> 00027 #endif 00028 00029 #include "oscap.h" 00030 #include "oscap_source.h" 00031 #include "scap_ds.h" 00032 #include "oscap_download_cb.h" 00033 00047 struct ds_sds_session; 00048 00057 struct ds_sds_session *ds_sds_session_new_from_source(struct oscap_source *source); 00058 00065 struct ds_sds_index *ds_sds_session_get_sds_idx(struct ds_sds_session *session); 00066 00071 void ds_sds_session_free(struct ds_sds_session *sds_session); 00072 00083 struct oscap_source *ds_sds_session_select_checklist(struct ds_sds_session *session, const char *datastream_id, const char *component_id, const char *benchmark_id); 00084 00093 struct oscap_source *ds_sds_session_select_tailoring(struct ds_sds_session *session, const char *component_id); 00094 00103 int ds_sds_session_set_datastream_id(struct ds_sds_session *session, const char *datastream_id); 00104 00111 const char *ds_sds_session_get_datastream_id(const struct ds_sds_session *session); 00112 00119 const char *ds_sds_session_get_checklist_id(const struct ds_sds_session *session); 00120 00132 struct oscap_source *ds_sds_session_get_component_by_href(struct ds_sds_session *session, const char *href); 00133 00142 bool ds_sds_session_can_register_component(struct ds_sds_session *session, const char *container_name, const char *component_id); 00143 00155 int ds_sds_session_register_component_with_dependencies(struct ds_sds_session *session, const char *container_name, const char *component_id, const char *target_filename); 00156 00163 int ds_sds_session_dump_component_files(struct ds_sds_session *session); 00164 00172 int ds_sds_session_set_target_dir(struct ds_sds_session *session, const char *target_dir); 00173 00184 void ds_sds_session_reset(struct ds_sds_session *session); 00185 00194 void ds_sds_session_set_remote_resources(struct ds_sds_session *session, bool allowed, download_progress_calllback_t callback); 00195 00204 char *ds_sds_session_get_html_guide(struct ds_sds_session *session, const char *profile_id); 00205 00206 #endif
1.7.3