OVAL System Characteristics
OVAL

Interface for System Characteristics model. More...

## Files

file | oval_system_characteristics.h

## Data Structures

struct | oval_syschar_model
| OVAL System Characteristics model. More...
struct | oval_sysinfo
| General instrumented host description. More...
struct | oval_sysinfo_iterator
struct | oval_syschar
| Characteristics bound to an Oval_object. More...
struct | oval_syschar_iterator
struct | oval_sysint
| Network interface description. More...
struct | oval_sysint_iterator
struct | oval_sysitem
| Each instance of Oval_sysitem represents one item. More...
struct | oval_sysitem_iterator
struct | oval_sysent
struct | oval_sysent_iterator
struct | oval_message
| OVAL message. More...
struct | oval_message_iterator
struct | oval_variable_binding
| Binding of an value to an OVAL variable. More...
struct | oval_variable_binding_iterator

## Enumerations

enum | oval_syschar_collection_flag_t { SYSCHAR_FLAG_UNKNOWN = 0, SYSCHAR_FLAG_ERROR = 1, SYSCHAR_FLAG_COMPLETE = 2, SYSCHAR_FLAG_INCOMPLETE = 3, SYSCHAR_FLAG_DOES_NOT_EXIST = 4, SYSCHAR_FLAG_NOT_COLLECTED = 5, SYSCHAR_FLAG_NOT_APPLICABLE = 6 }
| System characteristics result flag.
enum | oval_syschar_status_t { SYSCHAR_STATUS_UNKNOWN = 0, SYSCHAR_STATUS_ERROR = 1, SYSCHAR_STATUS_EXISTS = 2, SYSCHAR_STATUS_DOES_NOT_EXIST = 3, SYSCHAR_STATUS_NOT_COLLECTED = 4 }
| System characteristics status.
enum | oval_message_level_t { OVAL_MESSAGE_LEVEL_NONE = 0, OVAL_MESSAGE_LEVEL_DEBUG = 1, OVAL_MESSAGE_LEVEL_INFO = 2, OVAL_MESSAGE_LEVEL_WARNING = 3, OVAL_MESSAGE_LEVEL_ERROR = 4, OVAL_MESSAGE_LEVEL_FATAL = 5 }
| Message level.

## Functions

const char * | oval_syschar_collection_flag_get_text (oval_syschar_collection_flag_t flag)
const char * | oval_syschar_status_get_text (oval_syschar_status_t status)
const char * | oval_message_level_text (oval_message_level_t)
struct oval_syschar_model * | oval_syschar_model::oval_syschar_model_new (struct oval_definition_model *definition_model)
| Create new oval_syschar_model. More...
int | oval_syschar_model::oval_syschar_model_import (struct oval_syschar_model *model, const char *file)
| Import the content from the file into an oval_syschar_model. More...
struct oval_syschar_model * | oval_syschar_model::oval_syschar_model_clone (struct oval_syschar_model *)
| Copy an oval_syschar_model. More...
int | oval_syschar_model::oval_syschar_model_export (struct oval_syschar_model *, const char *file)
| Export system characteristics into file.
void | oval_syschar_model::oval_syschar_model_free (struct oval_syschar_model *model)
| Free memory allocated to a specified syschar model. More...
struct oval_sysinfo * | oval_sysinfo::oval_sysinfo_new (struct oval_syschar_model *)
struct oval_sysinfo * | oval_sysinfo::oval_sysinfo_clone (struct oval_syschar_model *new_model, struct oval_sysinfo *old_sysinfo)
void | oval_sysinfo::oval_sysinfo_free (struct oval_sysinfo *)
struct oval_syschar * | oval_syschar::oval_syschar_new (struct oval_syschar_model *, struct oval_object *)
struct oval_syschar * | oval_syschar::oval_syschar_clone (struct oval_syschar_model *new_model, struct oval_syschar *old_syschar)
void | oval_syschar::oval_syschar_free (struct oval_syschar *)
struct oval_sysint * | oval_sysint::oval_sysint_new (struct oval_syschar_model *)
struct oval_sysint * | oval_sysint::oval_sysint_clone (struct oval_syschar_model *new_model, struct oval_sysint *old_sysint)
void | oval_sysint::oval_sysint_free (struct oval_sysint *)
struct oval_sysitem * | oval_sysitem::oval_sysitem_new (struct oval_syschar_model *, const char *id)
struct oval_sysitem * | oval_sysitem::oval_sysitem_clone (struct oval_syschar_model *new_model, struct oval_sysitem *old_data)
void | oval_sysitem::oval_sysitem_free (struct oval_sysitem *)
struct oval_sysent * | oval_sysent::oval_sysent_new (struct oval_syschar_model *)
struct oval_sysent * | oval_sysent::oval_sysent_clone (struct oval_syschar_model *new_model, struct oval_sysent *old_item)
void | oval_sysent::oval_sysent_free (struct oval_sysent *)
struct oval_message * | oval_message::oval_message_new (void)
struct oval_message * | oval_message::oval_message_clone (struct oval_message *old_message)
void | oval_message::oval_message_free (struct oval_message *)
struct oval_variable_binding * | oval_variable_binding::oval_variable_binding_new (struct oval_variable *, char *)
struct oval_variable_binding * | oval_variable_binding::oval_variable_binding_clone (struct oval_variable_binding *, struct oval_definition_model *)
void | oval_variable_binding::oval_variable_binding_free (struct oval_variable_binding *)

## Setters

void | oval_syschar_model_set_generator (struct oval_syschar_model *model, struct oval_generator *generator)
int | oval_syschar_model::oval_syschar_model_bind_variable_model (struct oval_syschar_model *, struct oval_variable_model *)
| Bind a variable model to the definitions bound to the syschar model. More...
void | oval_syschar_model::oval_syschar_model_set_sysinfo (struct oval_syschar_model *model, struct oval_sysinfo *sysinfo)
void | oval_sysinfo::oval_sysinfo_set_os_name (struct oval_sysinfo *, char *)
void | oval_sysinfo::oval_sysinfo_set_os_version (struct oval_sysinfo *, char *)
void | oval_sysinfo::oval_sysinfo_set_os_architecture (struct oval_sysinfo *, char *)
void | oval_sysinfo::oval_sysinfo_set_primary_host_name (struct oval_sysinfo *, char *)
void | oval_sysinfo::oval_sysinfo_add_interface (struct oval_sysinfo *, struct oval_sysint *)
void | oval_syschar::oval_syschar_add_variable_binding (struct oval_syschar *, struct oval_variable_binding *)
void | oval_syschar::oval_syschar_set_flag (struct oval_syschar *model, oval_syschar_collection_flag_t flag)
void | oval_syschar::oval_syschar_set_object (struct oval_syschar *, struct oval_object *)
int | oval_syschar::oval_syschar_get_variable_instance (const struct oval_syschar *syschar)
| Gets the variable_instance attribute of the syschar. More...
void | oval_syschar::oval_syschar_set_variable_instance (struct oval_syschar *syschar, int variable_instance_in)
| Sets the variable_instance attribute of the syschar. More...
void | oval_syschar::oval_syschar_add_sysitem (struct oval_syschar *, struct oval_sysitem *)
void | oval_syschar::oval_syschar_add_message (struct oval_syschar *syschar, struct oval_message *message)
void | oval_syschar::oval_syschar_add_new_message (struct oval_syschar *syschar, char *text, oval_message_level_t level)
void | oval_sysint::oval_sysint_set_name (struct oval_sysint *, char *)
void | oval_sysint::oval_sysint_set_ip_address (struct oval_sysint *, char *)
void | oval_sysint::oval_sysint_set_mac_address (struct oval_sysint *, char *)
void | oval_sysitem::oval_sysitem_set_status (struct oval_sysitem *, oval_syschar_status_t)
void | oval_sysitem::oval_sysitem_set_subtype (struct oval_sysitem *sysitem, oval_subtype_t subtype)
void | oval_sysitem::oval_sysitem_add_message (struct oval_sysitem *, struct oval_message *)
void | oval_sysitem::oval_sysitem_add_sysent (struct oval_sysitem *, struct oval_sysent *)
void | oval_sysent::oval_sysent_set_name (struct oval_sysent *sysent, char *name)
void | oval_sysent::oval_sysent_set_value (struct oval_sysent *sysent, char *value)
void | oval_sysent::oval_sysent_add_record_field (struct oval_sysent *, struct oval_record_field *)
void | oval_sysent::oval_sysent_set_status (struct oval_sysent *sysent, oval_syschar_status_t status)
void | oval_sysent::oval_sysent_set_datatype (struct oval_sysent *sysent, oval_datatype_t type)
void | oval_sysent::oval_sysent_set_mask (struct oval_sysent *sysent, int mask)
void | oval_record_field::oval_record_field_set_status (struct oval_record_field *, oval_syschar_status_t)
void | oval_message::oval_message_set_text (struct oval_message *, char *)
void | oval_message::oval_message_set_level (struct oval_message *, oval_message_level_t)
void | oval_variable_binding::oval_variable_binding_set_variable (struct oval_variable_binding *, struct oval_variable *)
void | oval_variable_binding::oval_variable_binding_add_value (struct oval_variable_binding *, char *)

## Getters

struct oval_generator * | oval_syschar_model_get_generator (struct oval_syschar_model *model)
oval_syschar_collection_flag_t | oval_variable_get_collection_flag (struct oval_variable *)
struct oval_definition_model * | oval_syschar_model::oval_syschar_model_get_definition_model (struct oval_syschar_model *model)
| Return related oval_definition_model from an oval_syschar_model. More...
struct oval_syschar_iterator * | oval_syschar_model::oval_syschar_model_get_syschars (struct oval_syschar_model *model)
| Return an iterator over the oval_sychar objects persisted by this model. More...
struct oval_sysinfo * | oval_syschar_model::oval_syschar_model_get_sysinfo (struct oval_syschar_model *model)
| Return default sysinfo bound to syschar model. More...
struct oval_syschar * | oval_syschar_model::oval_syschar_model_get_syschar (struct oval_syschar_model *model, const char *object_id)
| Return the oval_syschar bound to a specified object_id. More...
int | oval_syschar_model::oval_syschar_model_compute_variable (struct oval_syschar_model *, struct oval_variable *)
| Get the oval_values bound to a specified variable.
struct oval_sysitem * | oval_syschar_model::oval_syschar_model_get_sysitem (struct oval_syschar_model *, const char *)
char * | oval_sysinfo::oval_sysinfo_get_os_name (struct oval_sysinfo *)
| Get operating system name.
char * | oval_sysinfo::oval_sysinfo_get_os_version (struct oval_sysinfo *)
| Get operating system version.
char * | oval_sysinfo::oval_sysinfo_get_os_architecture (struct oval_sysinfo *)
| Get operating system architecture.
char * | oval_sysinfo::oval_sysinfo_get_primary_host_name (struct oval_sysinfo *)
| Get primary host name of the tested machine.
struct oval_sysint_iterator * | oval_sysinfo::oval_sysinfo_get_interfaces (struct oval_sysinfo *)
| Get an iterator to the list of network interfaces.
oval_syschar_collection_flag_t | oval_syschar::oval_syschar_get_flag (struct oval_syschar *)
| Get system characteristic flag.
struct oval_message_iterator * | oval_syschar::oval_syschar_get_messages (struct oval_syschar *)
| Get messages bound to this system characteristic.
struct oval_object * | oval_syschar::oval_syschar_get_object (struct oval_syschar *)
| Get object associated with this system characteristic.
struct oval_variable_binding_iterator * | oval_syschar::oval_syschar_get_variable_bindings (struct oval_syschar *)
| Get system characteristic variable bindings.
struct oval_sysitem_iterator * | oval_syschar::oval_syschar_get_sysitem (struct oval_syschar *)
| Get system characteristic data.
char * | oval_sysint::oval_sysint_get_name (struct oval_sysint *)
| Get interface name.
char * | oval_sysint::oval_sysint_get_ip_address (struct oval_sysint *)
| Get interface IP address.
char * | oval_sysint::oval_sysint_get_mac_address (struct oval_sysint *)
| Get interface MAC address.
char * | oval_sysitem::oval_sysitem_get_id (struct oval_sysitem *)
| Get system data ID.
oval_syschar_status_t | oval_sysitem::oval_sysitem_get_status (struct oval_sysitem *)
| Get system data status.
struct oval_sysent_iterator * | oval_sysitem::oval_sysitem_get_sysents (struct oval_sysitem *)
| Get system data individual items.
struct oval_message_iterator * | oval_sysitem::oval_sysitem_get_messages (struct oval_sysitem *)
| Get system data message.
oval_subtype_t | oval_sysitem::oval_sysitem_get_subtype (struct oval_sysitem *)
| Get system data subtype.
char * | oval_sysent::oval_sysent_get_name (struct oval_sysent *)
| Get system data item name.
char * | oval_sysent::oval_sysent_get_value (struct oval_sysent *)
| Get system data item value.
struct oval_record_field_iterator * | oval_sysent::oval_sysent_get_record_fields (struct oval_sysent *)
oval_syschar_status_t | oval_sysent::oval_sysent_get_status (struct oval_sysent *)
| Get system data item status.
oval_datatype_t | oval_sysent::oval_sysent_get_datatype (struct oval_sysent *)
| Get system data item data type.
int | oval_sysent::oval_sysent_get_mask (struct oval_sysent *)
| Get system data item mask.
oval_syschar_status_t | oval_record_field::oval_record_field_get_status (struct oval_record_field *)
char * | oval_message::oval_message_get_text (struct oval_message *message)
| Get OVAL message text.
oval_message_level_t | oval_message::oval_message_get_level (struct oval_message *message)
| Get OVAL message level.
struct oval_variable * | oval_variable_binding::oval_variable_binding_get_variable (struct oval_variable_binding *)
| Get variable for this binding.
struct oval_string_iterator * | oval_variable_binding::oval_variable_binding_get_values (struct oval_variable_binding *)
| Get value of this binding.

## Iterators

bool | oval_sysinfo_iterator::oval_sysinfo_iterator_has_more (struct oval_sysinfo_iterator *)
struct oval_sysinfo * | oval_sysinfo_iterator::oval_sysinfo_iterator_next (struct oval_sysinfo_iterator *)
void | oval_sysinfo_iterator::oval_sysinfo_iterator_free (struct oval_sysinfo_iterator *)
bool | oval_syschar_iterator::oval_syschar_iterator_has_more (struct oval_syschar_iterator *)
struct oval_syschar * | oval_syschar_iterator::oval_syschar_iterator_next (struct oval_syschar_iterator *)
void | oval_syschar_iterator::oval_syschar_iterator_free (struct oval_syschar_iterator *)
bool | oval_sysint_iterator::oval_sysint_iterator_has_more (struct oval_sysint_iterator *)
struct oval_sysint * | oval_sysint_iterator::oval_sysint_iterator_next (struct oval_sysint_iterator *)
void | oval_sysint_iterator::oval_sysint_iterator_free (struct oval_sysint_iterator *)
bool | oval_sysitem_iterator::oval_sysitem_iterator_has_more (struct oval_sysitem_iterator *)
struct oval_sysitem * | oval_sysitem_iterator::oval_sysitem_iterator_next (struct oval_sysitem_iterator *)
void | oval_sysitem_iterator::oval_sysitem_iterator_free (struct oval_sysitem_iterator *)
bool | oval_sysent_iterator::oval_sysent_iterator_has_more (struct oval_sysent_iterator *)
struct oval_sysent * | oval_sysent_iterator::oval_sysent_iterator_next (struct oval_sysent_iterator *)
void | oval_sysent_iterator::oval_sysent_iterator_free (struct oval_sysent_iterator *)
bool | oval_message_iterator::oval_message_iterator_has_more (struct oval_message_iterator *oc_message)
struct oval_message * | oval_message_iterator::oval_message_iterator_next (struct oval_message_iterator *oc_message)
void | oval_message_iterator::oval_message_iterator_free (struct oval_message_iterator *oc_message)
bool | oval_variable_binding_iterator::oval_variable_binding_iterator_has_more (struct oval_variable_binding_iterator *)
struct oval_variable_binding * | oval_variable_binding_iterator::oval_variable_binding_iterator_next (struct oval_variable_binding_iterator *)
void | oval_variable_binding_iterator::oval_variable_binding_iterator_free (struct oval_variable_binding_iterator *)

## Detailed Description

Interface for System Characteristics model.

Class diagram

## Function Documentation

struct oval_message * oval_message_clone | ( | struct oval_message * | old_message | ) |

read

Returns
  A copy of the specified oval_message.

struct oval_syschar * oval_syschar_clone | ( | struct oval_syschar_model * | new_model,
|  | struct oval_syschar * | old_syschar
| ) |  |

read

Returns
  A copy of the specified oval_syschar.

int oval_syschar_get_variable_instance | ( | const struct oval_syschar * | syschar | ) |

Gets the variable_instance attribute of the syschar.

Returns
  currect variable_instance attribute assigned

int oval_syschar_model_bind_variable_model | ( | struct oval_syschar_model * | ,
|  | struct oval_variable_model * |
| ) |  |

Bind a variable model to the definitions bound to the syschar model.

Returns
  zero on success or non zero value if an error occurred

struct oval_syschar_model * oval_syschar_model_clone | ( | struct oval_syschar_model * |  | ) |

read

Copy an oval_syschar_model.

Returns
  A copy of the specified oval_syschar_model.

void oval_syschar_model_free | ( | struct oval_syschar_model * | model | ) |

Free memory allocated to a specified syschar model.

Parameters

  model | the specified syschar model

struct oval_definition_model * oval_syschar_model_get_definition_model | ( | struct oval_syschar_model * | model | ) |

read

Return related oval_definition_model from an oval_syschar_model.

Parameters

  model | the specified oval_syschar_model.

struct oval_syschar * oval_syschar_model_get_syschar | ( | struct oval_syschar_model * | model,
|  | const char * | object_id
| ) |  |

read

Return the oval_syschar bound to a specified object_id.

Returns NULL if the object_id does not resolve to an oval_object in the bound oval_definition_model.

Parameters

  model | the queried oval_syschar_model.
  object_id | the specified object_id.

struct oval_syschar_iterator * oval_syschar_model_get_syschars | ( | struct oval_syschar_model * | model | ) |

read

Return an iterator over the oval_sychar objects persisted by this model.

Parameters

  model | the specified oval_syschar_model.

struct oval_sysinfo * oval_syschar_model_get_sysinfo | ( | struct oval_syschar_model * | model | ) |

read

Return default sysinfo bound to syschar model.

Parameters

  model | the specified oval_syschar_model.

int oval_syschar_model_import | ( | struct oval_syschar_model * | model,
|  | const char * | file
| ) |  |

Import the content from the file into an oval_syschar_model.

If imported content specifies a model entity that is already registered within the model its content is overwritten.

Parameters

  model | the merge target model
  file | filename

Returns
  zero on success or non zero value if an error occurred

struct oval_syschar_model * oval_syschar_model_new | ( | struct oval_definition_model * | definition_model | ) |

read

Create new oval_syschar_model.

The new model is bound to a specified oval_definition_model and variable bindings.

Parameters

  definition_model | the specified oval_definition_model.

void oval_syschar_set_variable_instance | ( | struct oval_syschar * | syschar,
|  | int | variable_instance_in
| ) |  |

Sets the variable_instance attribute of the syschar.

Parameters

  syschar | collected object
  variable_instance_in | new settings of variable_instance attribute

struct oval_sysent * oval_sysent_clone | ( | struct oval_syschar_model * | new_model,
|  | struct oval_sysent * | old_item
| ) |  |

read

Returns
  A copy of the specified oval_sysent.

struct oval_sysinfo * oval_sysinfo_clone | ( | struct oval_syschar_model * | new_model,
|  | struct oval_sysinfo * | old_sysinfo
| ) |  |

read

Returns
  A copy of the specified oval_sysinfo.

struct oval_sysint * oval_sysint_clone | ( | struct oval_syschar_model * | new_model,
|  | struct oval_sysint * | old_sysint
| ) |  |

read

Returns
  A copy of the specified oval_sysint.

struct oval_sysitem * oval_sysitem_clone | ( | struct oval_syschar_model * | new_model,
|  | struct oval_sysitem * | old_data
| ) |  |

read

Returns
  A copy of the specified oval_sysitem.

struct oval_variable_binding * oval_variable_binding_clone | ( | struct oval_variable_binding * | ,
|  | struct oval_definition_model * |
| ) |  |

read

Returns
  A copy of the specified oval_variable_binding.