00001 00019 /* 00020 * Copyright 2008 Red Hat Inc., Durham, North Carolina. 00021 * All Rights Reserved. 00022 * 00023 * This library is free software; you can redistribute it and/or 00024 * modify it under the terms of the GNU Lesser General Public 00025 * License as published by the Free Software Foundation; either 00026 * version 2.1 of the License, or (at your option) any later version. 00027 * 00028 * This library is distributed in the hope that it will be useful, 00029 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00030 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00031 * Lesser General Public License for more details. 00032 * 00033 * You should have received a copy of the GNU Lesser General Public 00034 * License along with this library; if not, write to the Free Software 00035 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00036 * 00037 * Authors: 00038 * Maros Barabas <mbarabas@redhat.com> 00039 */ 00040 00041 #ifndef CPEDICT_PRIV_H_ 00042 #define CPEDICT_PRIV_H_ 00043 00044 #include <libxml/xmlreader.h> 00045 #include <libxml/xmlwriter.h> 00046 #include <stdlib.h> 00047 00048 #include "cpeuri.h" 00049 #include "../common/public/oscap.h" 00050 #include "../common/util.h" 00051 #include "../common/elements.h" 00052 00056 OSCAP_HIDDEN_START; 00057 /* @endcond */ 00058 00063 struct cpe_check; 00064 00069 struct cpe_reference; 00070 00075 struct cpe_item; 00076 00081 struct cpe_dict_model; 00082 00087 struct cpe_item_metadata; 00088 00093 struct cpe_generator; 00094 00099 struct cpe_vendor; 00104 struct cpe_product; 00109 struct cpe_version; 00114 struct cpe_update; 00119 struct cpe_edition; 00124 struct cpe_language; 00125 00138 struct cpe_dict_model *cpe_dict_model_parse_xml(const struct oscap_import_source *source); 00139 00146 struct cpe_generator *cpe_generator_parse(xmlTextReaderPtr reader); 00147 00155 struct cpe_item *cpe_item_parse(xmlTextReaderPtr reader); 00156 00163 struct cpe_vendor *cpe_vendor_parse(xmlTextReaderPtr reader); 00164 00172 struct cpe_dict_model *cpe_dict_model_parse(xmlTextReaderPtr reader); 00173 00188 void cpe_dict_model_export_xml(const struct cpe_dict_model *dict, const struct oscap_export_target *target); 00189 00196 void cpe_dict_export(const struct cpe_dict_model *dict, xmlTextWriterPtr writer); 00197 00204 void cpe_generator_export(const struct cpe_generator *generator, xmlTextWriterPtr writer); 00205 00212 void cpe_item_export(const struct cpe_item *item, xmlTextWriterPtr writer); 00213 00220 void cpe_vendor_export(const struct cpe_vendor *vendor, xmlTextWriterPtr writer); 00226 OSCAP_HIDDEN_END; 00227 /* @endcond */ 00228 00233 #endif