00001 00014 /* 00015 * Copyright 2008 Red Hat Inc., Durham, North Carolina. 00016 * All Rights Reserved. 00017 * 00018 * This library is free software; you can redistribute it and/or 00019 * modify it under the terms of the GNU Lesser General Public 00020 * License as published by the Free Software Foundation; either 00021 * version 2.1 of the License, or (at your option) any later version. 00022 * 00023 * This library is distributed in the hope that it will be useful, 00024 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00025 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00026 * Lesser General Public License for more details. 00027 * 00028 * You should have received a copy of the GNU Lesser General Public 00029 * License along with this library; if not, write to the Free Software 00030 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00031 * 00032 * Authors: 00033 * Maros Barabas <mbarabas@redhat.com> 00034 */ 00035 00036 #ifndef CPEDICT_PRIV_H_ 00037 #define CPEDICT_PRIV_H_ 00038 00039 #include <libxml/xmlreader.h> 00040 #include <libxml/xmlwriter.h> 00041 #include <stdlib.h> 00042 00043 #include "cpeuri.h" 00044 #include "../common/public/oscap.h" 00045 #include "../common/util.h" 00046 #include "../common/elements.h" 00047 00048 OSCAP_HIDDEN_START; 00049 00054 struct cpe_check; 00055 00060 struct cpe_reference; 00061 00066 struct cpe_item; 00067 00072 struct cpe_dict_model; 00073 00078 struct cpe_item_metadata; 00079 00084 struct cpe_generator; 00085 00090 struct cpe_vendor; 00095 struct cpe_product; 00100 struct cpe_version; 00105 struct cpe_update; 00110 struct cpe_edition; 00115 struct cpe_language; 00116 00122 struct cpe_dict_model * cpe_dict_model_parse_xml(const struct oscap_import_source *source); 00123 00130 struct cpe_generator * cpe_generator_parse(xmlTextReaderPtr reader); 00131 00139 struct cpe_item * cpe_item_parse(xmlTextReaderPtr reader); 00140 00147 struct cpe_vendor * cpe_vendor_parse(xmlTextReaderPtr reader); 00148 00156 struct cpe_dict_model * cpe_dict_model_parse(xmlTextReaderPtr reader); 00157 00164 void cpe_dict_model_export_xml(struct cpe_dict_model * dict, const struct oscap_export_target * target); 00165 00172 void cpe_dict_export(const struct cpe_dict_model * dict, xmlTextWriterPtr writer); 00173 00180 void cpe_generator_export(const struct cpe_generator * generator, xmlTextWriterPtr writer); 00181 00188 void cpe_item_export(const struct cpe_item * item, xmlTextWriterPtr writer); 00189 00196 void cpe_vendor_export(const struct cpe_vendor * vendor, xmlTextWriterPtr writer); 00197 00198 OSCAP_HIDDEN_END; 00199 00200 #endif 00201