Open SCAP Library
/home/pvrabec/project/openscap/openscap-0.8.1/src/OVAL/public/oval_directives.h
Go to the documentation of this file.
00001 
00015 /*
00016  * Copyright 2011 Red Hat Inc., Durham, North Carolina.
00017  * All Rights Reserved.
00018  *
00019  * This library is free software; you can redistribute it and/or
00020  * modify it under the terms of the GNU Lesser General Public
00021  * License as published by the Free Software Foundation; either
00022  * version 2.1 of the License, or (at your option) any later version.
00023  *
00024  * This library is distributed in the hope that it will be useful,
00025  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00026  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00027  * Lesser General Public License for more details.
00028  *
00029  * You should have received a copy of the GNU Lesser General Public
00030  * License along with this library; if not, write to the Free Software
00031  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00032  *
00033  * Authors:
00034  *      "David Niemoller" <David.Niemoller@g2-inc.com>
00035  */
00036 
00037 #ifndef OVAL_DIRECTIVES_H_
00038 #define OVAL_DIRECTIVES_H_
00039 
00040 #include "oval_types.h"
00041 
00046 typedef enum {
00047         OVAL_DIRECTIVE_CONTENT_UNKNOWN = 0, 
00048         OVAL_DIRECTIVE_CONTENT_THIN = 1,    
00049         OVAL_DIRECTIVE_CONTENT_FULL = 2     
00050 } oval_result_directive_content_t;
00051 
00052 
00057 struct oval_directives_model;
00058 
00062 struct oval_directives_model *oval_directives_model_new(void);
00066 void oval_directives_model_free(struct oval_directives_model *);
00070 int oval_directives_model_import(struct oval_directives_model *, char *);
00074 struct oval_generator *oval_directives_model_get_generator(struct oval_directives_model *);
00078 struct oval_result_directives *oval_directives_model_get_defdirs(struct oval_directives_model *);
00082 struct oval_result_directives *oval_directives_model_get_classdir(struct oval_directives_model *, oval_definition_class_t);
00086 struct oval_result_directives *oval_directives_model_get_new_classdir(struct oval_directives_model *, oval_definition_class_t);
00090 int oval_directives_model_export(struct oval_directives_model *, const char *);
00091 
00092 
00093 
00098 struct oval_result_directives;
00103 struct oval_result_directives *oval_result_directives_new(void);
00107 void oval_result_directives_free(struct oval_result_directives *);
00112 void oval_result_directives_set_reported(struct oval_result_directives *, int flag, bool val);
00117 void oval_result_directives_set_content(struct oval_result_directives *, int flag, oval_result_directive_content_t);
00121 void oval_result_directives_set_included(struct oval_result_directives *, bool);
00125 bool oval_result_directives_get_reported(struct oval_result_directives *, oval_result_t);
00129 bool oval_result_directives_get_included(struct oval_result_directives *);
00133 oval_result_directive_content_t oval_result_directives_get_content(struct oval_result_directives *, oval_result_t);
00134 
00135 #endif                          /* OVAL_DIRECTIVES_H_ */
00136