Open SCAP Library: oval_agent_api.h Source File

Open SCAP Library

- Main Page
- Related Pages
- Modules
- Data Structures
- Files

- File List
- Globals

oval_agent_api.h
Go to the documentation of this file.
1
16 /*
17 * Copyright 2009,2010 Red Hat Inc., Durham, North Carolina.
18 * All Rights Reserved.
19 *
20 * This library is free software; you can redistribute it and/or
21 * modify it under the terms of the GNU Lesser General Public
22 * License as published by the Free Software Foundation; either
23 * version 2.1 of the License, or (at your option) any later version.
24 *
25 * This library is distributed in the hope that it will be useful,
26 * but WITHOUT ANY WARRANTY; without even the implied warranty of
27 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
28 * Lesser General Public License for more details.
29 *
30 * You should have received a copy of the GNU Lesser General Public
31 * License along with this library; if not, write to the Free Software
32 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
33 *
34 */
35
36
37 #ifndef OVAL_AGENT_API_H_
38 #define OVAL_AGENT_API_H_
39
40 #include "oval_definitions.h"
41 #include "oval_system_characteristics.h"
42 #include "oval_results.h"
43 #include "oval_variables.h"
44 #include "oval_probe.h"
45
46 struct oval_agent_session;
47
53 typedef struct oval_agent_session oval_agent_session_t;
54
60 oval_agent_session_t * oval_agent_new_session(struct oval_definition_model * model, const char * name);
61
65 struct oval_definition_model* oval_agent_get_definition_model(oval_agent_session_t* ag_sess);
66
73 void oval_agent_set_product_name(oval_agent_session_t *, char *);
74
79 int oval_agent_eval_definition(oval_agent_session_t *, const char *);
80
85 int oval_agent_get_definition_result(oval_agent_session_t *, const char *, oval_result_t *);
86
91 struct oval_result_definition * oval_agent_get_result_definition(oval_agent_session_t *ag_sess, const char *id);
92
96 int oval_agent_reset_session(oval_agent_session_t * ag_sess);
97
101 int oval_agent_abort_session(oval_agent_session_t *ag_sess);
102
103 typedef int (*agent_reporter)(const struct oval_result_definition * res_def, void *arg);
104
109 int oval_agent_eval_system(oval_agent_session_t * ag_sess, agent_reporter cb, void *arg);
110
114 struct oval_results_model * oval_agent_get_results_model(oval_agent_session_t * ag_sess);
118 const char * oval_agent_get_filename(oval_agent_session_t * ag_sess);
119
123 void oval_agent_destroy_session(oval_agent_session_t * ag_sess);
124
125
130 #endif