cvrf.h File Reference

Interface to Common Vulnerability Reporting Framework. More...

#include <stdbool.h>
#include "oscap.h"
#include "oscap_source.h"
#include "cvss_score.h"

Go to the source code of this file.

Functions

struct cvrf_product_status * cvrf_product_status_new (void)
 New Status member of a ProductStatuses container within a Vulnerability element cvrf_product_status.
void cvrf_product_status_free (struct cvrf_product_status *status)
 Deallocates memory for a Status element of the ProductStatuses container cvrf_product_status.
struct cvrf_product_status * cvrf_product_status_clone (const struct cvrf_product_status *stat)
 cvrf_product_status
struct oscap_string_iteratorcvrf_product_status_get_ids (struct cvrf_product_status *stat)
 cvrf_product_status
struct cvrf_threat * cvrf_threat_new (void)
 New CVRF Threat element cvrf_threat.
void cvrf_threat_free (struct cvrf_threat *threat)
 Deallocates memory for a Threat element of the Threats container cvrf_threat.
struct cvrf_threat * cvrf_threat_clone (const struct cvrf_threat *threat)
 cvrf_threat
const char * cvrf_threat_get_date (const struct cvrf_threat *threat)
 cvrf_threat
const char * cvrf_threat_get_description (const struct cvrf_threat *threat)
 cvrf_threat
struct oscap_string_iteratorcvrf_threat_get_product_ids (struct cvrf_threat *threat)
 cvrf_threat
struct oscap_string_iteratorcvrf_threat_get_group_ids (struct cvrf_threat *threat)
 cvrf_threat
bool cvrf_threat_set_date (struct cvrf_threat *threat, const char *date)
 cvrf_threat
bool cvrf_threat_set_description (struct cvrf_threat *threat, const char *description)
 cvrf_threat
struct cvrf_remediation * cvrf_remediation_new (void)
 New CVRF Remediation cvrf_remediation.
void cvrf_remediation_free (struct cvrf_remediation *remed)
 Deallocates memory for a Remediation element of the Remediations container cvrf_remediation.
struct cvrf_remediation * cvrf_remediation_clone (const struct cvrf_remediation *remed)
 cvrf_remediation
const char * cvrf_remediation_get_date (const struct cvrf_remediation *remed)
 cvrf_remediation
const char * cvrf_remediation_get_description (const struct cvrf_remediation *remed)
 cvrf_remediation
const char * cvrf_remediation_get_url (const struct cvrf_remediation *remed)
 cvrf_remediation
const char * cvrf_remediation_get_entitlement (const struct cvrf_remediation *remed)
 cvrf_remediation
struct oscap_string_iteratorcvrf_remediation_get_product_ids (struct cvrf_remediation *remed)
 cvrf_remediation
struct oscap_string_iteratorcvrf_remediation_get_group_ids (struct cvrf_remediation *remed)
 cvrf_remediation
bool cvrf_remediation_set_date (struct cvrf_remediation *remed, const char *date)
 cvrf_remediation
bool cvrf_remediation_set_description (struct cvrf_remediation *remed, const char *description)
 cvrf_remediation
bool cvrf_remediation_set_url (struct cvrf_remediation *remed, const char *url)
 cvrf_remediation
bool cvrf_remediation_set_entitlement (struct cvrf_remediation *remed, const char *entitlement)
 cvrf_remediation
struct cvrf_score_set * cvrf_score_set_new (void)
 New ScoreSet member of a CVSSScoreSets container within a Vulnerability element cvrf_score_set.
void cvrf_score_set_free (struct cvrf_score_set *score_set)
 Deallocates memory for a ScoreSet element of the CVSSScoreSets container cvrf_score_set.
struct cvrf_score_set * cvrf_score_set_clone (const struct cvrf_score_set *score_set)
 cvrf_score_set
const char * cvrf_score_set_get_vector (const struct cvrf_score_set *score_set)
 cvrf_score_set
struct oscap_string_iteratorcvrf_score_set_get_product_ids (struct cvrf_score_set *score_set)
 cvrf_score_set
struct cvss_impactcvrf_score_set_get_impact (const struct cvrf_score_set *score_set)
 cvrf_score_set
char * cvrf_score_set_get_base_score (const struct cvrf_score_set *score_set)
 cvrf_score_set
char * cvrf_score_set_get_environmental_score (const struct cvrf_score_set *score_set)
 cvrf_score_set
char * cvrf_score_set_get_temporal_score (const struct cvrf_score_set *score_set)
 cvrf_score_set
bool cvrf_score_set_set_vector (struct cvrf_score_set *score_set, const char *vector)
 cvrf_score_set
bool cvrf_score_set_set_impact (struct cvrf_score_set *score_set, struct cvss_impact *impact)
 cvrf_score_set
bool cvrf_score_set_add_metric (struct cvrf_score_set *score_set, enum cvss_category category, const char *score)
 cvrf_score_set
struct cvrf_involvement * cvrf_involvement_new (void)
 New CVRF Involvement cvrf_involvement.
void cvrf_involvement_free (struct cvrf_involvement *involve)
 Deallocates memory for an Involvement element cvrf_involvement.
struct cvrf_involvement * cvrf_involvement_clone (const struct cvrf_involvement *involve)
 cvrf_involvement
const char * cvrf_involvement_get_description (const struct cvrf_involvement *involve)
 cvrf_involvement
bool cvrf_involvement_set_description (struct cvrf_involvement *involve, const char *description)
 cvrf_involvement
struct cvrf_vulnerability_cwe * cvrf_vulnerability_cwe_new (void)
 New CVRF CWE structure cvrf_vulnerability_cwe.
void cvrf_vulnerability_cwe_free (struct cvrf_vulnerability_cwe *cwe)
 Deallocates memory for a CWE element cvrf_vulnerability_cwe.
struct cvrf_vulnerability_cwe * cvrf_vulnerability_cwe_clone (const struct cvrf_vulnerability_cwe *cwe)
 cvrf_vulnerability_cwe
const char * cvrf_vulnerability_cwe_get_cwe (const struct cvrf_vulnerability_cwe *vuln_cwe)
 cvrf_vulnerability_cwe
const char * cvrf_vulnerability_cwe_get_id (const struct cvrf_vulnerability_cwe *vuln_cwe)
 cvrf_vulnerability_cwe
bool cvrf_vulnerability_cwe_set_cwe (struct cvrf_vulnerability_cwe *vuln_cwe, const char *cwe)
 cvrf_vulnerability_cwe
bool cvrf_vulnerability_cwe_set_id (struct cvrf_vulnerability_cwe *vuln_cwe, const char *id)
 cvrf_vulnerability_cwe
struct cvrf_vulnerability * cvrf_vulnerability_new (void)
 New CVRF Vulnerability cvrf_vulnerability.
void cvrf_vulnerability_free (struct cvrf_vulnerability *vulnerability)
 Deallocates memory for a Vulnerability element cvrf_vulnerability.
struct cvrf_vulnerability * cvrf_vulnerability_clone (const struct cvrf_vulnerability *vuln)
 cvrf_vulnerability
int cvrf_vulnerability_filter_by_product (struct cvrf_vulnerability *vuln, const char *prod)
 cvrf_vulnerability
int cvrf_vulnerability_get_ordinal (const struct cvrf_vulnerability *vuln)
 cvrf_vulnerability
const char * cvrf_vulnerability_get_title (const struct cvrf_vulnerability *vuln)
 cvrf_vulnerability
const char * cvrf_vulnerability_get_system_id (const struct cvrf_vulnerability *vuln)
 cvrf_vulnerability
const char * cvrf_vulnerability_get_system_name (const struct cvrf_vulnerability *vuln)
 cvrf_vulnerability
const char * cvrf_vulnerability_get_discovery_date (const struct cvrf_vulnerability *vuln)
 cvrf_vulnerability
const char * cvrf_vulnerability_get_release_date (const struct cvrf_vulnerability *vuln)
 cvrf_vulnerability
const char * cvrf_vulnerability_get_cve_id (const struct cvrf_vulnerability *vuln)
 cvrf_vulnerability
bool cvrf_vulnerability_set_ordinal (struct cvrf_vulnerability *vuln, int ordinal)
 cvrf_vulnerability
bool cvrf_vulnerability_set_title (struct cvrf_vulnerability *vuln, const char *vulnerability_title)
 cvrf_vulnerability
bool cvrf_vulnerability_set_system_id (struct cvrf_vulnerability *vuln, const char *id)
 cvrf_vulnerability
bool cvrf_vulnerability_set_system_name (struct cvrf_vulnerability *vuln, const char *sys_name)
 cvrf_vulnerability
bool cvrf_vulnerability_set_discovery_date (struct cvrf_vulnerability *vuln, const char *discovery_date)
 cvrf_vulnerability
bool cvrf_vulnerability_set_release_date (struct cvrf_vulnerability *vuln, const char *release_date)
 cvrf_vulnerability
bool cvrf_vulnerability_set_cve_id (struct cvrf_vulnerability *vuln, const char *cve_id)
 cvrf_vulnerability
struct oscap_iterator * cvrf_vulnerability_get_references (struct cvrf_vulnerability *vuln)
 cvrf_vulnerability
struct oscap_iterator * cvrf_vulnerability_get_acknowledgments (struct cvrf_vulnerability *vuln)
 cvrf_vulnerability
struct oscap_iterator * cvrf_vulnerability_get_notes (struct cvrf_vulnerability *vuln)
 cvrf_vulnerability
bool cvrf_vulnerability_add_vulnerability_cwe (struct cvrf_vulnerability *vuln, struct cvrf_vulnerability_cwe *vulnerability_cwe)
 cvrf_vulnerability
struct
cvrf_vulnerability_cwe_iterator * 
cvrf_vulnerability_get_vulnerability_cwes (const struct cvrf_vulnerability *vuln)
 cvrf_vulnerability
struct cvrf_vulnerability_cwe * cvrf_vulnerability_cwe_iterator_next (struct cvrf_vulnerability_cwe_iterator *it)
 cvrf_vulnerability_cwe_iterator
bool cvrf_vulnerability_cwe_iterator_has_more (struct cvrf_vulnerability_cwe_iterator *it)
 cvrf_vulnerability_cwe_iterator
void cvrf_vulnerability_cwe_iterator_free (struct cvrf_vulnerability_cwe_iterator *it)
 Deallocate memory for the CWE Iterator structure cvrf_vulnerability_cwe_iterator.
void cvrf_vulnerability_cwe_iterator_reset (struct cvrf_vulnerability_cwe_iterator *it)
 Restart iterator at the first CWE in the Vulnerability cvrf_vulnerability_cwe_iterator.
void cvrf_vulnerability_cwe_iterator_remove (struct cvrf_vulnerability_cwe_iterator *it)
 Detaches and frees the CWE iterator structure cvrf_vulnerability_cwe_iterator.
bool cvrf_vulnerability_add_involvement (struct cvrf_vulnerability *vuln, struct cvrf_involvement *involvement)
 cvrf_vulnerability
struct cvrf_involvement_iterator * cvrf_vulnerability_get_involvements (const struct cvrf_vulnerability *vuln)
 cvrf_vulnerability
struct cvrf_involvement * cvrf_involvement_iterator_next (struct cvrf_involvement_iterator *it)
 cvrf_involvement_iterator
bool cvrf_involvement_iterator_has_more (struct cvrf_involvement_iterator *it)
 cvrf_involvement_iterator
void cvrf_involvement_iterator_free (struct cvrf_involvement_iterator *it)
 Deallocate memory for the CVRF Involvement Iterator structure cvrf_involvement_iterator.
void cvrf_involvement_iterator_reset (struct cvrf_involvement_iterator *it)
 Restart iterator at the first Involvement in the Vulnerability cvrf_involvement_iterator.
void cvrf_involvement_iterator_remove (struct cvrf_involvement_iterator *it)
 Detaches and frees the Involvement iterator structure cvrf_involvement_iterator.
bool cvrf_vulnerability_add_score_set (struct cvrf_vulnerability *vuln, struct cvrf_score_set *score_set)
 cvrf_vulnerability
struct cvrf_score_set_iterator * cvrf_vulnerability_get_score_sets (const struct cvrf_vulnerability *vuln)
 cvrf_vulnerability
struct cvrf_score_set * cvrf_score_set_iterator_next (struct cvrf_score_set_iterator *it)
 cvrf_score_set_iterator
bool cvrf_score_set_iterator_has_more (struct cvrf_score_set_iterator *it)
 cvrf_score_set_iterator
void cvrf_score_set_iterator_free (struct cvrf_score_set_iterator *it)
 Deallocate memory for the CVRF ScoreSet Iterator structure cvrf_score_set_iterator.
void cvrf_score_set_iterator_reset (struct cvrf_score_set_iterator *it)
 Restart iterator at the first ScoreSet in the Vulnerability cvrf_score_set_iterator.
void cvrf_score_set_iterator_remove (struct cvrf_score_set_iterator *it)
 Detaches and frees the ScoreSet iterator structure cvrf_score_set_iterator.
bool cvrf_vulnerability_add_cvrf_product_status (struct cvrf_vulnerability *vuln, struct cvrf_product_status *stat)
 cvrf_vulnerability
struct
cvrf_product_status_iterator * 
cvrf_vulnerability_get_product_statuses (const struct cvrf_vulnerability *vuln)
 cvrf_vulnerability
struct cvrf_product_status * cvrf_product_status_iterator_next (struct cvrf_product_status_iterator *it)
 cvrf_product_status_iterator
bool cvrf_product_status_iterator_has_more (struct cvrf_product_status_iterator *it)
 cvrf_product_status_iterator
void cvrf_product_status_iterator_free (struct cvrf_product_status_iterator *it)
 Deallocate memory for the CVRF Status Iterator structure cvrf_product_status_iterator.
void cvrf_product_status_iterator_reset (struct cvrf_product_status_iterator *it)
 Restart iterator at the first Status in the Vulnerability cvrf_product_status_iterator.
void cvrf_product_status_iterator_remove (struct cvrf_product_status_iterator *it)
 Detaches and frees the Status iterator structure cvrf_product_status_iterator.
bool cvrf_vulnerability_add_remediation (struct cvrf_vulnerability *vuln, struct cvrf_remediation *remed)
 cvrf_vulnerability
struct cvrf_remediation_iterator * cvrf_vulnerability_get_remediations (const struct cvrf_vulnerability *vuln)
 cvrf_vulnerability
struct cvrf_remediation * cvrf_remediation_iterator_next (struct cvrf_remediation_iterator *it)
 cvrf_remediation_iterator
bool cvrf_remediation_iterator_has_more (struct cvrf_remediation_iterator *it)
 cvrf_remediation_iterator
void cvrf_remediation_iterator_free (struct cvrf_remediation_iterator *it)
 Deallocate memory for the CVRF Remediation Iterator structure cvrf_remediation_iterator.
void cvrf_remediation_iterator_reset (struct cvrf_remediation_iterator *it)
 Restart iterator at the first Remediation in the Vulnerability cvrf_remediation_iterator.
void cvrf_remediation_iterator_remove (struct cvrf_remediation_iterator *it)
 Detaches and frees the Remediation iterator structure cvrf_remediation_iterator.
bool cvrf_vulnerability_add_threat (struct cvrf_vulnerability *vuln, struct cvrf_threat *threat)
 cvrf_vulnerability
struct cvrf_threat_iterator * cvrf_vulnerability_get_threats (const struct cvrf_vulnerability *vuln)
 cvrf_vulnerability
struct cvrf_threat * cvrf_threat_iterator_next (struct cvrf_threat_iterator *it)
 cvrf_threat_iterator
bool cvrf_threat_iterator_has_more (struct cvrf_threat_iterator *it)
 cvrf_threat_iterator
void cvrf_threat_iterator_free (struct cvrf_threat_iterator *it)
 Deallocate memory for the CVRF Threat Iterator structure cvrf_threat_iterator.
void cvrf_threat_iterator_reset (struct cvrf_threat_iterator *it)
 Restart iterator at the first Threat in the Vulnerability cvrf_threat_iterator.
void cvrf_threat_iterator_remove (struct cvrf_threat_iterator *it)
 Detaches and frees the Threat iterator structure cvrf_threat_iterator.
struct cvrf_product_name * cvrf_product_name_new (void)
 New FullProductName of Branch or ProductTree cvrf_product_name.
void cvrf_product_name_free (struct cvrf_product_name *full_name)
 Deallocates memory for a FullProductName element cvrf_product_name.
struct cvrf_product_name * cvrf_product_name_clone (const struct cvrf_product_name *full_name)
 cvrf_product_name
const char * cvrf_product_name_get_product_id (const struct cvrf_product_name *full_name)
 cvrf_product_name
const char * cvrf_product_name_get_cpe (const struct cvrf_product_name *full_name)
 cvrf_product_name
bool cvrf_product_name_set_product_id (struct cvrf_product_name *full_name, const char *product_id)
 cvrf_product_name
bool cvrf_product_name_set_cpe (struct cvrf_product_name *full_name, const char *cpe)
 cvrf_product_name
struct cvrf_group * cvrf_group_new (void)
 New CVRF Group child of ProductGroups container element cvrf_group.
void cvrf_group_free (struct cvrf_group *group)
 Deallocates memory for a Group element cvrf_group.
struct cvrf_group * cvrf_group_clone (const struct cvrf_group *group)
 cvrf_group
const char * cvrf_group_get_group_id (const struct cvrf_group *group)
 cvrf_group
const char * cvrf_group_get_description (const struct cvrf_group *group)
 cvrf_group
bool cvrf_group_set_group_id (struct cvrf_group *group, const char *group_id)
 cvrf_group
bool cvrf_group_set_description (struct cvrf_group *group, const char *description)
 cvrf_group
struct oscap_string_iteratorcvrf_group_get_product_ids (struct cvrf_group *group)
 cvrf_group
struct cvrf_relationship * cvrf_relationship_new (void)
 New CVRF Relationship element within ProductTree cvrf_relationship.
void cvrf_relationship_free (struct cvrf_relationship *relationship)
 Deallocates memory for a Relationship element cvrf_relationship.
struct cvrf_relationship * cvrf_relationship_clone (const struct cvrf_relationship *relation)
 cvrf_relationship
const char * cvrf_relationship_get_product_reference (const struct cvrf_relationship *relation)
 cvrf_relationship
const char * cvrf_relationship_get_relates_to_ref (const struct cvrf_relationship *relation)
 cvrf_relationship
struct cvrf_product_name * cvrf_relationship_get_product_name (const struct cvrf_relationship *relation)
 cvrf_relationship
bool cvrf_relationship_set_product_reference (struct cvrf_relationship *relation, const char *product_reference)
 cvrf_relationship
bool cvrf_relationship_set_relates_to_ref (struct cvrf_relationship *relation, const char *relates_to_ref)
 cvrf_relationship
bool cvrf_relationship_set_product_name (struct cvrf_relationship *relation, struct cvrf_product_name *name)
 cvrf_relationship
struct cvrf_branch * cvrf_branch_new (void)
 New CVRF branch of ProductTree or sub-branch cvrf_branch.
void cvrf_branch_free (struct cvrf_branch *branch)
 Deallocates memory for a Branch element cvrf_branch.
struct cvrf_branch * cvrf_branch_clone (const struct cvrf_branch *branch)
 cvrf_branch
const char * cvrf_branch_get_branch_name (const struct cvrf_branch *branch)
 cvrf_branch
struct cvrf_product_name * cvrf_branch_get_product_name (const struct cvrf_branch *branch)
 cvrf_branch
struct oscap_iterator * cvrf_branch_get_subbranches (struct cvrf_branch *branch)
 cvrf_branch
bool cvrf_branch_set_branch_name (struct cvrf_branch *branch, const char *branch_name)
 cvrf_branch
bool cvrf_branch_set_product_name (struct cvrf_branch *branch, struct cvrf_product_name *name)
 cvrf_branch
struct cvrf_product_tree * cvrf_product_tree_new (void)
 New ProductTree structure cvrf_product_tree.
void cvrf_product_tree_free (struct cvrf_product_tree *tree)
 Deallocates memory for a ProductTree element and all its child Branches, Relationships, and FullProductNames, if they exist cvrf_product_tree.
struct cvrf_product_tree * cvrf_product_tree_clone (const struct cvrf_product_tree *tree)
 cvrf_product_tree
const char * get_cvrf_product_id_from_cpe (struct cvrf_product_tree *tree, const char *cpe)
 Find the unique ProductID for the given CPE by searching the branches of the ProductTree: find the ProductID attribute for the FullProductName element with the appropriate CPE cvrf_product_tree.
int cvrf_product_tree_filter_by_cpe (struct cvrf_product_tree *tree, const char *cpe)
 Use the CPE name to find the matching ProductID, then filter the tree by removing branches and relationship elements not related to that ProductID cvrf_product_tree.
struct oscap_iterator * cvrf_product_tree_get_branches (struct cvrf_product_tree *tree)
bool cvrf_product_tree_add_product_name (struct cvrf_product_tree *tree, struct cvrf_product_name *full_name)
 cvrf_product_tree
struct cvrf_product_name_iterator * cvrf_product_tree_get_product_names (const struct cvrf_product_tree *tree)
 cvrf_product_tree
struct cvrf_product_name * cvrf_product_name_iterator_next (struct cvrf_product_name_iterator *it)
 cvrf_product_name_iterator
bool cvrf_product_name_iterator_has_more (struct cvrf_product_name_iterator *it)
 cvrf_product_name_iterator
void cvrf_product_name_iterator_free (struct cvrf_product_name_iterator *it)
 Deallocate memory for the CVRF FullProductName Iterator structure cvrf_product_name_iterator.
void cvrf_product_name_iterator_reset (struct cvrf_product_name_iterator *it)
 Restart iterator at the first FullProductName element in the ProductTree cvrf_product_name_iterator.
void cvrf_product_name_iterator_remove (struct cvrf_product_name_iterator *it)
 Detaches and frees the FullProductName iterator structure cvrf_product_name_iterator.
bool cvrf_product_tree_add_relationship (struct cvrf_product_tree *tree, struct cvrf_relationship *relation)
 cvrf_product_tree
struct cvrf_relationship_iterator * cvrf_product_tree_get_relationships (const struct cvrf_product_tree *tree)
 cvrf_product_tree
struct cvrf_relationship * cvrf_relationship_iterator_next (struct cvrf_relationship_iterator *it)
 cvrf_relationship_iterator
bool cvrf_relationship_iterator_has_more (struct cvrf_relationship_iterator *it)
 cvrf_relationship_iterator
void cvrf_relationship_iterator_free (struct cvrf_relationship_iterator *it)
 Deallocate memory for the CVRF Relationship Iterator structure cvrf_relationship_iterator.
void cvrf_relationship_iterator_reset (struct cvrf_relationship_iterator *it)
 Restart iterator at the first Relationship element in the ProductTree cvrf_relationship_iterator.
void cvrf_relationship_iterator_remove (struct cvrf_relationship_iterator *it)
 Detaches and frees the Relationship iterator structure cvrf_relationship_iterator.
bool cvrf_product_tree_add_group (struct cvrf_product_tree *tree, struct cvrf_group *group)
 cvrf_product_tree
struct cvrf_group_iterator * cvrf_product_tree_get_product_groups (const struct cvrf_product_tree *tree)
 cvrf_product_tree
struct cvrf_group * cvrf_group_iterator_next (struct cvrf_group_iterator *it)
 cvrf_group_iterator
bool cvrf_group_iterator_has_more (struct cvrf_group_iterator *it)
 cvrf_group_iterator
void cvrf_group_iterator_free (struct cvrf_group_iterator *it)
 Deallocate memory for the CVRF Group Iterator structure cvrf_group_iterator.
void cvrf_group_iterator_reset (struct cvrf_group_iterator *it)
 Restart iterator at the first Group element in the ProductTree cvrf_group_iterator.
void cvrf_group_iterator_remove (struct cvrf_group_iterator *it)
 Detaches and frees the Group iterator structure cvrf_group_iterator.
struct cvrf_acknowledgment * cvrf_acknowledgment_new (void)
 New CVRF Acknowledgment element within Acknowledgments container cvrf_acknowledgment.
void cvrf_acknowledgment_free (struct cvrf_acknowledgment *ack)
 Deallocates memory for an Acknowledgment element of the Acknowledgments container cvrf_acknowledgment.
struct cvrf_acknowledgment * cvrf_acknowledgment_clone (const struct cvrf_acknowledgment *ack)
 cvrf_acknowledgment
const char * cvrf_acknowledgment_get_description (const struct cvrf_acknowledgment *ack)
 cvrf_acknowledgment
bool cvrf_acknowledgment_set_description (struct cvrf_acknowledgment *ack, const char *description)
 cvrf_acknowledgment
struct oscap_string_iteratorcvrf_acknowledgment_get_names (const struct cvrf_acknowledgment *ack)
 cvrf_acknowledgment
struct oscap_string_iteratorcvrf_acknowledgment_get_organizations (const struct cvrf_acknowledgment *ack)
 cvrf_acknowledgment
struct oscap_string_iteratorcvrf_acknowledgment_get_urls (const struct cvrf_acknowledgment *ack)
 cvrf_acknowledgment
struct cvrf_note * cvrf_note_new (void)
 New CVRF Note element within Notes or DocumentNotes container cvrf_note.
void cvrf_note_free (struct cvrf_note *note)
 Deallocates memory for a Note element of the Notes container cvrf_note.
struct cvrf_note * cvrf_note_clone (const struct cvrf_note *note)
 cvrf_note
int cvrf_note_get_ordinal (const struct cvrf_note *note)
 cvrf_note
const char * cvrf_note_get_audience (const struct cvrf_note *note)
 cvrf_note
const char * cvrf_note_get_title (const struct cvrf_note *note)
 cvrf_note
const char * cvrf_note_get_contents (const struct cvrf_note *note)
 cvrf_note
bool cvrf_note_set_ordinal (struct cvrf_note *note, int ordinal)
 cvrf_note
bool cvrf_note_set_audience (struct cvrf_note *note, const char *audience)
 cvrf_note
bool cvrf_note_set_title (struct cvrf_note *note, const char *title)
 cvrf_note
bool cvrf_note_set_contents (struct cvrf_note *note, const char *contents)
 cvrf_note
struct cvrf_revision * cvrf_revision_new (void)
 New CVRF Revision structure cvrf_revision.
void cvrf_revision_free (struct cvrf_revision *revision)
 Deallocates memory for a Revision element of the RevisionHistory container cvrf_revision.
struct cvrf_revision * cvrf_revision_clone (const struct cvrf_revision *revision)
 cvrf_revision
const char * cvrf_revision_get_number (const struct cvrf_revision *revision)
 cvrf_revision
const char * cvrf_revision_get_date (const struct cvrf_revision *revision)
 cvrf_revision
const char * cvrf_revision_get_description (const struct cvrf_revision *revision)
 cvrf_revision
bool cvrf_revision_set_number (struct cvrf_revision *revision, const char *number)
 cvrf_revision
bool cvrf_revision_set_date (struct cvrf_revision *revision, const char *date)
 cvrf_revision
bool cvrf_revision_set_description (struct cvrf_revision *revision, const char *description)
 cvrf_revision
struct cvrf_doc_tracking * cvrf_doc_tracking_new (void)
 New CVRF DocumentTracking structure cvrf_doc_tracking.
void cvrf_doc_tracking_free (struct cvrf_doc_tracking *tracking)
 Deallocates memory for a DocumentTracking element cvrf_doc_tracking.
struct cvrf_doc_tracking * cvrf_doc_tracking_clone (const struct cvrf_doc_tracking *tracking)
 cvrf_doc_tracking
const char * cvrf_doc_tracking_get_tracking_id (const struct cvrf_doc_tracking *tracking)
 cvrf_doc_tracking
struct oscap_string_iteratorcvrf_doc_tracking_get_aliases (struct cvrf_doc_tracking *tracking)
 cvrf_doc_tracking
const char * cvrf_doc_tracking_get_version (const struct cvrf_doc_tracking *tracking)
 cvrf_doc_tracking
const char * cvrf_doc_tracking_get_init_release_date (const struct cvrf_doc_tracking *tracking)
 cvrf_doc_tracking
const char * cvrf_doc_tracking_get_cur_release_date (const struct cvrf_doc_tracking *tracking)
 cvrf_doc_tracking
const char * cvrf_doc_tracking_get_generator_engine (const struct cvrf_doc_tracking *tracking)
 cvrf_doc_tracking
const char * cvrf_doc_tracking_get_generator_date (const struct cvrf_doc_tracking *tracking)
 cvrf_doc_tracking
bool cvrf_doc_tracking_set_tracking_id (struct cvrf_doc_tracking *tracking, const char *id)
 cvrf_doc_tracking
bool cvrf_doc_tracking_set_version (struct cvrf_doc_tracking *tracking, const char *version)
 cvrf_doc_tracking
bool cvrf_doc_tracking_set_init_release_date (struct cvrf_doc_tracking *tracking, const char *init_release_date)
 cvrf_doc_tracking
bool cvrf_doc_tracking_set_cur_release_date (struct cvrf_doc_tracking *tracking, const char *cur_release_date)
 cvrf_doc_tracking
bool cvrf_doc_tracking_set_generator_engine (struct cvrf_doc_tracking *tracking, const char *generator_engine)
 cvrf_doc_tracking
bool cvrf_doc_tracking_set_generator_date (struct cvrf_doc_tracking *tracking, const char *generator_date)
 cvrf_doc_tracking
bool cvrf_doc_tracking_add_revision (struct cvrf_doc_tracking *tracking, struct cvrf_revision *revision)
 cvrf_doc_tracking
struct cvrf_revision_iterator * cvrf_doc_tracking_get_revision_history (const struct cvrf_doc_tracking *tracking)
 cvrf_doc_tracking
struct cvrf_revision * cvrf_revision_iterator_next (struct cvrf_revision_iterator *it)
 cvrf_revision_iterator
bool cvrf_revision_iterator_has_more (struct cvrf_revision_iterator *it)
 cvrf_revision_iterator
void cvrf_revision_iterator_free (struct cvrf_revision_iterator *it)
 Deallocate memory for the CVRF Revision Iterator structure cvrf_revision_iterator.
void cvrf_revision_iterator_reset (struct cvrf_revision_iterator *it)
 Restart iterator at the first Revision in the DocumentTracking cvrf_revision_iterator.
void cvrf_revision_iterator_remove (struct cvrf_revision_iterator *it)
 Detaches and frees the Revision iterator structure cvrf_revision_iterator.
struct cvrf_doc_publisher * cvrf_doc_publisher_new (void)
 New CVRF DocumentPublisher structure cvrf_doc_publisher.
void cvrf_doc_publisher_free (struct cvrf_doc_publisher *publisher)
 Deallocates memory for a DocumentPublisher element cvrf_doc_publisher.
struct cvrf_doc_publisher * cvrf_doc_publisher_clone (const struct cvrf_doc_publisher *publisher)
 cvrf_doc_publisher
const char * cvrf_doc_publisher_get_vendor_id (const struct cvrf_doc_publisher *publisher)
 cvrf_doc_publisher
const char * cvrf_doc_publisher_get_contact_details (const struct cvrf_doc_publisher *publisher)
 cvrf_doc_publisher
const char * cvrf_doc_publisher_get_issuing_authority (const struct cvrf_doc_publisher *publisher)
 cvrf_doc_publisher
bool cvrf_doc_publisher_set_vendor_id (struct cvrf_doc_publisher *publisher, const char *vendor_id)
 cvrf_doc_publisher
bool cvrf_doc_publisher_set_contact_details (struct cvrf_doc_publisher *publisher, const char *contact_details)
 cvrf_doc_publisher
bool cvrf_doc_publisher_set_issuing_authority (struct cvrf_doc_publisher *publisher, const char *issuing_authority)
 cvrf_doc_publisher
struct cvrf_reference * cvrf_reference_new (void)
 New CVRF Reference structure cvrf_reference.
void cvrf_reference_free (struct cvrf_reference *reference)
 Deallocates memory for a Reference element of the References container cvrf_reference.
struct cvrf_reference * cvrf_reference_clone (const struct cvrf_reference *ref)
 cvrf_reference
const char * cvrf_reference_get_url (const struct cvrf_reference *reference)
 cvrf_reference
const char * cvrf_reference_get_description (const struct cvrf_reference *reference)
 cvrf_reference
bool cvrf_reference_set_url (struct cvrf_reference *reference, const char *url)
 cvrf_reference
bool cvrf_reference_set_description (struct cvrf_reference *reference, const char *description)
 cvrf_reference
struct cvrf_document * cvrf_document_new (void)
 New CVRF Document structure cvrf_document.
void cvrf_document_free (struct cvrf_document *doc)
 Deallocates memory for the CVRF Document structure and all its child DocumentTracking, DocumentPublisher, DocumentReferences structures cvrf_document.
struct cvrf_document * cvrf_document_clone (const struct cvrf_document *doc)
 cvrf_document
const char * cvrf_document_get_doc_distribution (const struct cvrf_document *doc)
 cvrf_document
const char * cvrf_document_get_aggregate_severity (const struct cvrf_document *doc)
 cvrf_document
const char * cvrf_document_get_namespace (const struct cvrf_document *doc)
 cvrf_document
struct cvrf_doc_tracking * cvrf_document_get_tracking (const struct cvrf_document *doc)
 cvrf_document
struct cvrf_doc_publisher * cvrf_document_get_publisher (const struct cvrf_document *doc)
 cvrf_document
struct oscap_iterator * cvrf_document_get_notes (struct cvrf_document *doc)
 cvrf_document
struct oscap_iterator * cvrf_document_get_references (struct cvrf_document *doc)
 cvrf_document
struct oscap_iterator * cvrf_document_get_acknowledgments (struct cvrf_document *doc)
 cvrf_document
bool cvrf_document_set_doc_distribution (struct cvrf_document *doc, const char *distribution)
 cvrf_document
bool cvrf_document_set_aggregate_severity (struct cvrf_document *doc, const char *severity)
 cvrf_document
bool cvrf_document_set_namespace (struct cvrf_document *doc, const char *ns)
 cvrf_document
bool cvrf_document_set_publisher (struct cvrf_document *doc, struct cvrf_doc_publisher *publisher)
 cvrf_document
bool cvrf_document_set_tracking (struct cvrf_document *doc, struct cvrf_doc_tracking *track)
 cvrf_document
struct cvrf_model * cvrf_model_new (void)
 New CVRF model cvrf_model.
void cvrf_model_free (struct cvrf_model *cvrf)
 Deallocates memory for the CVRF Model structure and all its child elements cvrf_model.
struct cvrf_model * cvrf_model_clone (const struct cvrf_model *model)
 cvrf_model
int cvrf_model_filter_by_cpe (struct cvrf_model *model, const char *cpe)
 Removes all Branches, Relationships, and ProductIDs within Vulnerabilities that do no pertain to the provided CPE cvrf_model.
const char * cvrf_model_get_doc_title (const struct cvrf_model *model)
 cvrf_model
const char * cvrf_model_get_doc_type (const struct cvrf_model *model)
 cvrf_model
bool cvrf_model_set_doc_title (struct cvrf_model *model, const char *doc_title)
 cvrf_model
bool cvrf_model_set_doc_type (struct cvrf_model *model, const char *doc_type)
 cvrf_model
struct cvrf_product_tree * cvrf_model_get_product_tree (struct cvrf_model *model)
 cvrf_model
struct cvrf_document * cvrf_model_get_document (const struct cvrf_model *model)
 cvrf_model
const char * cvrf_model_get_identification (struct cvrf_model *model)
 cvrf_model
bool cvrf_model_set_document (struct cvrf_model *model, struct cvrf_document *doc)
 cvrf_model
struct
cvrf_vulnerability_iterator * 
cvrf_model_get_vulnerabilities (const struct cvrf_model *model)
 cvrf_model
bool cvrf_model_add_vulnerability (struct cvrf_model *model, struct cvrf_vulnerability *vuln)
 cvrf_model
struct cvrf_vulnerability * cvrf_vulnerability_iterator_next (struct cvrf_vulnerability_iterator *it)
 cvrf_vulnerability_iterator
bool cvrf_vulnerability_iterator_has_more (struct cvrf_vulnerability_iterator *it)
 cvrf_vulnerability_iterator
void cvrf_vulnerability_iterator_free (struct cvrf_vulnerability_iterator *it)
 Deallocate memory for the CVRF Vulnerability Iterator structure cvrf_vulnerability_iterator.
void cvrf_vulnerability_iterator_reset (struct cvrf_vulnerability_iterator *it)
 Restart iterator at the first Vulnerability in the document cvrf_vulnerability_iterator.
void cvrf_vulnerability_iterator_remove (struct cvrf_vulnerability_iterator *it)
 Detaches and frees the Vulnerability iterator structure cvrf_vulnerability_iterator.
struct cvrf_index * cvrf_index_new (void)
 New index structure holding all CVRF models cvrf_index.
void cvrf_index_free (struct cvrf_index *index)
 Deallocates memory for the CVRF Index structure and all the Models it contains cvrf_index.
struct cvrf_index * cvrf_index_clone (const struct cvrf_index *index)
 cvrf_index
const char * cvrf_index_get_source_url (const struct cvrf_index *index)
 cvrf_index
const char * cvrf_index_get_index_file (const struct cvrf_index *index)
 cvrf_index
bool cvrf_index_set_source_url (struct cvrf_index *index, const char *url)
 cvrf_index
bool cvrf_index_set_index_file (struct cvrf_index *index, const char *index_file)
 cvrf_index
bool cvrf_index_add_model (struct cvrf_index *index, struct cvrf_model *model)
 cvrf_index
struct cvrf_model_iterator * cvrf_index_get_models (const struct cvrf_index *index)
 cvrf_index
struct cvrf_model * cvrf_model_iterator_next (struct cvrf_model_iterator *it)
 cvrf_model_iterator
bool cvrf_model_iterator_has_more (struct cvrf_model_iterator *it)
 cvrf_model_iterator
void cvrf_model_iterator_free (struct cvrf_model_iterator *it)
 Deallocate memory for the CVRF Model Iterator structure cvrf_model_iterator.
void cvrf_model_iterator_reset (struct cvrf_model_iterator *it)
 Restart iterator at the first Model contained in the Index cvrf_model_iterator.
void cvrf_model_iterator_remove (struct cvrf_model_iterator *it)
 Detaches and frees the Model iterator structure cvrf_model_iterator.
struct cvrf_session * cvrf_session_new_from_source_model (struct oscap_source *source)
 cvrf_session
struct cvrf_session * cvrf_session_new_from_source_index (struct oscap_source *source)
 cvrf_session
void cvrf_session_free (struct cvrf_session *session)
 Deallocates memory for a CVRF Session structure cvrf_session.
struct cvrf_model * cvrf_session_get_model (struct cvrf_session *session)
 cvrf_session
struct cvrf_index * cvrf_session_get_index (const struct cvrf_session *session)
 cvrf_session
struct oscap_string_iteratorcvrf_session_get_product_ids (struct cvrf_session *session)
 After filtering the CVRF model structure by the CPE, all the ProductIDs related to that operating system should be held in this stringlist cvrf_session.
const char * cvrf_session_get_os_name (const struct cvrf_session *session)
 cvrf_session
void cvrf_session_set_model (struct cvrf_session *session, struct cvrf_model *model)
 Add the CVRF model to be evaluated to the Session structure cvrf_session.
bool cvrf_session_set_index (struct cvrf_session *session, struct cvrf_index *index)
 Add the CVRF index to be evaluated to the Session structure cvrf_session.
bool cvrf_session_set_os_name (struct cvrf_session *session, const char *os_name)
 Add the CPE name for filtering of relevant ProductIDs and CVRF elements cvrf_session.
struct cvrf_rpm_attributes * cvrf_rpm_attributes_new (void)
 Create a new CVRF RPM attributes structure cvrf_rpm_attributes.
void cvrf_rpm_attributes_free (struct cvrf_rpm_attributes *attributes)
 Deallocate memory for the CVRF RPM attributes structure cvrf_rpm_attributes.
const char * cvrf_rpm_attributes_get_full_package_name (const struct cvrf_rpm_attributes *attributes)
 cvrf_rpm_attributes
const char * cvrf_rpm_attributes_get_rpm_name (const struct cvrf_rpm_attributes *attributes)
 Used to check if the RPM file exists on the system during evaluation cvrf_rpm_attributes.
const char * cvrf_rpm_attributes_get_evr_format (const struct cvrf_rpm_attributes *attributes)
 Used to check if the system is vulnerable by comparing EVR from the system to EVR in the CVRF file cvrf_rpm_attributes.
bool cvrf_rpm_attributes_set_full_package_name (struct cvrf_rpm_attributes *attributes, const char *full_package)
 cvrf_rpm_attributes
bool cvrf_rpm_attributes_set_rpm_name (struct cvrf_rpm_attributes *attributes, const char *rpm_name)
 cvrf_rpm_attributes
bool cvrf_rpm_attributes_set_evr_format (struct cvrf_rpm_attributes *attributes, const char *evr_format)
 cvrf_rpm_attributes
const char * cvrf_model_supported (void)
 Get supported version of CVRF XML.
struct cvrf_index * cvrf_index_import (struct oscap_source *index_source)
 Parses specified text index file and parses each filename in the list into a CVRF model contained in the CVRF index structure cvrf_index.
struct cvrf_model * cvrf_model_import (struct oscap_source *source)
 Parses the specified XML file and creates a list of CVRF data structures.
struct oscap_source * cvrf_index_get_export_source (struct cvrf_index *index)
 Export CVRF Index to the export source as an XML doc cvrf_index.
struct oscap_source * cvrf_model_get_export_source (struct cvrf_model *model)
 Export CVRF Model to the export source as an XML doc cvrf_model.
struct oscap_source * cvrf_model_get_results_source (struct oscap_source *import_source, const char *os_name)
 Import and parse the CVRF Model from the provided source, filter it by CPE to find appropriate packages, check these for vulnerabilities, and generate an XML document of the results cvrf_session.
struct oscap_source * cvrf_index_get_results_source (struct oscap_source *import_source, const char *os_name)
 Import and parse the CVRF Index from the provided source, filter it by CPE to find appropriate packages, check these for vulnerabilities, and generate an XML document of the results cvrf_session.


Detailed Description

Interface to Common Vulnerability Reporting Framework.

Copyright 2017 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

Authors: Katarina Jankov <kj226@cornell.edu>


Generated on Tue Nov 14 12:18:54 2017 for Open SCAP Library by  doxygen 1.5.6