• Main Page
  • Related Pages
  • Modules
  • Data Structures
  • Files
  • File List
  • Globals

/home/pvrabec/project/openscap/openscap-0.6.4/src/CCE/cce_priv.h

00001 /*
00002  * @file cce_priv.h
00003  * \brief Interface to Common Configuration Enumeration (CCE) - internal definitions.
00004  *
00005  * See more details at http://cce.mitre.org/
00006  */
00007 
00008 /*
00009  * Copyright 2008-2009 Red Hat Inc., Durham, North Carolina.
00010  * All Rights Reserved.
00011  *
00012  * This library is free software; you can redistribute it and/or
00013  * modify it under the terms of the GNU Lesser General Public
00014  * License as published by the Free Software Foundation; either
00015  * version 2.1 of the License, or (at your option) any later version.
00016  *
00017  * This library is distributed in the hope that it will be useful,
00018  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00019  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00020  * Lesser General Public License for more details.
00021  *
00022  * You should have received a copy of the GNU Lesser General Public
00023  * License along with this library; if not, write to the Free Software
00024  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00025  *
00026  * Authors:
00027  *      Lukas Kuklinek <lkuklinek@redhat.com>
00028  *      Riley C. Porter <Riley.Porter@g2-inc.com>
00029  */
00030 
00031 #include <libxml/xmlreader.h>
00032 
00033 #include "cce.h"
00034 #include "../common/list.h"
00035 #include "../common/util.h"
00036 
00037 #ifndef _CCE_PRIV_H
00038 #define _CCE_PRIV_H
00039 
00040 OSCAP_HIDDEN_START;
00041 
00042 struct cce {
00043         struct oscap_list *entries;
00044         struct oscap_htable *entry;
00045 };
00046 
00047 struct cce_entry {
00048         char *id;
00049         char *description;
00050         struct oscap_list *params;      // list of C-strings
00051         struct oscap_list *tech_mechs;  // list of C-strings
00052         struct oscap_list *references;  // list of 'struct cce_reference'
00053 };
00054 
00055 struct cce_reference {
00056         char *source;
00057         char *value;
00058 };
00059 
00060 void process_node(xmlTextReaderPtr reader, struct cce *cce);
00061 void process_description(xmlTextReaderPtr reader, struct cce_entry *cce);
00062 void process_parameter(xmlTextReaderPtr reader, struct cce_entry *cce);
00063 void process_tech_mech(xmlTextReaderPtr reader, struct cce_entry *cce);
00064 void process_refs(xmlTextReaderPtr reader, struct cce_entry *cce);
00065 
00066 struct cce_entry *cce_entry_new_empty(void);
00067 void cce_reference_free(struct cce_reference *ref);
00068 void cce_entry_free(struct cce_entry *ref);
00069 
00070 OSCAP_HIDDEN_END;
00071 
00072 #endif

Generated on Wed Oct 20 2010 for Open SCAP Library by  doxygen 1.7.1