/usr/include/openscap/oval_agent_api.h is in libopenscap-dev 0.8.0-4build1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 | /**
* @addtogroup OVAL
* @{
* @addtogroup OVALAGENT
* OVAL Agent interface
*
* This is a high level API for system probing and OVAL Definition content evaluation.
* @{
*
* @file
*
* @author "David Niemoller" <David.Niemoller@g2-inc.com>
* @author "Peter Vrabec" <pvrabec@gmail.com>
*/
/*
* Copyright 2009,2010 Red Hat Inc., Durham, North Carolina.
* All Rights Reserved.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
*/
#ifndef OVAL_AGENT_API_H_
#define OVAL_AGENT_API_H_
#include "oval_definitions.h"
#include "oval_system_characteristics.h"
#include "oval_results.h"
#include "oval_variables.h"
#include "oval_probe.h"
#include "reporter.h"
struct oval_agent_session;
/**
* @var oval_agent_session_t
* Agent session consists of connection to system checking engine,
* definition model, system characteristics model and results model.
*/
typedef struct oval_agent_session oval_agent_session_t;
/**
* Create new session for OVAL agent from OVAL definition model
* @param model OVAL Definition model
* @param name Name of file that can be referenced from XCCDF Benchmark
*/
oval_agent_session_t * oval_agent_new_session(struct oval_definition_model * model, const char * name);
/**
* Probe the system and evaluate specified definition
* @return 0 on success; -1 error; 1 warning
*/
int oval_agent_eval_definition(oval_agent_session_t *, const char *);
/**
* Get the OVAL result of a definition from an agent session
* @return 0 on success; -1 error
*/
int oval_agent_get_definition_result(oval_agent_session_t *, const char *, oval_result_t *);
/**
* Clean resuls that were generated in this agent session
*/
int oval_agent_reset_session(oval_agent_session_t * ag_sess);
/**
* Abort a running probe session
*/
int oval_agent_abort_session(oval_agent_session_t *ag_sess);
/**
* Probe and evaluate all definitions from the content, call the callback functions upon single evaluation
* @return 0 on success; -1 error; 1 warning
*/
int oval_agent_eval_system(oval_agent_session_t * ag_sess, oscap_reporter cb, void *arg);
/**
* Get a result model from agent session
*/
struct oval_results_model * oval_agent_get_results_model(oval_agent_session_t * ag_sess);
/**
* Get a filename under which was created
*/
const char * oval_agent_get_filename(oval_agent_session_t * ag_sess);
/**
* Finish OVAL agent session
*/
void oval_agent_destroy_session(oval_agent_session_t * ag_sess);
/**
* @) END OVALDEF
* @) END OVALAGENT
*/
#endif /**OVAL_AGENT_API_H_ */
|