00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034 #include <libxml/xmlreader.h>
00035
00036 #include "cce.h"
00037 #include "../common/list.h"
00038 #include "../common/util.h"
00039
00040 #ifndef _CCE_PRIV_H
00041 #define _CCE_PRIV_H
00042
00043 OSCAP_HIDDEN_START;
00044
00045 struct cce {
00046 struct oscap_list *entries;
00047 struct oscap_htable *entry;
00048 };
00049
00050 struct cce_entry {
00051 char *id;
00052 char *description;
00053 struct oscap_list *params;
00054 struct oscap_list *tech_mechs;
00055 struct oscap_list *references;
00056 };
00057
00058 struct cce_reference {
00059 char *source;
00060 char *value;
00061 };
00062
00063 void process_node(xmlTextReaderPtr reader, struct cce *cce);
00064 void process_description(xmlTextReaderPtr reader, struct cce_entry *cce);
00065 void process_parameter(xmlTextReaderPtr reader, struct cce_entry *cce);
00066 void process_tech_mech(xmlTextReaderPtr reader, struct cce_entry *cce);
00067 void process_refs(xmlTextReaderPtr reader, struct cce_entry *cce);
00068
00069 struct cce_entry *cce_entry_new_empty(void);
00070 void cce_reference_free(struct cce_reference *ref);
00071 void cce_entry_free(struct cce_entry *ref);
00072
00073 OSCAP_HIDDEN_END;
00074
00075 #endif