oval_definitions.h   oval_definitions.h 
skipping to change at line 17 skipping to change at line 17
* *
* Class diagram * Class diagram
* \image html definition_model.png * \image html definition_model.png
* *
* @file * @file
* *
* @author "David Niemoller" <David.Niemoller@g2-inc.com> * @author "David Niemoller" <David.Niemoller@g2-inc.com>
*/ */
/* /*
* Copyright 2009-2010 Red Hat Inc., Durham, North Carolina. * Copyright 2009-2013 Red Hat Inc., Durham, North Carolina.
* All Rights Reserved. * All Rights Reserved.
* *
* This library is free software; you can redistribute it and/or * This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public * modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either * License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version. * 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, * This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of * but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
skipping to change at line 41 skipping to change at line 41
* License along with this library; if not, write to the Free Software * License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 US A * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 US A
* *
* Authors: * Authors:
* "David Niemoller" <David.Niemoller@g2-inc.com> * "David Niemoller" <David.Niemoller@g2-inc.com>
*/ */
#ifndef OVAL_DEFINITIONS #ifndef OVAL_DEFINITIONS
#define OVAL_DEFINITIONS #define OVAL_DEFINITIONS
#include "oval_adt.h"
#include "oval_types.h" #include "oval_types.h"
#include "oval_version.h" #include "oval_version.h"
#include <stdbool.h> #include <stdbool.h>
/** /**
* Affected family enumeration. * Affected family enumeration.
* Since new family values can only be added with new version of the schema , * Since new family values can only be added with new version of the schema ,
* the value OVAL_AFCFML_UNDEFINED is to be used when the desired family is not available * the value OVAL_AFCFML_UNDEFINED is to be used when the desired family is not available
*/ */
typedef enum { typedef enum {
skipping to change at line 567 skipping to change at line 568
* - If @ref oval_component_get_type == @ref OVAL_COMPONENT_VARREF - Va riable component * - If @ref oval_component_get_type == @ref OVAL_COMPONENT_VARREF - Va riable component
* - Oval_variable_component binds an Oval_variable. The compo nent evaluation is the result of the evaluation of the bound * - Oval_variable_component binds an Oval_variable. The compo nent evaluation is the result of the evaluation of the bound
* Oval_variable. * Oval_variable.
*/ */
struct oval_component; struct oval_component;
/** /**
* @struct oval_component_iterator * @struct oval_component_iterator
* @see oval_component_get_function_components * @see oval_component_get_function_components
*/ */
struct oval_component_iterator; struct oval_component_iterator;
/**
* @struct oval_string_iterator
* @see oval_definition_get_notes
* @see oval_test_get_notes
* @see oval_object_get_notes
* @see oval_state_get_notes
* @see oval_affected_get_platforms
* @see oval_affected_get_products
*/
struct oval_string_iterator;
/** /**
* @struct oval_generator * @struct oval_generator
*/ */
struct oval_generator; struct oval_generator;
struct oval_generator *oval_generator_new(void); struct oval_generator *oval_generator_new(void);
void oval_generator_free(struct oval_generator *generator); void oval_generator_free(struct oval_generator *generator);
struct oval_generator *oval_generator_clone(struct oval_generator *old_gene rator); struct oval_generator *oval_generator_clone(struct oval_generator *old_gene rator);
char *oval_generator_get_product_name(struct oval_generator *generator); char *oval_generator_get_product_name(struct oval_generator *generator);
skipping to change at line 3149 skipping to change at line 3140
int oval_component_iterator_remaining(struct oval_component_iterator *); int oval_component_iterator_remaining(struct oval_component_iterator *);
/** @} */ /** @} */
/** /**
* @name Evaluators * @name Evaluators
* @{ * @{
*/ */
/** @} */ /** @} */
/** /**
* @name Iterators
* @{
*/
/**
* Returns <b>true</b> if the iterator is not exhausted.
* @memberof oval_string_iterator
*/
bool oval_string_iterator_has_more(struct oval_string_iterator *);
/**
* Returns the next instance of char *.
* @memberof oval_string_iterator
*/
char *oval_string_iterator_next(struct oval_string_iterator *);
/**
* Return number for remaining char * elements
* @memberof oval_string_iterator
*/
int oval_string_iterator_remaining(struct oval_string_iterator *);
/**
* Frees the iterator.
* @memberof oval_string_iterator
*/
void oval_string_iterator_free(struct oval_string_iterator *);
/** @} */
/**
* @} END OVALDEF * @} END OVALDEF
*/ */
/** /**
* Returns the version of the schema this document should be validated agai nst * Returns the version of the schema this document should be validated agai nst
* *
* Deallocate the result after use with "free(..)". * Deallocate the result after use with "free(..)".
*/ */
char *oval_determine_document_schema_version(const char *, oscap_document_t ype_t); char *oval_determine_document_schema_version(const char *, oscap_document_t ype_t);
 End of changes. 4 change blocks. 
37 lines changed or deleted 2 lines changed or added


 oval_results.h   oval_results.h 
skipping to change at line 19 skipping to change at line 19
* \image html result_model.png * \image html result_model.png
* *
* @file * @file
* *
* @author "David Niemoller" <David.Niemoller@g2-inc.com> * @author "David Niemoller" <David.Niemoller@g2-inc.com>
* *
* *
*/ */
/* /*
* Copyright 2009-2010 Red Hat Inc., Durham, North Carolina. * Copyright 2009-2013 Red Hat Inc., Durham, North Carolina.
* All Rights Reserved. * All Rights Reserved.
* *
* This library is free software; you can redistribute it and/or * This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public * modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either * License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version. * 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, * This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of * but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details. * Lesser General Public License for more details.
* *
* You should have received a copy of the GNU Lesser General Public * You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software * License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 US A * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 US A
* *
* Authors: * Authors:
* "David Niemoller" <David.Niemoller@g2-inc.com> * "David Niemoller" <David.Niemoller@g2-inc.com>
* Šimon Lukašík
*/ */
#ifndef OVAL_RESULTS_H_ #ifndef OVAL_RESULTS_H_
#define OVAL_RESULTS_H_ #define OVAL_RESULTS_H_
#include "oval_types.h" #include "oval_types.h"
#include "oval_system_characteristics.h" #include "oval_system_characteristics.h"
#include "oval_directives.h" #include "oval_directives.h"
#include <stdbool.h> #include <stdbool.h>
skipping to change at line 330 skipping to change at line 331
/** /**
* @name Getters * @name Getters
* @{ * @{
*/ */
/** /**
* @memberof oval_result_definition * @memberof oval_result_definition
*/ */
struct oval_definition *oval_result_definition_get_definition(const struct oval_result_definition *); struct oval_definition *oval_result_definition_get_definition(const struct oval_result_definition *);
/** /**
* Returns the @idref attribute of a given result definition
* @memberof oval_result_definition
*/
const char *oval_result_definition_get_id(const struct oval_result_definiti
on *rslt_definition);
/**
* @memberof oval_result_definition * @memberof oval_result_definition
*/ */
struct oval_result_system *oval_result_definition_get_system(const struct o val_result_definition *); struct oval_result_system *oval_result_definition_get_system(const struct o val_result_definition *);
/** /**
* @memberof oval_result_definition * @memberof oval_result_definition
*/ */
int oval_result_definition_get_instance(const struct oval_result_definition *); int oval_result_definition_get_instance(const struct oval_result_definition *);
/** /**
* @memberof oval_result_definition * @memberof oval_result_definition
*/ */
 End of changes. 3 change blocks. 
1 lines changed or deleted 8 lines changed or added


 oval_system_characteristics.h   oval_system_characteristics.h 
skipping to change at line 17 skipping to change at line 17
* *
* Class diagram * Class diagram
* \image html system_characteristic.png * \image html system_characteristic.png
* *
* @file * @file
* *
* @author "David Niemoller" <David.Niemoller@g2-inc.com> * @author "David Niemoller" <David.Niemoller@g2-inc.com>
*/ */
/* /*
* Copyright 2009-2010 Red Hat Inc., Durham, North Carolina. * Copyright 2009--2013 Red Hat Inc., Durham, North Carolina.
* All Rights Reserved. * All Rights Reserved.
* *
* This library is free software; you can redistribute it and/or * This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public * modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either * License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version. * 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, * This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of * but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details. * Lesser General Public License for more details.
* *
* You should have received a copy of the GNU Lesser General Public * You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software * License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 US A * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 US A
* *
* Authors: * Authors:
* "David Niemoller" <David.Niemoller@g2-inc.com> * "David Niemoller" <David.Niemoller@g2-inc.com>
* Šimon Lukašík
*/ */
#ifndef OVAL_SYSTEM_CHARACTERISTICS #ifndef OVAL_SYSTEM_CHARACTERISTICS
#define OVAL_SYSTEM_CHARACTERISTICS #define OVAL_SYSTEM_CHARACTERISTICS
#include "oval_types.h" #include "oval_types.h"
#include "oval_definitions.h" #include "oval_definitions.h"
/// System characteristics result flag /// System characteristics result flag
typedef enum { typedef enum {
skipping to change at line 409 skipping to change at line 410
void oval_syschar_add_variable_binding(struct oval_syschar *, struct oval_v ariable_binding *); void oval_syschar_add_variable_binding(struct oval_syschar *, struct oval_v ariable_binding *);
/** /**
* @memberof oval_syschar * @memberof oval_syschar
*/ */
void oval_syschar_set_flag(struct oval_syschar *model, oval_syschar_collect ion_flag_t flag); void oval_syschar_set_flag(struct oval_syschar *model, oval_syschar_collect ion_flag_t flag);
/** /**
* @memberof oval_syschar * @memberof oval_syschar
*/ */
void oval_syschar_set_object(struct oval_syschar *, struct oval_object *); void oval_syschar_set_object(struct oval_syschar *, struct oval_object *);
/** /**
* Gets the variable_instance attribute of the syschar.
* @memberof oval_syschar
* @returns currect variable_instance attribute assigned
*/
int oval_syschar_get_variable_instance(const struct oval_syschar *syschar);
/**
* Sets the variable_instance attribute of the syschar.
* @memberof oval_syschar
* @param syschar collected object
* @param variable_instance_in new settings of variable_instance attribute
*/
void oval_syschar_set_variable_instance(struct oval_syschar *syschar, int v
ariable_instance_in);
/**
* @memberof oval_syschar * @memberof oval_syschar
*/ */
void oval_syschar_add_sysitem(struct oval_syschar *, struct oval_sysitem *) ; void oval_syschar_add_sysitem(struct oval_syschar *, struct oval_sysitem *) ;
/** /**
* @memberof oval_syschar * @memberof oval_syschar
*/ */
void oval_syschar_add_message(struct oval_syschar *syschar, struct oval_mes sage *message); void oval_syschar_add_message(struct oval_syschar *syschar, struct oval_mes sage *message);
/** /**
* @memberof oval_syschar * @memberof oval_syschar
*/ */
 End of changes. 3 change blocks. 
1 lines changed or deleted 16 lines changed or added


 scap_ds.h   scap_ds.h 
skipping to change at line 271 skipping to change at line 271
struct ds_sds_index *ds_sds_index_import(const char* file); struct ds_sds_index *ds_sds_index_import(const char* file);
/** /**
* @brief chooses datastream and checklist id combination given the IDs * @brief chooses datastream and checklist id combination given the IDs
* *
* @param datastream_id has to point to an allocated char*, selected datast ream ID will be filled into it * @param datastream_id has to point to an allocated char*, selected datast ream ID will be filled into it
* @param component_id has to point to an allocated char*, selected xccdf I D will be filled into it * @param component_id has to point to an allocated char*, selected xccdf I D will be filled into it
* *
* datastream_id and component_id must not point to the same memory! Howeve r, * datastream_id and component_id must not point to the same memory! Howeve r,
* the pointers pointed to may be NULL (which means any ID will do). * the pointers pointed to may be NULL (which means any ID will do).
*
* component_id is actually a component-ref ID, the reason is that we need
the component-ref
* to know which other components are in the catalog and thus needed when s
plitting.
*/ */
int ds_sds_index_select_checklist(struct ds_sds_index* s, int ds_sds_index_select_checklist(struct ds_sds_index* s,
const char** datastream_id, const char** component_id); const char** datastream_id, const char** component_id);
/** /**
* @brief chooses datastream and checklist component ref ID combination, gi
ven benchmark ID
*
* @param benchmark_id Which XCCDF Benchmark ID are we looking for?
* Parameters are similar to ds_sds_index_select_checklist, except for benc
hmark_id.
* @see ds_sds_index_select_checklist
*
* This function looks through to datastream index to find the first compon
ent-ref (top-down)
* which satisfies the following condition:
* "it does point to a component which contains XCCDF Benchmark with id
* exactly the same as given benchmark_id".
*
* Please note that datastream_id AND component_ref_id are pointers to poin
ters and they
* will be overwritten if 0 is returned. The values are never used, unlike
with
* ds_sds_index_select_checklist.
*/
int ds_sds_index_select_checklist_by_benchmark_id(struct ds_sds_index* s,
const char *benchmark_id, const char **datastream_id, const
char **component_ref_id);
/**
* @struct ds_stream_index_iterator * @struct ds_stream_index_iterator
* @see oscap_iterator * @see oscap_iterator
*/ */
struct ds_stream_index_iterator; struct ds_stream_index_iterator;
/// @memberof ds_stream_index_iterator /// @memberof ds_stream_index_iterator
struct ds_stream_index *ds_stream_index_iterator_next(struct ds_stream_inde x_iterator *it); struct ds_stream_index *ds_stream_index_iterator_next(struct ds_stream_inde x_iterator *it);
/// @memberof ds_stream_index_iterator /// @memberof ds_stream_index_iterator
bool ds_stream_index_iterator_has_more(struct ds_stream_index_iterator *it) ; bool ds_stream_index_iterator_has_more(struct ds_stream_index_iterator *it) ;
/// @memberof ds_stream_index_iterator /// @memberof ds_stream_index_iterator
 End of changes. 2 change blocks. 
0 lines changed or deleted 30 lines changed or added


 xccdf_policy.h   xccdf_policy.h 
skipping to change at line 188 skipping to change at line 188
bool xccdf_policy_model_add_cpe_lang_model(struct xccdf_policy_model * mode l, const char * cpe_lang); bool xccdf_policy_model_add_cpe_lang_model(struct xccdf_policy_model * mode l, const char * cpe_lang);
/** /**
* Registers an additional CPE resource (either dictionary or language) * Registers an additional CPE resource (either dictionary or language)
* Autodetects given file and acts accordingly. * Autodetects given file and acts accordingly.
* The one embedded in the evaluated XCCDF take precedence! * The one embedded in the evaluated XCCDF take precedence!
*/ */
bool xccdf_policy_model_add_cpe_autodetect(struct xccdf_policy_model *model , const char* filepath); bool xccdf_policy_model_add_cpe_autodetect(struct xccdf_policy_model *model , const char* filepath);
/** /**
* Retrieves an iterator of all OVAL sessions created for CPE applicability
evaluation
* key is the OVAL href, value is the OVAL session itself (type oval_agent_
session*)
*/
struct oscap_htable_iterator *xccdf_policy_model_get_cpe_oval_sessions(stru
ct xccdf_policy_model *model);
/**
* Function to register callback for checking system * Function to register callback for checking system
* @param model XCCDF Policy Model * @param model XCCDF Policy Model
* @param sys String representing given checking system * @param sys String representing given checking system
* @param func Callback - pointer to function called by XCCDF Policy system when rule parsed * @param func Callback - pointer to function called by XCCDF Policy system when rule parsed
* @param usr optional parameter for passing user data to callback * @param usr optional parameter for passing user data to callback
* @memberof xccdf_policy_model * @memberof xccdf_policy_model
* @return true if callback registered succesfully, false otherwise * @return true if callback registered succesfully, false otherwise
* *
* @deprecated This function is deprecated by @ref xccdf_policy_model_regis ter_engine_and_query_callback * @deprecated This function is deprecated by @ref xccdf_policy_model_regis ter_engine_and_query_callback
* and might be dropped from future releases. * and might be dropped from future releases.
 End of changes. 1 change blocks. 
0 lines changed or deleted 9 lines changed or added


 xccdf_session.h   xccdf_session.h 
skipping to change at line 124 skipping to change at line 124
void xccdf_session_set_component_id(struct xccdf_session *session, const ch ar *component_id); void xccdf_session_set_component_id(struct xccdf_session *session, const ch ar *component_id);
/** /**
* Retrieves the component id * Retrieves the component id
* @see xccdf_session_set_component_id * @see xccdf_session_set_component_id
* @memberof xccdf_session * @memberof xccdf_session
*/ */
const char *xccdf_session_get_component_id(struct xccdf_session *session); const char *xccdf_session_get_component_id(struct xccdf_session *session);
/** /**
* Sets requested benchmark_id for this session. It is only used when no co
mponent_id
* and no datastream_id are requested. Benchmark ID selects the @id attribu
te of Benchmark
* element inside a component that is referenced with a checklist component
-ref.
* @memberof xccdf_session
*/
void xccdf_session_set_benchmark_id(struct xccdf_session *session, const ch
ar *benchmark_id);
/**
* Retrieves the benchmark_id
* @see xccdf_session_set_benchmark_id
* @memberof xccdf_session
*/
const char *xccdf_session_get_benchmark_id(struct xccdf_session *session);
/**
* Set path to custom CPE dictionary for the session. This function is appl icable * Set path to custom CPE dictionary for the session. This function is appl icable
* only before session loads. It has no effect if run afterwards. * only before session loads. It has no effect if run afterwards.
* @memberof xccdf_session * @memberof xccdf_session
* @param session XCCDF Session * @param session XCCDF Session
* @param user_cpe File path to user defined cpe dictionary. * @param user_cpe File path to user defined cpe dictionary.
*/ */
void xccdf_session_set_user_cpe(struct xccdf_session *session, const char * user_cpe); void xccdf_session_set_user_cpe(struct xccdf_session *session, const char * user_cpe);
/** /**
* Set path to custom Tailoring file for the session. This function is appl icable * Set path to custom Tailoring file for the session. This function is appl icable
skipping to change at line 386 skipping to change at line 401
/** /**
* Get the base score of the latest XCCDF evaluation in the session. * Get the base score of the latest XCCDF evaluation in the session.
* @memberof xccdf_session * @memberof xccdf_session
* @param session XCCDF Session * @param session XCCDF Session
* @returns the score * @returns the score
*/ */
float xccdf_session_get_base_score(const struct xccdf_session *session); float xccdf_session_get_base_score(const struct xccdf_session *session);
/** /**
* Get count of OVAL agent sessions in the xccdf_session. * Get count of OVAL agent sessions not used for CPE in the xccdf_session.
* @memberof xccdf_session * @memberof xccdf_session
* @param session XCCDF Session * @param session XCCDF Session
* @returns number of OVAL agents. * @returns number of OVAL agents.
*/ */
unsigned int xccdf_session_get_oval_agents_count(const struct xccdf_session *session); unsigned int xccdf_session_get_oval_agents_count(const struct xccdf_session *session);
/** /**
* Get count of OVAL agent sessions for CPE in the xccdf_session.
* CPE uses OVAL on demand, we do not count OVAL agents that were reference
d
* but weren't used.
* @memberof xccdf_session
* @param session XCCDF Session
* @returns number of OVAL agents for CPE.
*/
unsigned int xccdf_session_get_cpe_oval_agents_count(const struct xccdf_ses
sion *session);
/**
* Query if the result of evaluation contains FAIL, ERROR, or UNKNOWN rule- result elements. * Query if the result of evaluation contains FAIL, ERROR, or UNKNOWN rule- result elements.
* @memberof xccdf_session * @memberof xccdf_session
* @param session XCCDF Session * @param session XCCDF Session
* @returns Exists such rule-result r . r = FAIL | r = UNKNOWN | r = ERROR * @returns Exists such rule-result r . r = FAIL | r = UNKNOWN | r = ERROR
*/ */
bool xccdf_session_contains_fail_result(const struct xccdf_session *session ); bool xccdf_session_contains_fail_result(const struct xccdf_session *session );
/** /**
* Run XCCDF Remediation. It uses XCCDF Policy and XCCDF TestResult from th e session * Run XCCDF Remediation. It uses XCCDF Policy and XCCDF TestResult from th e session
* and modifies the TestResult. This also drops and recreate OVAL Agent Ses sion, thus * and modifies the TestResult. This also drops and recreate OVAL Agent Ses sion, thus
 End of changes. 3 change blocks. 
1 lines changed or deleted 32 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/