Open SCAP Library

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
oval_agent_session
Definition: oval_agent.c:53
oval_results_model
OVAL Results Model holds OVAL results structure instances.
Definition: oval_resModel.c:54
oval_agent_get_filename
const char * oval_agent_get_filename(oval_agent_session_t *ag_sess)
Get a filename under which was created.
Definition: oval_agent.c:293
oval_agent_new_session
oval_agent_session_t * oval_agent_new_session(struct oval_definition_model *model, const char *name)
Create new session for OVAL agent from OVAL definition model.
Definition: oval_agent.c:89
oval_agent_reset_session
int oval_agent_reset_session(oval_agent_session_t *ag_sess)
Clean resuls that were generated in this agent session.
Definition: oval_agent.c:208
oval_agent_abort_session
int oval_agent_abort_session(oval_agent_session_t *ag_sess)
Abort a running probe session.
Definition: oval_agent.c:239
oval_agent_set_product_name
void oval_agent_set_product_name(oval_agent_session_t *, char *)
Set a product name for the provided agent session.
Definition: oval_agent.c:137
oval_agent_get_results_model
struct oval_results_model * oval_agent_get_results_model(oval_agent_session_t *ag_sess)
Get a result model from agent session.
Definition: oval_agent.c:287
oval_agent_eval_definition
int oval_agent_eval_definition(oval_agent_session_t *, const char *)
Probe the system and evaluate specified definition.
Definition: oval_agent.c:161
oval_probe.h
OVAL probe interface API public header.
oval_agent_get_definition_result
int oval_agent_get_definition_result(oval_agent_session_t *, const char *, oval_result_t *)
Get the OVAL result of a definition from an agent session.
Definition: oval_agent.c:173
oval_agent_destroy_session
void oval_agent_destroy_session(oval_agent_session_t *ag_sess)
Finish OVAL agent session.
Definition: oval_agent.c:299
oval_agent_get_definition_model
struct oval_definition_model * oval_agent_get_definition_model(oval_agent_session_t *ag_sess)
Retrieves OVAL definition model associated with given session.
Definition: oval_agent.c:132
oval_agent_get_result_definition
struct oval_result_definition * oval_agent_get_result_definition(oval_agent_session_t *ag_sess, const char *id)
Get the OVAL result definition from an agent session.
Definition: oval_agent.c:195
oval_result_t
oval_result_t
Result values for the evaluation of an OVAL Definition or an OVAL Test.
Definition: oval_types.h:327
oval_result_definition
Definition: oval_resultDefinition.c:46
oval_system_characteristics.h
oval_definition_model
Oval definition model.
Definition: oval_defModel.c:51
oval_definitions.h
oval_results.h
oval_agent_eval_system
int oval_agent_eval_system(oval_agent_session_t *ag_sess, agent_reporter cb, void *arg)
Probe and evaluate all definitions from the content, call the callback functions upon single evaluati...
Definition: oval_agent.c:247
oval_variables.h