Open SCAP Library

Files | Functions
CVRF

## Files
file | cvrf.h
| Interface to Common Vulnerability Reporting Framework.

## Functions
struct oscap_iterator * | cvrf_product_tree_get_branches (struct cvrf_product_tree *tree)
struct cvrf_product_status * | cvrf_product_status::cvrf_product_status_new (void)
| New Status member of a ProductStatuses container within a Vulnerability element. More...
void | cvrf_product_status::cvrf_product_status_free (struct cvrf_product_status *status)
| Deallocates memory for a Status element of the ProductStatuses container. More...
struct cvrf_product_status * | cvrf_product_status::cvrf_product_status_clone (const struct cvrf_product_status *stat)
struct oscap_string_iterator * | cvrf_product_status::cvrf_product_status_get_ids (struct cvrf_product_status *stat)
struct cvrf_threat * | cvrf_threat::cvrf_threat_new (void)
| New CVRF Threat element. More...
void | cvrf_threat::cvrf_threat_free (struct cvrf_threat *threat)
| Deallocates memory for a Threat element of the Threats container. More...
struct cvrf_threat * | cvrf_threat::cvrf_threat_clone (const struct cvrf_threat *threat)
const char * | cvrf_threat::cvrf_threat_get_date (const struct cvrf_threat *threat)
const char * | cvrf_threat::cvrf_threat_get_description (const struct cvrf_threat *threat)
struct oscap_string_iterator * | cvrf_threat::cvrf_threat_get_product_ids (struct cvrf_threat *threat)
struct oscap_string_iterator * | cvrf_threat::cvrf_threat_get_group_ids (struct cvrf_threat *threat)
bool | cvrf_threat::cvrf_threat_set_date (struct cvrf_threat *threat, const char *date)
bool | cvrf_threat::cvrf_threat_set_description (struct cvrf_threat *threat, const char *description)
struct cvrf_remediation * | cvrf_remediation::cvrf_remediation_new (void)
| New CVRF Remediation. More...
void | cvrf_remediation::cvrf_remediation_free (struct cvrf_remediation *remed)
| Deallocates memory for a Remediation element of the Remediations container. More...
struct cvrf_remediation * | cvrf_remediation::cvrf_remediation_clone (const struct cvrf_remediation *remed)
const char * | cvrf_remediation::cvrf_remediation_get_date (const struct cvrf_remediation *remed)
const char * | cvrf_remediation::cvrf_remediation_get_description (const struct cvrf_remediation *remed)
const char * | cvrf_remediation::cvrf_remediation_get_url (const struct cvrf_remediation *remed)
const char * | cvrf_remediation::cvrf_remediation_get_entitlement (const struct cvrf_remediation *remed)
struct oscap_string_iterator * | cvrf_remediation::cvrf_remediation_get_product_ids (struct cvrf_remediation *remed)
struct oscap_string_iterator * | cvrf_remediation::cvrf_remediation_get_group_ids (struct cvrf_remediation *remed)
bool | cvrf_remediation::cvrf_remediation_set_date (struct cvrf_remediation *remed, const char *date)
bool | cvrf_remediation::cvrf_remediation_set_description (struct cvrf_remediation *remed, const char *description)
bool | cvrf_remediation::cvrf_remediation_set_url (struct cvrf_remediation *remed, const char *url)
bool | cvrf_remediation::cvrf_remediation_set_entitlement (struct cvrf_remediation *remed, const char *entitlement)
struct cvrf_score_set * | cvrf_score_set::cvrf_score_set_new (void)
| New ScoreSet member of a CVSSScoreSets container within a Vulnerability element. More...
void | cvrf_score_set::cvrf_score_set_free (struct cvrf_score_set *score_set)
| Deallocates memory for a ScoreSet element of the CVSSScoreSets container. More...
struct cvrf_score_set * | cvrf_score_set::cvrf_score_set_clone (const struct cvrf_score_set *score_set)
const char * | cvrf_score_set::cvrf_score_set_get_vector (const struct cvrf_score_set *score_set)
struct oscap_string_iterator * | cvrf_score_set::cvrf_score_set_get_product_ids (struct cvrf_score_set *score_set)
struct cvss_impact * | cvrf_score_set::cvrf_score_set_get_impact (const struct cvrf_score_set *score_set)
char * | cvrf_score_set::cvrf_score_set_get_base_score (const struct cvrf_score_set *score_set)
char * | cvrf_score_set::cvrf_score_set_get_environmental_score (const struct cvrf_score_set *score_set)
char * | cvrf_score_set::cvrf_score_set_get_temporal_score (const struct cvrf_score_set *score_set)
bool | cvrf_score_set::cvrf_score_set_set_vector (struct cvrf_score_set *score_set, const char *vector)
bool | cvrf_score_set::cvrf_score_set_set_impact (struct cvrf_score_set *score_set, struct cvss_impact *impact)
bool | cvrf_score_set::cvrf_score_set_add_metric (struct cvrf_score_set *score_set, enum cvss_category category, const char *score)
struct cvrf_involvement * | cvrf_involvement::cvrf_involvement_new (void)
| New CVRF Involvement. More...
void | cvrf_involvement::cvrf_involvement_free (struct cvrf_involvement *involve)
| Deallocates memory for an Involvement element. More...
struct cvrf_involvement * | cvrf_involvement::cvrf_involvement_clone (const struct cvrf_involvement *involve)
const char * | cvrf_involvement::cvrf_involvement_get_description (const struct cvrf_involvement *involve)
bool | cvrf_involvement::cvrf_involvement_set_description (struct cvrf_involvement *involve, const char *description)
struct cvrf_vulnerability_cwe * | cvrf_vulnerability_cwe::cvrf_vulnerability_cwe_new (void)
| New CVRF CWE structure. More...
void | cvrf_vulnerability_cwe::cvrf_vulnerability_cwe_free (struct cvrf_vulnerability_cwe *cwe)
| Deallocates memory for a CWE element. More...
struct cvrf_vulnerability_cwe * | cvrf_vulnerability_cwe::cvrf_vulnerability_cwe_clone (const struct cvrf_vulnerability_cwe *cwe)
const char * | cvrf_vulnerability_cwe::cvrf_vulnerability_cwe_get_cwe (const struct cvrf_vulnerability_cwe *vuln_cwe)
const char * | cvrf_vulnerability_cwe::cvrf_vulnerability_cwe_get_id (const struct cvrf_vulnerability_cwe *vuln_cwe)
bool | cvrf_vulnerability_cwe::cvrf_vulnerability_cwe_set_cwe (struct cvrf_vulnerability_cwe *vuln_cwe, const char *cwe)
bool | cvrf_vulnerability_cwe::cvrf_vulnerability_cwe_set_id (struct cvrf_vulnerability_cwe *vuln_cwe, const char *id)
struct cvrf_vulnerability * | cvrf_vulnerability::cvrf_vulnerability_new (void)
| New CVRF Vulnerability. More...
void | cvrf_vulnerability::cvrf_vulnerability_free (struct cvrf_vulnerability *vulnerability)
| Deallocates memory for a Vulnerability element. More...
struct cvrf_vulnerability * | cvrf_vulnerability::cvrf_vulnerability_clone (const struct cvrf_vulnerability *vuln)
int | cvrf_vulnerability::cvrf_vulnerability_filter_by_product (struct cvrf_vulnerability *vuln, const char *prod)
int | cvrf_vulnerability::cvrf_vulnerability_get_ordinal (const struct cvrf_vulnerability *vuln)
const char * | cvrf_vulnerability::cvrf_vulnerability_get_title (const struct cvrf_vulnerability *vuln)
const char * | cvrf_vulnerability::cvrf_vulnerability_get_system_id (const struct cvrf_vulnerability *vuln)
const char * | cvrf_vulnerability::cvrf_vulnerability_get_system_name (const struct cvrf_vulnerability *vuln)
const char * | cvrf_vulnerability::cvrf_vulnerability_get_discovery_date (const struct cvrf_vulnerability *vuln)
const char * | cvrf_vulnerability::cvrf_vulnerability_get_release_date (const struct cvrf_vulnerability *vuln)
const char * | cvrf_vulnerability::cvrf_vulnerability_get_cve_id (const struct cvrf_vulnerability *vuln)
bool | cvrf_vulnerability::cvrf_vulnerability_set_ordinal (struct cvrf_vulnerability *vuln, int ordinal)
bool | cvrf_vulnerability::cvrf_vulnerability_set_title (struct cvrf_vulnerability *vuln, const char *vulnerability_title)
bool | cvrf_vulnerability::cvrf_vulnerability_set_system_id (struct cvrf_vulnerability *vuln, const char *id)
bool | cvrf_vulnerability::cvrf_vulnerability_set_system_name (struct cvrf_vulnerability *vuln, const char *sys_name)
bool | cvrf_vulnerability::cvrf_vulnerability_set_discovery_date (struct cvrf_vulnerability *vuln, const char *discovery_date)
bool | cvrf_vulnerability::cvrf_vulnerability_set_release_date (struct cvrf_vulnerability *vuln, const char *release_date)
bool | cvrf_vulnerability::cvrf_vulnerability_set_cve_id (struct cvrf_vulnerability *vuln, const char *cve_id)
struct oscap_iterator * | cvrf_vulnerability::cvrf_vulnerability_get_references (struct cvrf_vulnerability *vuln)
struct oscap_iterator * | cvrf_vulnerability::cvrf_vulnerability_get_acknowledgments (struct cvrf_vulnerability *vuln)
struct oscap_iterator * | cvrf_vulnerability::cvrf_vulnerability_get_notes (struct cvrf_vulnerability *vuln)
bool | cvrf_vulnerability::cvrf_vulnerability_add_vulnerability_cwe (struct cvrf_vulnerability *vuln, struct cvrf_vulnerability_cwe *vulnerability_cwe)
struct cvrf_vulnerability_cwe_iterator * | cvrf_vulnerability::cvrf_vulnerability_get_vulnerability_cwes (const struct cvrf_vulnerability *vuln)
bool | cvrf_vulnerability::cvrf_vulnerability_add_involvement (struct cvrf_vulnerability *vuln, struct cvrf_involvement *involvement)
struct cvrf_involvement_iterator * | cvrf_vulnerability::cvrf_vulnerability_get_involvements (const struct cvrf_vulnerability *vuln)
bool | cvrf_vulnerability::cvrf_vulnerability_add_score_set (struct cvrf_vulnerability *vuln, struct cvrf_score_set *score_set)
struct cvrf_score_set_iterator * | cvrf_vulnerability::cvrf_vulnerability_get_score_sets (const struct cvrf_vulnerability *vuln)
bool | cvrf_vulnerability::cvrf_vulnerability_add_cvrf_product_status (struct cvrf_vulnerability *vuln, struct cvrf_product_status *stat)
struct cvrf_product_status_iterator * | cvrf_vulnerability::cvrf_vulnerability_get_product_statuses (const struct cvrf_vulnerability *vuln)
bool | cvrf_vulnerability::cvrf_vulnerability_add_remediation (struct cvrf_vulnerability *vuln, struct cvrf_remediation *remed)
struct cvrf_remediation_iterator * | cvrf_vulnerability::cvrf_vulnerability_get_remediations (const struct cvrf_vulnerability *vuln)
bool | cvrf_vulnerability::cvrf_vulnerability_add_threat (struct cvrf_vulnerability *vuln, struct cvrf_threat *threat)
struct cvrf_threat_iterator * | cvrf_vulnerability::cvrf_vulnerability_get_threats (const struct cvrf_vulnerability *vuln)
struct cvrf_product_name * | cvrf_product_name::cvrf_product_name_new (void)
| New FullProductName of Branch or ProductTree. More...
void | cvrf_product_name::cvrf_product_name_free (struct cvrf_product_name *full_name)
| Deallocates memory for a FullProductName element. More...
struct cvrf_product_name * | cvrf_product_name::cvrf_product_name_clone (const struct cvrf_product_name *full_name)
const char * | cvrf_product_name::cvrf_product_name_get_product_id (const struct cvrf_product_name *full_name)
const char * | cvrf_product_name::cvrf_product_name_get_cpe (const struct cvrf_product_name *full_name)
bool | cvrf_product_name::cvrf_product_name_set_product_id (struct cvrf_product_name *full_name, const char *product_id)
bool | cvrf_product_name::cvrf_product_name_set_cpe (struct cvrf_product_name *full_name, const char *cpe)
struct cvrf_group * | cvrf_group::cvrf_group_new (void)
| New CVRF Group child of ProductGroups container element. More...
void | cvrf_group::cvrf_group_free (struct cvrf_group *group)
| Deallocates memory for a Group element. More...
struct cvrf_group * | cvrf_group::cvrf_group_clone (const struct cvrf_group *group)
const char * | cvrf_group::cvrf_group_get_group_id (const struct cvrf_group *group)
const char * | cvrf_group::cvrf_group_get_description (const struct cvrf_group *group)
bool | cvrf_group::cvrf_group_set_group_id (struct cvrf_group *group, const char *group_id)
bool | cvrf_group::cvrf_group_set_description (struct cvrf_group *group, const char *description)
struct oscap_string_iterator * | cvrf_group::cvrf_group_get_product_ids (struct cvrf_group *group)
struct cvrf_relationship * | cvrf_relationship::cvrf_relationship_new (void)
| New CVRF Relationship element within ProductTree. More...
void | cvrf_relationship::cvrf_relationship_free (struct cvrf_relationship *relationship)
| Deallocates memory for a Relationship element. More...
struct cvrf_relationship * | cvrf_relationship::cvrf_relationship_clone (const struct cvrf_relationship *relation)
const char * | cvrf_relationship::cvrf_relationship_get_product_reference (const struct cvrf_relationship *relation)
const char * | cvrf_relationship::cvrf_relationship_get_relates_to_ref (const struct cvrf_relationship *relation)
struct cvrf_product_name * | cvrf_relationship::cvrf_relationship_get_product_name (const struct cvrf_relationship *relation)
bool | cvrf_relationship::cvrf_relationship_set_product_reference (struct cvrf_relationship *relation, const char *product_reference)
bool | cvrf_relationship::cvrf_relationship_set_relates_to_ref (struct cvrf_relationship *relation, const char *relates_to_ref)
bool | cvrf_relationship::cvrf_relationship_set_product_name (struct cvrf_relationship *relation, struct cvrf_product_name *name)
struct cvrf_branch * | cvrf_branch::cvrf_branch_new (void)
| New CVRF branch of ProductTree or sub-branch. More...
void | cvrf_branch::cvrf_branch_free (struct cvrf_branch *branch)
| Deallocates memory for a Branch element. More...
struct cvrf_branch * | cvrf_branch::cvrf_branch_clone (const struct cvrf_branch *branch)
const char * | cvrf_branch::cvrf_branch_get_branch_name (const struct cvrf_branch *branch)
struct cvrf_product_name * | cvrf_branch::cvrf_branch_get_product_name (const struct cvrf_branch *branch)
struct oscap_iterator * | cvrf_branch::cvrf_branch_get_subbranches (struct cvrf_branch *branch)
bool | cvrf_branch::cvrf_branch_set_branch_name (struct cvrf_branch *branch, const char *branch_name)
bool | cvrf_branch::cvrf_branch_set_product_name (struct cvrf_branch *branch, struct cvrf_product_name *name)
struct cvrf_product_tree * | cvrf_product_tree::cvrf_product_tree_new (void)
| New ProductTree structure. More...
void | cvrf_product_tree::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. More...
struct cvrf_product_tree * | cvrf_product_tree::cvrf_product_tree_clone (const struct cvrf_product_tree *tree)
const char * | cvrf_product_tree::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. More...
int | cvrf_product_tree::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. More...
bool | cvrf_product_tree::cvrf_product_tree_add_product_name (struct cvrf_product_tree *tree, struct cvrf_product_name *full_name)
struct cvrf_product_name_iterator * | cvrf_product_tree::cvrf_product_tree_get_product_names (const struct cvrf_product_tree *tree)
bool | cvrf_product_tree::cvrf_product_tree_add_relationship (struct cvrf_product_tree *tree, struct cvrf_relationship *relation)
struct cvrf_relationship_iterator * | cvrf_product_tree::cvrf_product_tree_get_relationships (const struct cvrf_product_tree *tree)
bool | cvrf_product_tree::cvrf_product_tree_add_group (struct cvrf_product_tree *tree, struct cvrf_group *group)
struct cvrf_group_iterator * | cvrf_product_tree::cvrf_product_tree_get_product_groups (const struct cvrf_product_tree *tree)
struct cvrf_acknowledgment * | cvrf_acknowledgment::cvrf_acknowledgment_new (void)
| New CVRF Acknowledgment element within Acknowledgments container. More...
void | cvrf_acknowledgment::cvrf_acknowledgment_free (struct cvrf_acknowledgment *ack)
| Deallocates memory for an Acknowledgment element of the Acknowledgments container. More...
struct cvrf_acknowledgment * | cvrf_acknowledgment::cvrf_acknowledgment_clone (const struct cvrf_acknowledgment *ack)
const char * | cvrf_acknowledgment::cvrf_acknowledgment_get_description (const struct cvrf_acknowledgment *ack)
bool | cvrf_acknowledgment::cvrf_acknowledgment_set_description (struct cvrf_acknowledgment *ack, const char *description)
struct oscap_string_iterator * | cvrf_acknowledgment::cvrf_acknowledgment_get_names (const struct cvrf_acknowledgment *ack)
struct oscap_string_iterator * | cvrf_acknowledgment::cvrf_acknowledgment_get_organizations (const struct cvrf_acknowledgment *ack)
struct oscap_string_iterator * | cvrf_acknowledgment::cvrf_acknowledgment_get_urls (const struct cvrf_acknowledgment *ack)
struct cvrf_note * | cvrf_note::cvrf_note_new (void)
| New CVRF Note element within Notes or DocumentNotes container. More...
void | cvrf_note::cvrf_note_free (struct cvrf_note *note)
| Deallocates memory for a Note element of the Notes container. More...
struct cvrf_note * | cvrf_note::cvrf_note_clone (const struct cvrf_note *note)
int | cvrf_note::cvrf_note_get_ordinal (const struct cvrf_note *note)
const char * | cvrf_note::cvrf_note_get_audience (const struct cvrf_note *note)
const char * | cvrf_note::cvrf_note_get_title (const struct cvrf_note *note)
const char * | cvrf_note::cvrf_note_get_contents (const struct cvrf_note *note)
bool | cvrf_note::cvrf_note_set_ordinal (struct cvrf_note *note, int ordinal)
bool | cvrf_note::cvrf_note_set_audience (struct cvrf_note *note, const char *audience)
bool | cvrf_note::cvrf_note_set_title (struct cvrf_note *note, const char *title)
bool | cvrf_note::cvrf_note_set_contents (struct cvrf_note *note, const char *contents)
struct cvrf_revision * | cvrf_revision::cvrf_revision_new (void)
| New CVRF Revision structure. More...
void | cvrf_revision::cvrf_revision_free (struct cvrf_revision *revision)
| Deallocates memory for a Revision element of the RevisionHistory container. More...
struct cvrf_revision * | cvrf_revision::cvrf_revision_clone (const struct cvrf_revision *revision)
const char * | cvrf_revision::cvrf_revision_get_number (const struct cvrf_revision *revision)
const char * | cvrf_revision::cvrf_revision_get_date (const struct cvrf_revision *revision)
const char * | cvrf_revision::cvrf_revision_get_description (const struct cvrf_revision *revision)
bool | cvrf_revision::cvrf_revision_set_number (struct cvrf_revision *revision, const char *number)
bool | cvrf_revision::cvrf_revision_set_date (struct cvrf_revision *revision, const char *date)
bool | cvrf_revision::cvrf_revision_set_description (struct cvrf_revision *revision, const char *description)
struct cvrf_doc_tracking * | cvrf_doc_tracking::cvrf_doc_tracking_new (void)
| New CVRF DocumentTracking structure. More...
void | cvrf_doc_tracking::cvrf_doc_tracking_free (struct cvrf_doc_tracking *tracking)
| Deallocates memory for a DocumentTracking element. More...
struct cvrf_doc_tracking * | cvrf_doc_tracking::cvrf_doc_tracking_clone (const struct cvrf_doc_tracking *tracking)
const char * | cvrf_doc_tracking::cvrf_doc_tracking_get_tracking_id (const struct cvrf_doc_tracking *tracking)
struct oscap_string_iterator * | cvrf_doc_tracking::cvrf_doc_tracking_get_aliases (struct cvrf_doc_tracking *tracking)
const char * | cvrf_doc_tracking::cvrf_doc_tracking_get_version (const struct cvrf_doc_tracking *tracking)
const char * | cvrf_doc_tracking::cvrf_doc_tracking_get_init_release_date (const struct cvrf_doc_tracking *tracking)
const char * | cvrf_doc_tracking::cvrf_doc_tracking_get_cur_release_date (const struct cvrf_doc_tracking *tracking)
const char * | cvrf_doc_tracking::cvrf_doc_tracking_get_generator_engine (const struct cvrf_doc_tracking *tracking)
const char * | cvrf_doc_tracking::cvrf_doc_tracking_get_generator_date (const struct cvrf_doc_tracking *tracking)
bool | cvrf_doc_tracking::cvrf_doc_tracking_set_tracking_id (struct cvrf_doc_tracking *tracking, const char *id)
bool | cvrf_doc_tracking::cvrf_doc_tracking_set_version (struct cvrf_doc_tracking *tracking, const char *version)
bool | cvrf_doc_tracking::cvrf_doc_tracking_set_init_release_date (struct cvrf_doc_tracking *tracking, const char *init_release_date)
bool | cvrf_doc_tracking::cvrf_doc_tracking_set_cur_release_date (struct cvrf_doc_tracking *tracking, const char *cur_release_date)
bool | cvrf_doc_tracking::cvrf_doc_tracking_set_generator_engine (struct cvrf_doc_tracking *tracking, const char *generator_engine)
bool | cvrf_doc_tracking::cvrf_doc_tracking_set_generator_date (struct cvrf_doc_tracking *tracking, const char *generator_date)
bool | cvrf_doc_tracking::cvrf_doc_tracking_add_revision (struct cvrf_doc_tracking *tracking, struct cvrf_revision *revision)
struct cvrf_revision_iterator * | cvrf_doc_tracking::cvrf_doc_tracking_get_revision_history (const struct cvrf_doc_tracking *tracking)
struct cvrf_doc_publisher * | cvrf_doc_publisher::cvrf_doc_publisher_new (void)
| New CVRF DocumentPublisher structure. More...
void | cvrf_doc_publisher::cvrf_doc_publisher_free (struct cvrf_doc_publisher *publisher)
| Deallocates memory for a DocumentPublisher element. More...
struct cvrf_doc_publisher * | cvrf_doc_publisher::cvrf_doc_publisher_clone (const struct cvrf_doc_publisher *publisher)
const char * | cvrf_doc_publisher::cvrf_doc_publisher_get_vendor_id (const struct cvrf_doc_publisher *publisher)
const char * | cvrf_doc_publisher::cvrf_doc_publisher_get_contact_details (const struct cvrf_doc_publisher *publisher)
const char * | cvrf_doc_publisher::cvrf_doc_publisher_get_issuing_authority (const struct cvrf_doc_publisher *publisher)
bool | cvrf_doc_publisher::cvrf_doc_publisher_set_vendor_id (struct cvrf_doc_publisher *publisher, const char *vendor_id)
bool | cvrf_doc_publisher::cvrf_doc_publisher_set_contact_details (struct cvrf_doc_publisher *publisher, const char *contact_details)
bool | cvrf_doc_publisher::cvrf_doc_publisher_set_issuing_authority (struct cvrf_doc_publisher *publisher, const char *issuing_authority)
struct cvrf_reference * | cvrf_reference::cvrf_reference_new (void)
| New CVRF Reference structure. More...
void | cvrf_reference::cvrf_reference_free (struct cvrf_reference *reference)
| Deallocates memory for a Reference element of the References container. More...
struct cvrf_reference * | cvrf_reference::cvrf_reference_clone (const struct cvrf_reference *ref)
const char * | cvrf_reference::cvrf_reference_get_url (const struct cvrf_reference *reference)
const char * | cvrf_reference::cvrf_reference_get_description (const struct cvrf_reference *reference)
bool | cvrf_reference::cvrf_reference_set_url (struct cvrf_reference *reference, const char *url)
bool | cvrf_reference::cvrf_reference_set_description (struct cvrf_reference *reference, const char *description)
struct cvrf_document * | cvrf_document::cvrf_document_new (void)
| New CVRF Document structure. More...
void | cvrf_document::cvrf_document_free (struct cvrf_document *doc)
| Deallocates memory for the CVRF Document structure and all its child DocumentTracking, DocumentPublisher, DocumentReferences structures. More...
struct cvrf_document * | cvrf_document::cvrf_document_clone (const struct cvrf_document *doc)
const char * | cvrf_document::cvrf_document_get_doc_distribution (const struct cvrf_document *doc)
const char * | cvrf_document::cvrf_document_get_aggregate_severity (const struct cvrf_document *doc)
const char * | cvrf_document::cvrf_document_get_namespace (const struct cvrf_document *doc)
struct cvrf_doc_tracking * | cvrf_document::cvrf_document_get_tracking (const struct cvrf_document *doc)
struct cvrf_doc_publisher * | cvrf_document::cvrf_document_get_publisher (const struct cvrf_document *doc)
struct oscap_iterator * | cvrf_document::cvrf_document_get_notes (struct cvrf_document *doc)
struct oscap_iterator * | cvrf_document::cvrf_document_get_references (struct cvrf_document *doc)
struct oscap_iterator * | cvrf_document::cvrf_document_get_acknowledgments (struct cvrf_document *doc)
bool | cvrf_document::cvrf_document_set_doc_distribution (struct cvrf_document *doc, const char *distribution)
bool | cvrf_document::cvrf_document_set_aggregate_severity (struct cvrf_document *doc, const char *severity)
bool | cvrf_document::cvrf_document_set_namespace (struct cvrf_document *doc, const char *ns)
bool | cvrf_document::cvrf_document_set_publisher (struct cvrf_document *doc, struct cvrf_doc_publisher *publisher)
bool | cvrf_document::cvrf_document_set_tracking (struct cvrf_document *doc, struct cvrf_doc_tracking *track)
struct cvrf_model * | cvrf_model::cvrf_model_new (void)
| New CVRF model. More...
void | cvrf_model::cvrf_model_free (struct cvrf_model *cvrf)
| Deallocates memory for the CVRF Model structure and all its child elements. More...
struct cvrf_model * | cvrf_model::cvrf_model_clone (const struct cvrf_model *model)
int | cvrf_model::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. More...
const char * | cvrf_model::cvrf_model_get_doc_title (const struct cvrf_model *model)
const char * | cvrf_model::cvrf_model_get_doc_type (const struct cvrf_model *model)
bool | cvrf_model::cvrf_model_set_doc_title (struct cvrf_model *model, const char *doc_title)
bool | cvrf_model::cvrf_model_set_doc_type (struct cvrf_model *model, const char *doc_type)
struct cvrf_product_tree * | cvrf_model::cvrf_model_get_product_tree (struct cvrf_model *model)
struct cvrf_document * | cvrf_model::cvrf_model_get_document (const struct cvrf_model *model)
const char * | cvrf_model::cvrf_model_get_identification (struct cvrf_model *model)
bool | cvrf_model::cvrf_model_set_document (struct cvrf_model *model, struct cvrf_document *doc)
struct cvrf_vulnerability_iterator * | cvrf_model::cvrf_model_get_vulnerabilities (const struct cvrf_model *model)
bool | cvrf_model::cvrf_model_add_vulnerability (struct cvrf_model *model, struct cvrf_vulnerability *vuln)
struct cvrf_index * | cvrf_index::cvrf_index_new (void)
| New index structure holding all CVRF models. More...
void | cvrf_index::cvrf_index_free (struct cvrf_index *index)
| Deallocates memory for the CVRF Index structure and all the Models it contains. More...
struct cvrf_index * | cvrf_index::cvrf_index_clone (const struct cvrf_index *index)
const char * | cvrf_index::cvrf_index_get_source_url (const struct cvrf_index *index)
const char * | cvrf_index::cvrf_index_get_index_file (const struct cvrf_index *index)
bool | cvrf_index::cvrf_index_set_source_url (struct cvrf_index *index, const char *url)
bool | cvrf_index::cvrf_index_set_index_file (struct cvrf_index *index, const char *index_file)
bool | cvrf_index::cvrf_index_add_model (struct cvrf_index *index, struct cvrf_model *model)
struct cvrf_model_iterator * | cvrf_index::cvrf_index_get_models (const struct cvrf_index *index)
struct cvrf_session * | cvrf_session::cvrf_session_new_from_source_model (struct oscap_source *source)
struct cvrf_session * | cvrf_session::cvrf_session_new_from_source_index (struct oscap_source *source)
void | cvrf_session::cvrf_session_free (struct cvrf_session *session)
| Deallocates memory for a CVRF Session structure. More...
struct cvrf_model * | cvrf_session::cvrf_session_get_model (struct cvrf_session *session)
struct cvrf_index * | cvrf_session::cvrf_session_get_index (const struct cvrf_session *session)
struct oscap_string_iterator * | cvrf_session::cvrf_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. More...
const char * | cvrf_session::cvrf_session_get_os_name (const struct cvrf_session *session)
void | cvrf_session::cvrf_session_set_model (struct cvrf_session *session, struct cvrf_model *model)
| Add the CVRF model to be evaluated to the Session structure. More...
bool | cvrf_session::cvrf_session_set_index (struct cvrf_session *session, struct cvrf_index *index)
| Add the CVRF index to be evaluated to the Session structure. More...
bool | cvrf_session::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. More...
struct cvrf_rpm_attributes * | cvrf_rpm_attributes::cvrf_rpm_attributes_new (void)
| Create a new CVRF RPM attributes structure. More...
void | cvrf_rpm_attributes::cvrf_rpm_attributes_free (struct cvrf_rpm_attributes *attributes)
| Deallocate memory for the CVRF RPM attributes structure. More...
const char * | cvrf_rpm_attributes::cvrf_rpm_attributes_get_full_package_name (const struct cvrf_rpm_attributes *attributes)
const char * | cvrf_rpm_attributes::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. More...
const char * | cvrf_rpm_attributes::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. More...
bool | cvrf_rpm_attributes::cvrf_rpm_attributes_set_full_package_name (struct cvrf_rpm_attributes *attributes, const char *full_package)
bool | cvrf_rpm_attributes::cvrf_rpm_attributes_set_rpm_name (struct cvrf_rpm_attributes *attributes, const char *rpm_name)
bool | cvrf_rpm_attributes::cvrf_rpm_attributes_set_evr_format (struct cvrf_rpm_attributes *attributes, const char *evr_format)
const char * | cvrf_model::cvrf_model_supported (void)
| Get supported version of CVRF XML. More...
struct cvrf_index * | 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. More...
struct cvrf_model * | cvrf_model::cvrf_model_import (struct oscap_source *source)
| Parses the specified XML file and creates a list of CVRF data structures. More...
struct oscap_source * | cvrf_index::cvrf_index_get_export_source (struct cvrf_index *index)
| Export CVRF Index to the export source as an XML doc. More...
struct oscap_source * | cvrf_model::cvrf_model_get_export_source (struct cvrf_model *model)
| Export CVRF Model to the export source as an XML doc. More...
struct oscap_source * | cvrf_session::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. More...
struct oscap_source * | cvrf_session::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. More...

## Detailed Description

## Function Documentation

## ◆ cvrf_acknowledgment_clone()

struct cvrf_acknowledgment * cvrf_acknowledgment_clone | ( | const struct cvrf_acknowledgment * | ack | ) |

Parameters

  ack | Original Acknowledgment structure to be cloned

Returns
  New cloned Acknowledgment structure with same data as the original

## ◆ cvrf_acknowledgment_free()

void cvrf_acknowledgment_free | ( | struct cvrf_acknowledgment * | ack | ) |

Deallocates memory for an Acknowledgment element of the Acknowledgments container.

Parameters

  ack | The CVRF Acknowledgment structure to be freed

## ◆ cvrf_acknowledgment_get_description()

const char * cvrf_acknowledgment_get_description | ( | const struct cvrf_acknowledgment * | ack | ) |

Parameters

  ack | CVRF Acknowledgment structure Contextual information about acknowledgers or acknowledged parties

Returns
  contents of Description element within an Acknowledgment element

## ◆ cvrf_acknowledgment_get_names()

struct oscap_string_iterator * cvrf_acknowledgment_get_names | ( | const struct cvrf_acknowledgment * | ack | ) |

Parameters

  ack | CVRF Acknowledgment structure List of names of all parties who are being acknowledged

Returns
  String iterator representing list of all names

## ◆ cvrf_acknowledgment_get_organizations()

struct oscap_string_iterator * cvrf_acknowledgment_get_organizations | ( | const struct cvrf_acknowledgment * | ack | ) |

Parameters

  ack | CVRF Acknowledgment structure Organizations of parties and/or organization(s) itself being acknowledged

Returns
  String iterator representing list of all organizations

## ◆ cvrf_acknowledgment_get_urls()

struct oscap_string_iterator * cvrf_acknowledgment_get_urls | ( | const struct cvrf_acknowledgment * | ack | ) |

Parameters

  ack | CVRF Acknowledgment structure URLs to people or parties being acknowledged

Returns
  String iterator representing list of all URLs

## ◆ cvrf_acknowledgment_new()

struct cvrf_acknowledgment * cvrf_acknowledgment_new | ( | void |  | ) |

New CVRF Acknowledgment element within Acknowledgments container.

Returns
  New CVRF Acknowledgment structure

## ◆ cvrf_acknowledgment_set_description()

bool cvrf_acknowledgment_set_description | ( | struct cvrf_acknowledgment * | ack,
|  | const char * | description
| ) |  |

Parameters

  ack | CVRF Acknowledgment structure
  description | Contextual information about acknowledgers or acknowledged parties

Returns
  true on success

## ◆ cvrf_branch_clone()

struct cvrf_branch * cvrf_branch_clone | ( | const struct cvrf_branch * | branch | ) |

Parameters

  branch | Original Branch structure to be cloned

Returns
  New cloned Branch structure with same data as the original

## ◆ cvrf_branch_free()

void cvrf_branch_free | ( | struct cvrf_branch * | branch | ) |

Deallocates memory for a Branch element.

Parameters

  branch | The CVRF Branch structure to be freed

## ◆ cvrf_branch_get_branch_name()

const char * cvrf_branch_get_branch_name | ( | const struct cvrf_branch * | branch | ) |

Parameters

  branch | CVRF Branch structure Canonical description of the Branch; paired with Branch Type

Returns
  contents of Name attribute within a Branch element

## ◆ cvrf_branch_get_product_name()

struct cvrf_product_name * cvrf_branch_get_product_name | ( | const struct cvrf_branch * | branch | ) |

Parameters

  branch | CVRF Branch structure Child element and endpoint of tree for branches not of the type 'Product Family'

Returns
  FullProductName child element of a Branch element

## ◆ cvrf_branch_get_subbranches()

struct oscap_iterator * cvrf_branch_get_subbranches | ( | struct cvrf_branch * | branch | ) |

Parameters

  branch | CVRF Branch structure Sub-branch children of 'Product Family'-type Branches

Returns
  Iterator for sub-branch structures for this Branch element

## ◆ cvrf_branch_new()

struct cvrf_branch * cvrf_branch_new | ( | void |  | ) |

New CVRF branch of ProductTree or sub-branch.

Returns
  New CVRF branch

## ◆ cvrf_branch_set_branch_name()

bool cvrf_branch_set_branch_name | ( | struct cvrf_branch * | branch,
|  | const char * | branch_name
| ) |  |

Parameters

  branch | CVRF Branch structure
  branch_name | Canonical description of the Branch; paired with Branch Type

Returns
  true on success

## ◆ cvrf_branch_set_product_name()

bool cvrf_branch_set_product_name | ( | struct cvrf_branch * | branch,
|  | struct cvrf_product_name * | name
| ) |  |

Parameters

  branch | CVRF Branch structure
  name | Child element and endpoint of tree for branches not of the type 'Product Family'

Returns
  true on success

## ◆ cvrf_doc_publisher_clone()

struct cvrf_doc_publisher * cvrf_doc_publisher_clone | ( | const struct cvrf_doc_publisher * | publisher | ) |

Parameters

  revision | Original DocumentPublisher structure to be cloned

Returns
  New cloned DocumentPublisher structure with same data as the original

## ◆ cvrf_doc_publisher_free()

void cvrf_doc_publisher_free | ( | struct cvrf_doc_publisher * | publisher | ) |

Deallocates memory for a DocumentPublisher element.

Parameters

  publisher | The CVRF DocumentPublisher structure to be freed

## ◆ cvrf_doc_publisher_get_contact_details()

const char * cvrf_doc_publisher_get_contact_details | ( | const struct cvrf_doc_publisher * | publisher | ) |

Parameters

  publisher | CVRF DocumentPublisher structure Contains information needed to get contact with the document publisher

Returns
  Content of the ContactDetails element of the DocumentPublisher element

## ◆ cvrf_doc_publisher_get_issuing_authority()

const char * cvrf_doc_publisher_get_issuing_authority | ( | const struct cvrf_doc_publisher * | publisher | ) |

Parameters

  publisher | CVRF DocumentPublisher structure Contains name of the issuer and their level of authority over the document's release

Returns
  Content of the IssuingAuthority element of the DocumentPublisher element

## ◆ cvrf_doc_publisher_get_vendor_id()

const char * cvrf_doc_publisher_get_vendor_id | ( | const struct cvrf_doc_publisher * | publisher | ) |

Parameters

  publisher | CVRF DocumentPublisher structure Unique ID of the Vendor, if any, who published the document

Returns
  Content of the VendorID attribute of the DocumentPublisher element

## ◆ cvrf_doc_publisher_new()

struct cvrf_doc_publisher * cvrf_doc_publisher_new | ( | void |  | ) |

New CVRF DocumentPublisher structure.

Returns
  New CVRF DocumentPublisher structure

## ◆ cvrf_doc_publisher_set_contact_details()

bool cvrf_doc_publisher_set_contact_details | ( | struct cvrf_doc_publisher * | publisher,
|  | const char * | contact_details
| ) |  |

Parameters

  publisher | CVRF DocumentPublisher structure
  contact_details | Information needed to get contact with the document publisher

Returns
  true on success

## ◆ cvrf_doc_publisher_set_issuing_authority()

bool cvrf_doc_publisher_set_issuing_authority | ( | struct cvrf_doc_publisher * | publisher,
|  | const char * | issuing_authority
| ) |  |

Parameters

  publisher | CVRF DocumentPublisher structure
  issuing_authority | Name of the issuer and their level of authority over the document's release

Returns
  true on success

## ◆ cvrf_doc_publisher_set_vendor_id()

bool cvrf_doc_publisher_set_vendor_id | ( | struct cvrf_doc_publisher * | publisher,
|  | const char * | vendor_id
| ) |  |

Parameters

  publisher | CVRF DocumentPublisher structure
  vendor_id | Unique ID of the Vendor, if any, who published the document

Returns
  true on success

## ◆ cvrf_doc_tracking_add_revision()

bool cvrf_doc_tracking_add_revision | ( | struct cvrf_doc_tracking * | tracking,
|  | struct cvrf_revision * | revision
| ) |  |

Parameters

  tracking | CVRF DocumentTracking structure
  revision | CVRF Revision structure to be added to the DocumentTracking

Returns
  true on success

## ◆ cvrf_doc_tracking_clone()

struct cvrf_doc_tracking * cvrf_doc_tracking_clone | ( | const struct cvrf_doc_tracking * | tracking | ) |

Parameters

  tracking | Original DocumentTracking structure to be cloned

Returns
  New cloned DocumentTracking structure with same data as the original

## ◆ cvrf_doc_tracking_free()

void cvrf_doc_tracking_free | ( | struct cvrf_doc_tracking * | tracking | ) |

Deallocates memory for a DocumentTracking element.

Parameters

  tracking | The CVRF DocumentTracking structure to be freed

## ◆ cvrf_doc_tracking_get_aliases()

struct oscap_string_iterator * cvrf_doc_tracking_get_aliases | ( | struct cvrf_doc_tracking * | tracking | ) |

Parameters

  tracking | CVRF DocumentTracking structure Optional alternative ID(s) for the document

Returns
  Iterator for the stringlist of Alias elements within Identification element

## ◆ cvrf_doc_tracking_get_cur_release_date()

const char * cvrf_doc_tracking_get_cur_release_date | ( | const struct cvrf_doc_tracking * | tracking | ) |

Parameters

  tracking | CVRF DocumentTracking structure Datetime of the document's current release by the issuer

Returns
  contents of CurrentReleaseDate element within DocumentTracking element

## ◆ cvrf_doc_tracking_get_generator_date()

const char * cvrf_doc_tracking_get_generator_date | ( | const struct cvrf_doc_tracking * | tracking | ) |

Parameters

  tracking | CVRF DocumentTracking structure Datetime of when the document was generated

Returns
  contents of Date element within Generator element

## ◆ cvrf_doc_tracking_get_generator_engine()

const char * cvrf_doc_tracking_get_generator_engine | ( | const struct cvrf_doc_tracking * | tracking | ) |

Parameters

  tracking | CVRF DocumentTracking structure Name and optional version of the generator of the document

Returns
  contents of Engine element within Generator element

## ◆ cvrf_doc_tracking_get_init_release_date()

const char * cvrf_doc_tracking_get_init_release_date | ( | const struct cvrf_doc_tracking * | tracking | ) |

Parameters

  tracking | CVRF DocumentTracking structure Datetime of the document's original release by the issuer

Returns
  contents of InitialReleaseDate element within DocumentTracking element

## ◆ cvrf_doc_tracking_get_revision_history()

struct cvrf_revision_iterator * cvrf_doc_tracking_get_revision_history | ( | const struct cvrf_doc_tracking * | tracking | ) |

Parameters

  tracking | CVRF DocumentTracking structure

Returns
  Iterator representing list of all Revisions in the DocumentTracking

## ◆ cvrf_doc_tracking_get_tracking_id()

const char * cvrf_doc_tracking_get_tracking_id | ( | const struct cvrf_doc_tracking * | tracking | ) |

Parameters

  tracking | CVRF DocumentTracking structure Short identifier to unambiguously reference the document in any context

Returns
  contents of ID element within Identification element

## ◆ cvrf_doc_tracking_get_version()

const char * cvrf_doc_tracking_get_version | ( | const struct cvrf_doc_tracking * | tracking | ) |

Parameters

  tracking | CVRF DocumentTracking structure Counter to track the document in tokenized format "nn" - "nn.nn.nn.nn"

Returns
  contents of
  contents of Version element within DocumentTracking element

## ◆ cvrf_doc_tracking_new()

struct cvrf_doc_tracking * cvrf_doc_tracking_new | ( | void |  | ) |

New CVRF DocumentTracking structure.

Returns
  New CVRF DocumentTracking

## ◆ cvrf_doc_tracking_set_cur_release_date()

bool cvrf_doc_tracking_set_cur_release_date | ( | struct cvrf_doc_tracking * | tracking,
|  | const char * | cur_release_date
| ) |  |

Parameters

  tracking | CVRF DocumentTracking structure
  cur_release_date | Datetime of the document's current release by the issuer

Returns
  true on success

## ◆ cvrf_doc_tracking_set_generator_date()

bool cvrf_doc_tracking_set_generator_date | ( | struct cvrf_doc_tracking * | tracking,
|  | const char * | generator_date
| ) |  |

Parameters

  tracking | CVRF DocumentTracking structure
  generator_date | Datetime of when the document was generated

Returns
  true on success

## ◆ cvrf_doc_tracking_set_generator_engine()

bool cvrf_doc_tracking_set_generator_engine | ( | struct cvrf_doc_tracking * | tracking,
|  | const char * | generator_engine
| ) |  |

Parameters

  tracking | CVRF DocumentTracking structure
  generator_engine | Name and optional version of the generator of the document

Returns
  true on success

## ◆ cvrf_doc_tracking_set_init_release_date()

bool cvrf_doc_tracking_set_init_release_date | ( | struct cvrf_doc_tracking * | tracking,
|  | const char * | init_release_date
| ) |  |

Parameters

  tracking | CVRF DocumentTracking structure
  init_release_date | Datetime of the document's original release by the issuer

Returns
  true on success

## ◆ cvrf_doc_tracking_set_tracking_id()

bool cvrf_doc_tracking_set_tracking_id | ( | struct cvrf_doc_tracking * | tracking,
|  | const char * | id
| ) |  |

Parameters

  tracking | CVRF DocumentTracking structure
  id | Short identifier to unambiguously reference the document in any context

Returns
  true on success

## ◆ cvrf_doc_tracking_set_version()

bool cvrf_doc_tracking_set_version | ( | struct cvrf_doc_tracking * | tracking,
|  | const char * | version
| ) |  |

Parameters

  tracking | CVRF DocumentTracking structure
  version | Counter to track the document in tokenized format "nn" - "nn.nn.nn.nn"

Returns
  true on success

## ◆ cvrf_document_clone()

struct cvrf_document * cvrf_document_clone | ( | const struct cvrf_document * | doc | ) |

Parameters

  revision | Original Document structure to be cloned

Returns
  New cloned Document structure with same data as the original

## ◆ cvrf_document_free()

void cvrf_document_free | ( | struct cvrf_document * | doc | ) |

Deallocates memory for the CVRF Document structure and all its child DocumentTracking, DocumentPublisher, DocumentReferences structures.

Parameters

  doc | The CVRF Document structure to be freed

## ◆ cvrf_document_get_acknowledgments()

struct oscap_iterator * cvrf_document_get_acknowledgments | ( | struct cvrf_document * | doc | ) |

Parameters

  doc | CVRF Document structure Represents the Acknowledgments container that holds all Acknowledgment elements

Returns
  Iterator for the Acknowledgment list within the Acknowledgments container

## ◆ cvrf_document_get_aggregate_severity()

const char * cvrf_document_get_aggregate_severity | ( | const struct cvrf_document * | doc | ) |

Parameters

  doc | CVRF Document structure Conveys information about the severity of Vulnerabilities in the document

Returns
  contents of the AggregateSeverity element within the root cvrfdoc element

## ◆ cvrf_document_get_doc_distribution()

const char * cvrf_document_get_doc_distribution | ( | const struct cvrf_document * | doc | ) |

Parameters

  doc | CVRF Document structure Contains legal restrains about reproducing and using the document

Returns
  contents of the DocumentDistribution element within the root cvrfdoc element

## ◆ cvrf_document_get_namespace()

const char * cvrf_document_get_namespace | ( | const struct cvrf_document * | doc | ) |

Parameters

  doc | CVRF Document structure Contains URL with link to Namespace of the AggregateSeverity element

Returns
  contents of the Namespace attribute of the AggregateSeverity element

## ◆ cvrf_document_get_notes()

struct oscap_iterator * cvrf_document_get_notes | ( | struct cvrf_document * | doc | ) |

Parameters

  doc | CVRF Document structure Represents the DocumentNotes container that holds all Note elements

Returns
  Iterator for the list of Notes within the DocumentNotes container

## ◆ cvrf_document_get_publisher()

struct cvrf_doc_publisher * cvrf_document_get_publisher | ( | const struct cvrf_document * | doc | ) |

Parameters

  doc | CVRF Document structure Structure with all elements that give information about the publisher

Returns
  DocumentPublisher structure of the cvrfdoc root element

## ◆ cvrf_document_get_references()

struct oscap_iterator * cvrf_document_get_references | ( | struct cvrf_document * | doc | ) |

Parameters

  doc | CVRF Document structure Represents the DocumentReferences container that holds all Reference elements

Returns
  Iterator for the list of References within the DocumentReferences container

## ◆ cvrf_document_get_tracking()

struct cvrf_doc_tracking * cvrf_document_get_tracking | ( | const struct cvrf_document * | doc | ) |

Parameters

  doc | CVRF Document structure Structure with all elements for tracking and referencing the document itself

Returns
  DocumentTracking structure of the cvrfdoc root element

## ◆ cvrf_document_new()

struct cvrf_document * cvrf_document_new | ( | void |  | ) |

New CVRF Document structure.

Returns
  New CVRF Document structure

## ◆ cvrf_document_set_aggregate_severity()

bool cvrf_document_set_aggregate_severity | ( | struct cvrf_document * | doc,
|  | const char * | severity
| ) |  |

Parameters

  doc | CVRF Document structure
  severity | Information about the severity of Vulnerabilities in the document

Returns
  true on success

## ◆ cvrf_document_set_doc_distribution()

bool cvrf_document_set_doc_distribution | ( | struct cvrf_document * | doc,
|  | const char * | distribution
| ) |  |

Parameters

  doc | CVRF Document structure
  distribution | Legal restrains about reproducing and using the document

Returns
  true on success

## ◆ cvrf_document_set_namespace()

bool cvrf_document_set_namespace | ( | struct cvrf_document * | doc,
|  | const char * | ns
| ) |  |

Parameters

  doc | CVRF Document structure
  ns | URL with link to Namespace of the AggregateSeverity element

Returns
  true on success

## ◆ cvrf_document_set_publisher()

bool cvrf_document_set_publisher | ( | struct cvrf_document * | doc,
|  | struct cvrf_doc_publisher * | publisher
| ) |  |

Parameters

  doc | CVRF Document structure
  publisher | Structure with all elements that give information about the publisher

Returns
  true on success

## ◆ cvrf_document_set_tracking()

bool cvrf_document_set_tracking | ( | struct cvrf_document * | doc,
|  | struct cvrf_doc_tracking * | track
| ) |  |

Parameters

  doc | CVRF Document structure
  track | Structure with all elements for tracking and referencing the document itself

Returns
  true on success

## ◆ cvrf_group_clone()

struct cvrf_group * cvrf_group_clone | ( | const struct cvrf_group * | group | ) |

Parameters

  group | Original Group structure to be cloned

Returns
  New cloned Group structure with same data as the original

## ◆ cvrf_group_free()

void cvrf_group_free | ( | struct cvrf_group * | group | ) |

Deallocates memory for a Group element.

Parameters

  group | The CVRF Group structure to be freed

## ◆ cvrf_group_get_description()

const char * cvrf_group_get_description | ( | const struct cvrf_group * | group | ) |

Parameters

  group | CVRF Group structure Short and human-readable description about the Group

Returns
  contents of Description element of a Group element

## ◆ cvrf_group_get_group_id()

const char * cvrf_group_get_group_id | ( | const struct cvrf_group * | group | ) |

Parameters

  group | CVRF Group structure Unique identifier for a Group; used for referencing the Group elsewhere in the document

Returns
  contents of GroupID attribute of a Group element

## ◆ cvrf_group_get_product_ids()

struct oscap_string_iterator * cvrf_group_get_product_ids | ( | struct cvrf_group * | group | ) |

Parameters

  group | CVRF Group structure List of all ProductIDs representing the products that belong to this Group

Returns
  Iterator for the stringlist of ProductIDs

## ◆ cvrf_group_new()

struct cvrf_group * cvrf_group_new | ( | void |  | ) |

New CVRF Group child of ProductGroups container element.

Returns
  New CVRF Group structure

## ◆ cvrf_group_set_description()

bool cvrf_group_set_description | ( | struct cvrf_group * | group,
|  | const char * | description
| ) |  |

Parameters

  group | CVRF Group structure
  description | Short and human-readable description about the Group

Returns
  true on success

## ◆ cvrf_group_set_group_id()

bool cvrf_group_set_group_id | ( | struct cvrf_group * | group,
|  | const char * | group_id
| ) |  |

Parameters

  group | CVRF Group structure
  group_id | Unique identifier for a Group for referencing elsewhere in the document

Returns
  true on success

## ◆ cvrf_index_add_model()

bool cvrf_index_add_model | ( | struct cvrf_index * | index,
|  | struct cvrf_model * | model
| ) |  |

Parameters

  index | CVRF Index structure
  model | CVRF Model structure to be added to the Index structure

Returns
  true on success

## ◆ cvrf_index_clone()

struct cvrf_index * cvrf_index_clone | ( | const struct cvrf_index * | index | ) |

Parameters

  index | Original CVRF Index structure to be cloned

Returns
  New cloned CVRF Index structure with same data as the original

## ◆ cvrf_index_free()

void cvrf_index_free | ( | struct cvrf_index * | index | ) |

Deallocates memory for the CVRF Index structure and all the Models it contains.

Parameters

  index | The CVRF Index structure to be freed

## ◆ cvrf_index_get_export_source()

struct oscap_source * cvrf_index_get_export_source | ( | struct cvrf_index * | index | ) |

Export CVRF Index to the export source as an XML doc.

Parameters

  index | CVRF index structure

Returns
  Export target source for the Index, NULL on failure

## ◆ cvrf_index_get_index_file()

const char * cvrf_index_get_index_file | ( | const struct cvrf_index * | index | ) |

Parameters

  index | CVRF Index structure Reference to path to local index file with list of all CVRF files contained in the index

Returns
  String representation of source filepath

## ◆ cvrf_index_get_models()

struct cvrf_model_iterator * cvrf_index_get_models | ( | const struct cvrf_index * | index | ) |

Parameters

  index | CVRF Index structure

Returns
  Iterator representing list of all Models in the Index

## ◆ cvrf_index_get_results_source()

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.

Parameters

  import_source | OSCAP source used to import the CVRF Index into the session
  os_name | CPE name used to find relevant RPM packages to check for vulnerabilities

Returns
  OSCAP source export target for the results XML file

## ◆ cvrf_index_get_source_url()

const char * cvrf_index_get_source_url | ( | const struct cvrf_index * | index | ) |

Parameters

  index | CVRF Index structure Reference to source URL used to find all CVRF files contained in the index

Returns
  String representation of source URL, if one was used

## ◆ cvrf_index_import()

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.

Parameters

  index_source | OSCAP source with path to CVRF file

Returns
  New CVRF index containing all CVRF models

## ◆ cvrf_index_new()

struct cvrf_index * cvrf_index_new | ( | void |  | ) |

New index structure holding all CVRF models.

Returns
  New CVRF index structure

## ◆ cvrf_index_set_index_file()

bool cvrf_index_set_index_file | ( | struct cvrf_index * | index,
|  | const char * | index_file
| ) |  |

Parameters

  index | CVRF Index structure
  index_file | Filepath with list of all CVRF files contained in the index

Returns
  true on success

## ◆ cvrf_index_set_source_url()

bool cvrf_index_set_source_url | ( | struct cvrf_index * | index,
|  | const char * | url
| ) |  |

Parameters

  index | CVRF Index structure
  url | Source URL used to find all CVRF files contained in the index

Returns
  true on success

## ◆ cvrf_involvement_clone()

struct cvrf_involvement * cvrf_involvement_clone | ( | const struct cvrf_involvement * | involve | ) |

Parameters

  involve | Original Involvement structure to be cloned

Returns
  New cloned Involvement structure with same data as the original

## ◆ cvrf_involvement_free()

void cvrf_involvement_free | ( | struct cvrf_involvement * | involve | ) |

Deallocates memory for an Involvement element.

Parameters

  involve | The CVRF Involvement structure to be freed

## ◆ cvrf_involvement_get_description()

const char * cvrf_involvement_get_description | ( | const struct cvrf_involvement * | involve | ) |

Parameters

  involve | CVRF Involvement structure Gives context about the involvement or about the Party's contribution

Returns
  contents of Description element within Involvement element

## ◆ cvrf_involvement_new()

struct cvrf_involvement * cvrf_involvement_new | ( | void |  | ) |

New CVRF Involvement.

Returns
  New CVRF Involvement

## ◆ cvrf_involvement_set_description()

bool cvrf_involvement_set_description | ( | struct cvrf_involvement * | involve,
|  | const char * | description
| ) |  |

Parameters

  involve | CVRF Involvement structure
  description | Gives context about the involvement or about the Party's contribution

Returns
  true on success

## ◆ cvrf_model_add_vulnerability()

bool cvrf_model_add_vulnerability | ( | struct cvrf_model * | model,
|  | struct cvrf_vulnerability * | vuln
| ) |  |

Parameters

  model | CVRF Model structure
  vuln | CVRF Vulnerability structure to be added to the model

Returns
  true on success

## ◆ cvrf_model_clone()

struct cvrf_model * cvrf_model_clone | ( | const struct cvrf_model * | model | ) |

Parameters

  model | Original CVRF Model structure to be cloned

Returns
  New cloned CVRF Model structure with same data as the original

## ◆ cvrf_model_filter_by_cpe()

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.

Parameters

  cvrf | The CVRF Model structure to be filtered
  cpe | CPE name by which to filter the Model

Returns
  0 on success, -1 on failure

## ◆ cvrf_model_free()

void cvrf_model_free | ( | struct cvrf_model * | cvrf | ) |

Deallocates memory for the CVRF Model structure and all its child elements.

Parameters

  cvrf | The CVRF Model structure to be freed

## ◆ cvrf_model_get_doc_title()

const char * cvrf_model_get_doc_title | ( | const struct cvrf_model * | model | ) |

Parameters

  model | CVRF Model structure Definitive canonical name for the document

Returns
  Contents of DocumentTitle element within the root cvrfdoc element

## ◆ cvrf_model_get_doc_type()

const char * cvrf_model_get_doc_type | ( | const struct cvrf_model * | model | ) |

Parameters

  model | CVRF Model structure Short canonical name of the document's type

Returns
  Contents of DocumentType element within the root cvrfdoc element

## ◆ cvrf_model_get_document()

struct cvrf_document * cvrf_model_get_document | ( | const struct cvrf_model * | model | ) |

Parameters

  model | CVRF Model structure Structure that holds all document-related metadata, such as References, DocumentTracking, DocumentPublisher, and Notes

Returns
  Document structures within the root cvrfdoc element

## ◆ cvrf_model_get_export_source()

struct oscap_source * cvrf_model_get_export_source | ( | struct cvrf_model * | model | ) |

Export CVRF Model to the export source as an XML doc.

Parameters

  model | CVRF Model structure

Returns
  Export target source for the Model, NULL on failure

## ◆ cvrf_model_get_identification()

const char * cvrf_model_get_identification | ( | struct cvrf_model * | model | ) |

Parameters

  model | CVRF Model structure

Returns
  Unique ID used to track this document

## ◆ cvrf_model_get_product_tree()

struct cvrf_product_tree * cvrf_model_get_product_tree | ( | struct cvrf_model * | model | ) |

Parameters

  model | CVRF Model structure Contains all Product names needed for referencing elsewhere in the document

Returns
  ProductTree structure within the root cvrfdoc element

## ◆ cvrf_model_get_results_source()

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.

Parameters

  import_source | OSCAP source used to import the CVRF Model into the session
  os_name | CPE name used to find relevant RPM packages to check for vulnerabilities

Returns
  OSCAP source export target for the results XML file

## ◆ cvrf_model_get_vulnerabilities()

struct cvrf_vulnerability_iterator * cvrf_model_get_vulnerabilities | ( | const struct cvrf_model * | model | ) |

Parameters

  model | CVRF Model structure

Returns
  Iterator representing list of all Vulnerabilities in the model

## ◆ cvrf_model_import()

struct cvrf_model * cvrf_model_import | ( | struct oscap_source * | source | ) |

Parses the specified XML file and creates a list of CVRF data structures.

Parameters

  source | OSCAP source with path to CVRF file

Returns
  New CVRF model structure

## ◆ cvrf_model_new()

struct cvrf_model * cvrf_model_new | ( | void |  | ) |

New CVRF model.

Returns
  New CVRF model

## ◆ cvrf_model_set_doc_title()

bool cvrf_model_set_doc_title | ( | struct cvrf_model * | model,
|  | const char * | doc_title
| ) |  |

Parameters

  model | CVRF Model structure
  doc_title | Definitive canonical name for the document

Returns
  true on success

## ◆ cvrf_model_set_doc_type()

bool cvrf_model_set_doc_type | ( | struct cvrf_model * | model,
|  | const char * | doc_type
| ) |  |

Parameters

  model | CVRF Model structure
  doc_type | Short canonical name of the document's type

Returns
  true on success

## ◆ cvrf_model_set_document()

bool cvrf_model_set_document | ( | struct cvrf_model * | model,
|  | struct cvrf_document * | doc
| ) |  |

Parameters

  model | CVRF Model structure
  doc | Structure that holds all document-related metadata

Returns
  true on success

## ◆ cvrf_model_supported()

const char * cvrf_model_supported | ( | void |  | ) |

Get supported version of CVRF XML.

Returns
  version of XML file format

## ◆ cvrf_note_clone()

struct cvrf_note * cvrf_note_clone | ( | const struct cvrf_note * | note | ) |

Parameters

  note | Original Note structure to be cloned

Returns
  New cloned Note structure with same data as the original

## ◆ cvrf_note_free()

void cvrf_note_free | ( | struct cvrf_note * | note | ) |

Deallocates memory for a Note element of the Notes container.

Parameters

  note | The CVRF Note structure to be freed

## ◆ cvrf_note_get_audience()

const char * cvrf_note_get_audience | ( | const struct cvrf_note * | note | ) |

Parameters

  note | CVRF Note structure Party to whom the information in this note is directed

Returns
  Contents of Audience attribute of the Note element

## ◆ cvrf_note_get_contents()

const char * cvrf_note_get_contents | ( | const struct cvrf_note * | note | ) |

Parameters

  note | CVRF Note structure Information relating to the document that is contained in the Note

Returns
  Contents of the Note element itself

## ◆ cvrf_note_get_ordinal()

int cvrf_note_get_ordinal | ( | const struct cvrf_note * | note | ) |

Parameters

  note | CVRF Note structure Index of a Note element within a Notes container

Returns
  Ordinal attribute of the Note element

## ◆ cvrf_note_get_title()

const char * cvrf_note_get_title | ( | const struct cvrf_note * | note | ) |

Parameters

  note | CVRF Note structure Concise description of the contents of the Note

Returns
  Contents of Title attribute of the Note element

## ◆ cvrf_note_new()

struct cvrf_note * cvrf_note_new | ( | void |  | ) |

New CVRF Note element within Notes or DocumentNotes container.

Returns
  New CVRF Note structure

## ◆ cvrf_note_set_audience()

bool cvrf_note_set_audience | ( | struct cvrf_note * | note,
|  | const char * | audience
| ) |  |

Parameters

  note | CVRF Note structure
  audience | Party to whom the information in this note is directed

Returns
  true on success

## ◆ cvrf_note_set_contents()

bool cvrf_note_set_contents | ( | struct cvrf_note * | note,
|  | const char * | contents
| ) |  |

Parameters

  note | CVRF Note structure
  contents | Information that is contained in the Note

Returns
  true on success

## ◆ cvrf_note_set_ordinal()

bool cvrf_note_set_ordinal | ( | struct cvrf_note * | note,
|  | int | ordinal
| ) |  |

Parameters

  note | CVRF Note structure
  ordinal | Index of a Note element within a Notes container

Returns
  true on success

## ◆ cvrf_note_set_title()

bool cvrf_note_set_title | ( | struct cvrf_note * | note,
|  | const char * | title
| ) |  |

Parameters

  note | CVRF Note structure
  title | Concise description of the contents of the Note

Returns
  true on success

## ◆ cvrf_product_name_clone()

struct cvrf_product_name * cvrf_product_name_clone | ( | const struct cvrf_product_name * | full_name | ) |

Parameters

  full_name | Original FullProductName structure to be cloned

Returns
  New cloned FullProductName structure with same data as the original

## ◆ cvrf_product_name_free()

void cvrf_product_name_free | ( | struct cvrf_product_name * | full_name | ) |

Deallocates memory for a FullProductName element.

Parameters

  full_name | The CVRF FullProductName structure to be freed

## ◆ cvrf_product_name_get_cpe()

const char * cvrf_product_name_get_cpe | ( | const struct cvrf_product_name * | full_name | ) |

Parameters

  full_name | CVRF FullProductName structure

Returns
  CPE information contained in the FullProductName element

## ◆ cvrf_product_name_get_product_id()

const char * cvrf_product_name_get_product_id | ( | const struct cvrf_product_name * | full_name | ) |

Parameters

  full_name | CVRF FullProductName structure

Returns
  ProductID attribute within the FullProductName element

## ◆ cvrf_product_name_new()

struct cvrf_product_name * cvrf_product_name_new | ( | void |  | ) |

New FullProductName of Branch or ProductTree.

Returns
  New FullProductName

## ◆ cvrf_product_name_set_cpe()

bool cvrf_product_name_set_cpe | ( | struct cvrf_product_name * | full_name,
|  | const char * | cpe
| ) |  |

Parameters

  full_name | CVRF FullProductName structure

Returns
  true on success

## ◆ cvrf_product_name_set_product_id()

bool cvrf_product_name_set_product_id | ( | struct cvrf_product_name * | full_name,
|  | const char * | product_id
| ) |  |

Parameters

  full_name | CVRF FullProductName structure

Returns
  true on success

## ◆ cvrf_product_status_clone()

struct cvrf_product_status * cvrf_product_status_clone | ( | const struct cvrf_product_status * | stat | ) |

Parameters

  stat | Original Status structure to be cloned

Returns
  New cloned Status structure with same data as the original

## ◆ cvrf_product_status_free()

void cvrf_product_status_free | ( | struct cvrf_product_status * | status | ) |

Deallocates memory for a Status element of the ProductStatuses container.

Parameters

  status | The CVRF Status element to be freed

## ◆ cvrf_product_status_get_ids()

struct oscap_string_iterator * cvrf_product_status_get_ids | ( | struct cvrf_product_status * | stat | ) |

Parameters

  stat | Status structure with stringlist of ProductIDs

Returns
  Iterator for the stringlist of ProductIDs

## ◆ cvrf_product_status_new()

struct cvrf_product_status * cvrf_product_status_new | ( | void |  | ) |

New Status member of a ProductStatuses container within a Vulnerability element.

Returns
  New CVRF ProductStatus

## ◆ cvrf_product_tree_add_group()

bool cvrf_product_tree_add_group | ( | struct cvrf_product_tree * | tree,
|  | struct cvrf_group * | group
| ) |  |

Parameters

  tree | CVRF ProductTree structure
  group | CVRF Group structure to be added to the ProductTree

Returns
  true on success

## ◆ cvrf_product_tree_add_product_name()

bool cvrf_product_tree_add_product_name | ( | struct cvrf_product_tree * | tree,
|  | struct cvrf_product_name * | full_name
| ) |  |

Parameters

  tree | CVRF ProductTree structure
  full_name | CVRF FullProductName structure to be added to the ProductTree

Returns
  true on success

## ◆ cvrf_product_tree_add_relationship()

bool cvrf_product_tree_add_relationship | ( | struct cvrf_product_tree * | tree,
|  | struct cvrf_relationship * | relation
| ) |  |

Parameters

  tree | CVRF ProductTree structure
  relation | CVRF Relationship structure to be added to the ProductTree

Returns
  true on success

## ◆ cvrf_product_tree_clone()

struct cvrf_product_tree * cvrf_product_tree_clone | ( | const struct cvrf_product_tree * | tree | ) |

Parameters

  tree | Original ProductTree structure to be cloned

Returns
  New cloned ProductTree structure with same data as the original

## ◆ cvrf_product_tree_filter_by_cpe()

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.

Parameters

  tree | ProductTree structure to be filtered
  cpe | CPE name used to filter all unrelated elements

Returns
  0 on success, -1 on failure

## ◆ cvrf_product_tree_free()

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.

Parameters

  tree | The CVRF ProductTree structure to be freed

## ◆ cvrf_product_tree_get_product_groups()

struct cvrf_group_iterator * cvrf_product_tree_get_product_groups | ( | const struct cvrf_product_tree * | tree | ) |

Parameters

  tree | CVRF ProductTree structure

Returns
  Iterator representing list of all Groups in the ProductTree

## ◆ cvrf_product_tree_get_product_names()

struct cvrf_product_name_iterator * cvrf_product_tree_get_product_names | ( | const struct cvrf_product_tree * | tree | ) |

Parameters

  tree | CVRF ProductTree structure

Returns
  Iterator representing list of all FullProductNames in the ProductTree

## ◆ cvrf_product_tree_get_relationships()

struct cvrf_relationship_iterator * cvrf_product_tree_get_relationships | ( | const struct cvrf_product_tree * | tree | ) |

Parameters

  tree | CVRF ProductTree structure

Returns
  Iterator representing list of all Relationships in the ProductTree

## ◆ cvrf_product_tree_new()

struct cvrf_product_tree * cvrf_product_tree_new | ( | void |  | ) |

New ProductTree structure.

Returns
  New CVRF ProductTree

## ◆ cvrf_reference_clone()

struct cvrf_reference * cvrf_reference_clone | ( | const struct cvrf_reference * | ref | ) |

Parameters

  revision | Original Reference structure to be cloned

Returns
  New cloned Reference structure with same data as the original

## ◆ cvrf_reference_free()

void cvrf_reference_free | ( | struct cvrf_reference * | reference | ) |

Deallocates memory for a Reference element of the References container.

Parameters

  reference | The CVRF Reference structure to be freed

## ◆ cvrf_reference_get_description()

const char * cvrf_reference_get_description | ( | const struct cvrf_reference * | reference | ) |

Parameters

  reference | CVRF Reference structure Title or name of the Reference element

Returns
  Contents of Description element within the Reference element

## ◆ cvrf_reference_get_url()

const char * cvrf_reference_get_url | ( | const struct cvrf_reference * | reference | ) |

Parameters

  reference | CVRF Reference structure Contains fixed URL link to the advisory or other reference

Returns
  Contents of URL element within the Reference element

## ◆ cvrf_reference_new()

struct cvrf_reference * cvrf_reference_new | ( | void |  | ) |

New CVRF Reference structure.

Returns
  New CVRF Reference

## ◆ cvrf_reference_set_description()

bool cvrf_reference_set_description | ( | struct cvrf_reference * | reference,
|  | const char * | description
| ) |  |

Parameters

  reference | CVRF Reference structure
  description | Title or name of the Reference element

Returns
  true on success

## ◆ cvrf_reference_set_url()

bool cvrf_reference_set_url | ( | struct cvrf_reference * | reference,
|  | const char * | url
| ) |  |

Parameters

  reference | CVRF Reference structure
  url | Contains fixed URL link to the advisory or other reference

Returns
  true on success

## ◆ cvrf_relationship_clone()

struct cvrf_relationship * cvrf_relationship_clone | ( | const struct cvrf_relationship * | relation | ) |

Parameters

  relation | Original Relationship structure to be cloned

Returns
  New cloned Relationship structure with same data as the original

## ◆ cvrf_relationship_free()

void cvrf_relationship_free | ( | struct cvrf_relationship * | relationship | ) |

Deallocates memory for a Relationship element.

Parameters

  relationship | The CVRF Relationship structure to be freed

## ◆ cvrf_relationship_get_product_name()

struct cvrf_product_name * cvrf_relationship_get_product_name | ( | const struct cvrf_relationship * | relation | ) |

Parameters

  relation | CVRF Relationship structure Typically combines references to the CPE and package ProductID named in Relationship attributes

Returns
  FullProductName child element of a Relationship element

## ◆ cvrf_relationship_get_product_reference()

const char * cvrf_relationship_get_product_reference | ( | const struct cvrf_relationship * | relation | ) |

Parameters

  relation | CVRF Relationship structure Reference to a package ProductID that is a component of the CPE in RelatesToProductReference

Returns
  contents of ProductReference attribute of a Relationship element

## ◆ cvrf_relationship_get_relates_to_ref()

const char * cvrf_relationship_get_relates_to_ref | ( | const struct cvrf_relationship * | relation | ) |

Parameters

  relation | CVRF Relationship structure ProductID for a CPE referenced in preceding Branches in the ProductTree

Returns
  contents of RelatesToProductReference attribute of a Relationship element

## ◆ cvrf_relationship_new()

struct cvrf_relationship * cvrf_relationship_new | ( | void |  | ) |

New CVRF Relationship element within ProductTree.

Returns
  New CVRF Relationship structure

## ◆ cvrf_relationship_set_product_name()

bool cvrf_relationship_set_product_name | ( | struct cvrf_relationship * | relation,
|  | struct cvrf_product_name * | name
| ) |  |

Parameters

  relation | CVRF Relationship structure
  name | References to the CPE and package ProductID named in Relationship attributes

Returns
  true on success

## ◆ cvrf_relationship_set_product_reference()

bool cvrf_relationship_set_product_reference | ( | struct cvrf_relationship * | relation,
|  | const char * | product_reference
| ) |  |

Parameters

  relation | CVRF Relationship structure
  product_reference | Combined reference to the CPE and package ProductID

Returns
  true on success

## ◆ cvrf_relationship_set_relates_to_ref()

bool cvrf_relationship_set_relates_to_ref | ( | struct cvrf_relationship * | relation,
|  | const char * | relates_to_ref
| ) |  |

Parameters

  relation | CVRF Relationship structure
  relates_to_ref | ProductID for a CPE referenced in preceding Branches in the ProductTree

Returns
  true on success

## ◆ cvrf_remediation_clone()

struct cvrf_remediation * cvrf_remediation_clone | ( | const struct cvrf_remediation * | remed | ) |

Parameters

  remed | Original Remediation structure to be cloned

Returns
  New cloned Remediation structure with same data as the original

## ◆ cvrf_remediation_free()

void cvrf_remediation_free | ( | struct cvrf_remediation * | remed | ) |

Deallocates memory for a Remediation element of the Remediations container.

Parameters

  remed | The CVRF Remediation structure to be freed

## ◆ cvrf_remediation_get_date()

const char * cvrf_remediation_get_date | ( | const struct cvrf_remediation * | remed | ) |

Parameters

  remed | CVRF Remediation structure Date that the Remediation was created

Returns
  contents of Date attribute of the Remediation attribute

## ◆ cvrf_remediation_get_description()

const char * cvrf_remediation_get_description | ( | const struct cvrf_remediation * | remed | ) |

Parameters

  remed | CVRF Remediation structure Description contains a human-readable explanation of Remediation process

Returns
  contents of Description element within a Remediation element

## ◆ cvrf_remediation_get_entitlement()

const char * cvrf_remediation_get_entitlement | ( | const struct cvrf_remediation * | remed | ) |

Parameters

  remed | CVRF Remediation structure Contains vendor-defined constraints for products used to resolve the Vulnerability

Returns
  contents of Entitlement element within a Remediation element

## ◆ cvrf_remediation_get_group_ids()

struct oscap_string_iterator * cvrf_remediation_get_group_ids | ( | struct cvrf_remediation * | remed | ) |

Parameters

  remed | CVRF Remediation structure Stringlist can have from zero to unbounded number of GroupIDs GroupIDs reference the GroupID of a Group element in the document

Returns
  Iterator for the stringlist of GroupIDs

## ◆ cvrf_remediation_get_product_ids()

struct oscap_string_iterator * cvrf_remediation_get_product_ids | ( | struct cvrf_remediation * | remed | ) |

Parameters

  remed | CVRF Remediation structure Stringlist can have from zero to unbounded number of ProductIDs ProductIDs reference the ProductID of a FullProductName element in the document

Returns
  Iterator for the stringlist of ProductIDs

## ◆ cvrf_remediation_get_url()

const char * cvrf_remediation_get_url | ( | const struct cvrf_remediation * | remed | ) |

Parameters

  remed | CVRF Remediation structure Optional URL link to a Remediation for a particular Vulnerability

Returns
  contents of URL element within a Remediation element

## ◆ cvrf_remediation_new()

struct cvrf_remediation * cvrf_remediation_new | ( | void |  | ) |

New CVRF Remediation.

Returns
  New CVRF Remediation

## ◆ cvrf_remediation_set_date()

bool cvrf_remediation_set_date | ( | struct cvrf_remediation * | remed,
|  | const char * | date
| ) |  |

Parameters

  remed | CVRF Remediation structure
  date | Date that the Remediation was created

Returns
  true on success

## ◆ cvrf_remediation_set_description()

bool cvrf_remediation_set_description | ( | struct cvrf_remediation * | remed,
|  | const char * | description
| ) |  |

Parameters

  remed | CVRF Remediation structure
  description | a human-readable explanation of Remediation process

Returns
  true on success

## ◆ cvrf_remediation_set_entitlement()

bool cvrf_remediation_set_entitlement | ( | struct cvrf_remediation * | remed,
|  | const char * | entitlement
| ) |  |

Parameters

  remed | CVRF Remediation structure
  entitlement | vendor-defined constraints for products used to resolve the Vulnerability

Returns
  true on success

## ◆ cvrf_remediation_set_url()

bool cvrf_remediation_set_url | ( | struct cvrf_remediation * | remed,
|  | const char * | url
| ) |  |

Parameters

  remed | CVRF Remediation structure
  url | Optional URL link to a Remediation for a particular Vulnerability

Returns
  true on success

## ◆ cvrf_revision_clone()

struct cvrf_revision * cvrf_revision_clone | ( | const struct cvrf_revision * | revision | ) |

Parameters

  revision | Original Revision structure to be cloned

Returns
  New cloned Revision structure with same data as the original

## ◆ cvrf_revision_free()

void cvrf_revision_free | ( | struct cvrf_revision * | revision | ) |

Deallocates memory for a Revision element of the RevisionHistory container.

Parameters

  revision | The CVRF Revision structure to be freed

## ◆ cvrf_revision_get_date()

const char * cvrf_revision_get_date | ( | const struct cvrf_revision * | revision | ) |

Parameters

  revision | CVRF Revision structure Datetime of when the Revision was made

Returns
  contents of Date element within the Revision element

## ◆ cvrf_revision_get_description()

const char * cvrf_revision_get_description | ( | const struct cvrf_revision * | revision | ) |

Parameters

  revision | CVRF Revision structure Short list of items changed and/or reasons for making the change

Returns
  contents of Description element within the Revision element

## ◆ cvrf_revision_get_number()

const char * cvrf_revision_get_number | ( | const struct cvrf_revision * | revision | ) |

Parameters

  revision | CVRF Revision structure Numeric representation of document version in tokenized format "nn.nn.nn.nn"

Returns
  contents of Number element within the Revision element

## ◆ cvrf_revision_new()

struct cvrf_revision * cvrf_revision_new | ( | void |  | ) |

New CVRF Revision structure.

Returns
  New CVRF Revision

## ◆ cvrf_revision_set_date()

bool cvrf_revision_set_date | ( | struct cvrf_revision * | revision,
|  | const char * | date
| ) |  |

Parameters

  revision | CVRF Revision structure
  date | Datetime of when the Revision was made

Returns
  true on success

## ◆ cvrf_revision_set_description()

bool cvrf_revision_set_description | ( | struct cvrf_revision * | revision,
|  | const char * | description
| ) |  |

Parameters

  revision | CVRF Revision structure
  description | Short list of items changed and/or reasons for making the change

Returns
  true on success

## ◆ cvrf_revision_set_number()

bool cvrf_revision_set_number | ( | struct cvrf_revision * | revision,
|  | const char * | number
| ) |  |

Parameters

  revision | CVRF Revision structure
  number | Numeric representation of document version in format "nn.nn.nn.nn"

Returns
  true on success

## ◆ cvrf_rpm_attributes_free()

void cvrf_rpm_attributes_free | ( | struct cvrf_rpm_attributes * | attributes | ) |

Deallocate memory for the CVRF RPM attributes structure.

Parameters

  attributes | CVRF RPM attributes structure to be freed

## ◆ cvrf_rpm_attributes_get_evr_format()

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.

Parameters

  attributes | CVRF RPM Attributes structure

Returns
  EVR format of the RPM package

## ◆ cvrf_rpm_attributes_get_full_package_name()

const char * cvrf_rpm_attributes_get_full_package_name | ( | const struct cvrf_rpm_attributes * | attributes | ) |

Parameters

  attributes | CVRF RPM Attributes structure

Returns
  Entire RPM package name

## ◆ cvrf_rpm_attributes_get_rpm_name()

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.

Parameters

  attributes | CVRF RPM Attributes structure

Returns
  RPM package name (without release or version)

## ◆ cvrf_rpm_attributes_new()

struct cvrf_rpm_attributes * cvrf_rpm_attributes_new | ( | void |  | ) |

Create a new CVRF RPM attributes structure.

Returns
  New CVRF RPM attributes structure

## ◆ cvrf_rpm_attributes_set_evr_format()

bool cvrf_rpm_attributes_set_evr_format | ( | struct cvrf_rpm_attributes * | attributes,
|  | const char * | evr_format
| ) |  |

Parameters

  attributes | CVRF RPM Attributes structure
  evr_format | String representation of the EVR of an RPM package

Returns
  true on success

## ◆ cvrf_rpm_attributes_set_full_package_name()

bool cvrf_rpm_attributes_set_full_package_name | ( | struct cvrf_rpm_attributes * | attributes,
|  | const char * | full_package
| ) |  |

Parameters

  attributes | CVRF RPM Attributes structure
  full_package | Full length RPM package name

Returns
  true on success

## ◆ cvrf_rpm_attributes_set_rpm_name()

bool cvrf_rpm_attributes_set_rpm_name | ( | struct cvrf_rpm_attributes * | attributes,
|  | const char * | rpm_name
| ) |  |

Parameters

  attributes | CVRF RPM Attributes structure
  rpm_name | Package name (without version or release) of an RPM package

Returns
  true on success

## ◆ cvrf_score_set_add_metric()

bool cvrf_score_set_add_metric | ( | struct cvrf_score_set * | score_set,
|  | enum cvss_category | category,
|  | const char * | score
| ) |  |

Parameters

  score_set | ScoreSet structure
  category | CVSS_BASE, CVSS_TEMPORAL, or CVSS_ENVIRONMENTAL
  score | String representation of the CVSS score

Returns
  true on success

## ◆ cvrf_score_set_clone()

struct cvrf_score_set * cvrf_score_set_clone | ( | const struct cvrf_score_set * | score_set | ) |

Parameters

  score_set | Original ScoreSet structure to be cloned

Returns
  New cloned ScoreSet structure with same data as the original

## ◆ cvrf_score_set_free()

void cvrf_score_set_free | ( | struct cvrf_score_set * | score_set | ) |

Deallocates memory for a ScoreSet element of the CVSSScoreSets container.

Parameters

  score_set | The CVRF ScoreSet structure to be freed

## ◆ cvrf_score_set_get_base_score()

char * cvrf_score_set_get_base_score | ( | const struct cvrf_score_set * | score_set | ) |

Parameters

  score_set | ScoreSet structure Range: 0.0 - 10.0

Returns
  string representation of BaseScore element within a ScoreSet element

## ◆ cvrf_score_set_get_environmental_score()

char * cvrf_score_set_get_environmental_score | ( | const struct cvrf_score_set * | score_set | ) |

Parameters

  score_set | ScoreSet structure Range: 0.0 - 10.0

Returns
  string representation of EnvironmentalScore element within a ScoreSet element

## ◆ cvrf_score_set_get_impact()

struct cvss_impact * cvrf_score_set_get_impact | ( | const struct cvrf_score_set * | score_set | ) |

Parameters

  score_set | ScoreSet structure

Returns
  CVSS impact structure generated by parsing XML ScoreSet element in CVRF document

## ◆ cvrf_score_set_get_product_ids()

struct oscap_string_iterator * cvrf_score_set_get_product_ids | ( | struct cvrf_score_set * | score_set | ) |

Parameters

  score_set | ScoreSet structure with stringlist of ProductIDs Stringlist can have from zero to unbounded number of ProductIDs ProductIDs reference the ProductID of a FullProductName element in the document

Returns
  Iterator for the stringlist of ProductIDs

## ◆ cvrf_score_set_get_temporal_score()

char * cvrf_score_set_get_temporal_score | ( | const struct cvrf_score_set * | score_set | ) |

Parameters

  score_set | ScoreSet structure Range: 0.0 - 10.0

Returns
  string representation of TemporalScore element within a ScoreSet element

## ◆ cvrf_score_set_get_vector()

const char * cvrf_score_set_get_vector | ( | const struct cvrf_score_set * | score_set | ) |

Parameters

  score_set | ScoreSet structure Contains official CVSS notation of values used to compute all the scores

Returns
  contents of Vector element within a ScoreSet element

## ◆ cvrf_score_set_new()

struct cvrf_score_set * cvrf_score_set_new | ( | void |  | ) |

New ScoreSet member of a CVSSScoreSets container within a Vulnerability element.

Returns
  New CVRF ScoreSet structure

## ◆ cvrf_score_set_set_impact()

bool cvrf_score_set_set_impact | ( | struct cvrf_score_set * | score_set,
|  | struct cvss_impact * | impact
| ) |  |

Parameters

  score_set | ScoreSet structure
  impact | CVSS impact structure with scores for parent Vulnerability

Returns
  true on success

## ◆ cvrf_score_set_set_vector()

bool cvrf_score_set_set_vector | ( | struct cvrf_score_set * | score_set,
|  | const char * | vector
| ) |  |

Parameters

  score_set | ScoreSet structure
  vector | Official CVSS notation of values used to compute all the scores

Returns
  true on success

## ◆ cvrf_session_free()

void cvrf_session_free | ( | struct cvrf_session * | session | ) |

Deallocates memory for a CVRF Session structure.

Parameters

  session | CVRF session structure to be freed

## ◆ cvrf_session_get_index()

struct cvrf_index * cvrf_session_get_index | ( | const struct cvrf_session * | session | ) |

Parameters

  session | CVRF session structure

Returns
  CVRF index structure imported into the session, if any

## ◆ cvrf_session_get_model()

struct cvrf_model * cvrf_session_get_model | ( | struct cvrf_session * | session | ) |

Parameters

  session | CVRF session structure

Returns
  CVRF model structure imported into the session, if any

## ◆ cvrf_session_get_os_name()

const char * cvrf_session_get_os_name | ( | const struct cvrf_session * | session | ) |

Parameters

  session | CVRF session structure

Returns
  CPE used to evaluate the CVRF model(s)

## ◆ cvrf_session_get_product_ids()

struct oscap_string_iterator * cvrf_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.

Parameters

  session | CVRF session structure

Returns
  Iterator for the list of ProductIDs maintained by the session structure

## ◆ cvrf_session_new_from_source_index()

struct cvrf_session * cvrf_session_new_from_source_index | ( | struct oscap_source * | source | ) |

Parameters

  source | OSCAP import source for an index of CVRF files

Returns
  CVRF session structure generated from this import source

## ◆ cvrf_session_new_from_source_model()

struct cvrf_session * cvrf_session_new_from_source_model | ( | struct oscap_source * | source | ) |

Parameters

  source | OSCAP import source for a CVRF document

Returns
  CVRF session structure generated from this import source

## ◆ cvrf_session_set_index()

bool cvrf_session_set_index | ( | struct cvrf_session * | session,
|  | struct cvrf_index * | index
| ) |  |

Add the CVRF index to be evaluated to the Session structure.

Parameters

  session | CVRF session structure
  index | CVRF index to be added to the CVRF session structure

Returns
  true on success

## ◆ cvrf_session_set_model()

void cvrf_session_set_model | ( | struct cvrf_session * | session,
|  | struct cvrf_model * | model
| ) |  |

Add the CVRF model to be evaluated to the Session structure.

Parameters

  session | CVRF session structure
  model | CVRF model to be added to the CVRF session structure

## ◆ cvrf_session_set_os_name()

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.

Parameters

  session | CVRF session structure
  os_name | CPE name to be added to the Session structure

Returns
  true on success

## ◆ cvrf_threat_clone()

struct cvrf_threat * cvrf_threat_clone | ( | const struct cvrf_threat * | threat | ) |

Parameters

  threat | Original Threat structure to be cloned

Returns
  New cloned Threat structure with same data as the original

## ◆ cvrf_threat_free()

void cvrf_threat_free | ( | struct cvrf_threat * | threat | ) |

Deallocates memory for a Threat element of the Threats container.

Parameters

  threat | The CVRF Threat structure to be freed

## ◆ cvrf_threat_get_date()

const char * cvrf_threat_get_date | ( | const struct cvrf_threat * | threat | ) |

Parameters

  threat | CVRF Threat structure Datetime that the Threat was identified and documented

Returns
  contents of Date attribute within a Threat element

## ◆ cvrf_threat_get_description()

const char * cvrf_threat_get_description | ( | const struct cvrf_threat * | threat | ) |

Parameters

  threat | CVRF Threat structure Description contains a human-readable explanation of the threat

Returns
  contents of Description element within a Threat element

## ◆ cvrf_threat_get_group_ids()

struct oscap_string_iterator * cvrf_threat_get_group_ids | ( | struct cvrf_threat * | threat | ) |

Parameters

  threat | Threat structure with stringlist of GroupIDs Stringlist can have from zero to unbounded number of GroupIDs GroupIDs reference the GroupID of a Group element in the document

Returns
  Iterator for the stringlist of GroupIDs

## ◆ cvrf_threat_get_product_ids()

struct oscap_string_iterator * cvrf_threat_get_product_ids | ( | struct cvrf_threat * | threat | ) |

Parameters

  threat | Threat structure with stringlist of ProductIDs Stringlist can have from zero to unbounded number of ProductIDs ProductIDs reference the ProductID of a FullProductName element in the document

Returns
  Iterator for the stringlist of ProductIDs

## ◆ cvrf_threat_new()

struct cvrf_threat * cvrf_threat_new | ( | void |  | ) |

New CVRF Threat element.

Returns
  New CVRF Threat structure

## ◆ cvrf_threat_set_date()

bool cvrf_threat_set_date | ( | struct cvrf_threat * | threat,
|  | const char * | date
| ) |  |

Parameters

  threat | CVRF Threat structure
  date | Datetime that the Threat was identified and documented

Returns
  true on success

## ◆ cvrf_threat_set_description()

bool cvrf_threat_set_description | ( | struct cvrf_threat * | threat,
|  | const char * | description
| ) |  |

Parameters

  threat | CVRF Threat structure
  description | A human-readable explanation of the threat

Returns
  true on success

## ◆ cvrf_vulnerability_add_cvrf_product_status()

bool cvrf_vulnerability_add_cvrf_product_status | ( | struct cvrf_vulnerability * | vuln,
|  | struct cvrf_product_status * | stat
| ) |  |

Parameters

  vuln | CVRF Vulnerability structure
  vuln | CVRF Status structure to be added to the Vulnerability

Returns
  true on success

## ◆ cvrf_vulnerability_add_involvement()

bool cvrf_vulnerability_add_involvement | ( | struct cvrf_vulnerability * | vuln,
|  | struct cvrf_involvement * | involvement
| ) |  |

Parameters

  vuln | CVRF Vulnerability structure
  involvement | CVRF Involvement structure to be added to the Vulnerability

Returns
  true on success

## ◆ cvrf_vulnerability_add_remediation()

bool cvrf_vulnerability_add_remediation | ( | struct cvrf_vulnerability * | vuln,
|  | struct cvrf_remediation * | remed
| ) |  |

Parameters

  vuln | CVRF Vulnerability structure
  vuln | CVRF Remediation structure to be added to the Vulnerability

Returns
  true on success

## ◆ cvrf_vulnerability_add_score_set()

bool cvrf_vulnerability_add_score_set | ( | struct cvrf_vulnerability * | vuln,
|  | struct cvrf_score_set * | score_set
| ) |  |

Parameters

  vuln | CVRF Vulnerability structure
  vuln | CVRF ScoreSet structure to be added to the Vulnerability

Returns
  true on success

## ◆ cvrf_vulnerability_add_threat()

bool cvrf_vulnerability_add_threat | ( | struct cvrf_vulnerability * | vuln,
|  | struct cvrf_threat * | threat
| ) |  |

Parameters

  vuln | CVRF Vulnerability structure
  vuln | CVRF Threat structure to be added to the Vulnerability

Returns
  true on success

## ◆ cvrf_vulnerability_add_vulnerability_cwe()

bool cvrf_vulnerability_add_vulnerability_cwe | ( | struct cvrf_vulnerability * | vuln,
|  | struct cvrf_vulnerability_cwe * | vulnerability_cwe
| ) |  |

Parameters

  vuln | CVRF Vulnerability structure
  vulnerability_cwe | CWE structure to be added to the Vulnerability

Returns
  true on success

## ◆ cvrf_vulnerability_clone()

struct cvrf_vulnerability * cvrf_vulnerability_clone | ( | const struct cvrf_vulnerability * | vuln | ) |

Parameters

  vuln | Original Vulnerability structure to be cloned

Returns
  New cloned Vulnerability structure with same data as the original

## ◆ cvrf_vulnerability_cwe_clone()

struct cvrf_vulnerability_cwe * cvrf_vulnerability_cwe_clone | ( | const struct cvrf_vulnerability_cwe * | cwe | ) |

Parameters

  cwe | Original CWE structure to be cloned

Returns
  New cloned CWE structure with same data as the original

## ◆ cvrf_vulnerability_cwe_free()

void cvrf_vulnerability_cwe_free | ( | struct cvrf_vulnerability_cwe * | cwe | ) |

Deallocates memory for a CWE element.

Parameters

  cwe | The CWE structure to be freed

## ◆ cvrf_vulnerability_cwe_get_cwe()

const char * cvrf_vulnerability_cwe_get_cwe | ( | const struct cvrf_vulnerability_cwe * | vuln_cwe | ) |

Parameters

  vuln_cwe | CWE structure

Returns
  contents of a the CWE element

## ◆ cvrf_vulnerability_cwe_get_id()

const char * cvrf_vulnerability_cwe_get_id | ( | const struct cvrf_vulnerability_cwe * | vuln_cwe | ) |

Parameters

  vuln_cwe | CWE structure

Returns
  ID attribute of a CWE element

## ◆ cvrf_vulnerability_cwe_new()

struct cvrf_vulnerability_cwe * cvrf_vulnerability_cwe_new | ( | void |  | ) |

New CVRF CWE structure.

Returns
  New CWE structure

## ◆ cvrf_vulnerability_cwe_set_cwe()

bool cvrf_vulnerability_cwe_set_cwe | ( | struct cvrf_vulnerability_cwe * | vuln_cwe,
|  | const char * | cwe
| ) |  |

Parameters

  vuln_cwe | CWE structure
  cwe | CWE name and content of the CWE element

Returns
  true on success

## ◆ cvrf_vulnerability_cwe_set_id()

bool cvrf_vulnerability_cwe_set_id | ( | struct cvrf_vulnerability_cwe * | vuln_cwe,
|  | const char * | id
| ) |  |

Parameters

  vuln_cwe | CWE structure
  id | Unique identifier for a CWE

Returns
  true on success

## ◆ cvrf_vulnerability_filter_by_product()

int cvrf_vulnerability_filter_by_product | ( | struct cvrf_vulnerability * | vuln,
|  | const char * | prod
| ) |  |

Parameters

  vuln | CVRF Vulnerability structure to be filtered
  prod | ProductID of the CPE; this is the prefix of package ProductIDs in Statuses

Returns
  0 on success, -1 on failure

## ◆ cvrf_vulnerability_free()

void cvrf_vulnerability_free | ( | struct cvrf_vulnerability * | vulnerability | ) |

Deallocates memory for a Vulnerability element.

Parameters

  vulnerability | The CVRF Vulnerability structure to be freed

## ◆ cvrf_vulnerability_get_acknowledgments()

struct oscap_iterator * cvrf_vulnerability_get_acknowledgments | ( | struct cvrf_vulnerability * | vuln | ) |

Parameters

  vuln | CVRF Vulnerability structure

Returns
  Iterator for the list of Acknowledgment elements in the Acknowledgments container

## ◆ cvrf_vulnerability_get_cve_id()

const char * cvrf_vulnerability_get_cve_id | ( | const struct cvrf_vulnerability * | vuln | ) |

Parameters

  vuln | CVRF Vulnerability structure MITRE standard CVE ID used to track Vulnerabilities

Returns
  contents of CVE element within a Vulnerability element

## ◆ cvrf_vulnerability_get_discovery_date()

const char * cvrf_vulnerability_get_discovery_date | ( | const struct cvrf_vulnerability * | vuln | ) |

Parameters

  vuln | CVRF Vulnerability structure DateTime value of the original discovery time for this Vulnerability

Returns
  contents of DiscoveryDate element within a Vulnerability element

## ◆ cvrf_vulnerability_get_involvements()

struct cvrf_involvement_iterator * cvrf_vulnerability_get_involvements | ( | const struct cvrf_vulnerability * | vuln | ) |

Parameters

  vuln | CVRF Vulnerability structure

Returns
  Iterator representing list of all Involvements in the Vulnerability

## ◆ cvrf_vulnerability_get_notes()

struct oscap_iterator * cvrf_vulnerability_get_notes | ( | struct cvrf_vulnerability * | vuln | ) |

Parameters

  vuln | CVRF Vulnerability structure

Returns
  Iterator for the list of Note elements in the Notes container

## ◆ cvrf_vulnerability_get_ordinal()

int cvrf_vulnerability_get_ordinal | ( | const struct cvrf_vulnerability * | vuln | ) |

Parameters

  vuln | CVRF Vulnerability structure Index and ordering of a Vulnerability element within a document

Returns
  Ordinal attribute of a Vulnerability element

## ◆ cvrf_vulnerability_get_product_statuses()

struct cvrf_product_status_iterator * cvrf_vulnerability_get_product_statuses | ( | const struct cvrf_vulnerability * | vuln | ) |

Parameters

  vuln | CVRF Vulnerability structure

Returns
  Iterator representing list of all Statuses in the Vulnerability

## ◆ cvrf_vulnerability_get_references()

struct oscap_iterator * cvrf_vulnerability_get_references | ( | struct cvrf_vulnerability * | vuln | ) |

Parameters

  vuln | CVRF Vulnerability structure

Returns
  Iterator for the list of Reference elements in the References container

## ◆ cvrf_vulnerability_get_release_date()

const char * cvrf_vulnerability_get_release_date | ( | const struct cvrf_vulnerability * | vuln | ) |

Parameters

  vuln | CVRF Vulnerability structure DateTime value of the original public release time for this Vulnerability

Returns
  contents of ReleaseDate element within a Vulnerability element

## ◆ cvrf_vulnerability_get_remediations()

struct cvrf_remediation_iterator * cvrf_vulnerability_get_remediations | ( | const struct cvrf_vulnerability * | vuln | ) |

Parameters

  vuln | CVRF Vulnerability structure

Returns
  Iterator representing list of all Remediations in the Vulnerability

## ◆ cvrf_vulnerability_get_score_sets()

struct cvrf_score_set_iterator * cvrf_vulnerability_get_score_sets | ( | const struct cvrf_vulnerability * | vuln | ) |

Parameters

  vuln | CVRF Vulnerability structure

Returns
  Iterator representing list of all ScoreSets in the Vulnerability

## ◆ cvrf_vulnerability_get_system_id()

const char * cvrf_vulnerability_get_system_id | ( | const struct cvrf_vulnerability * | vuln | ) |

Parameters

  vuln | CVRF Vulnerability structure Unique ID of the Vulnerability given by the document producer

Returns
  contents of an ID element within a Vulnerability element

## ◆ cvrf_vulnerability_get_system_name()

const char * cvrf_vulnerability_get_system_name | ( | const struct cvrf_vulnerability * | vuln | ) |

Parameters

  vuln | CVRF Vulnerability structure Gives name or numbering system of the Vulnerability ID

Returns
  contents of SystemName attribute within an ID element

## ◆ cvrf_vulnerability_get_threats()

struct cvrf_threat_iterator * cvrf_vulnerability_get_threats | ( | const struct cvrf_vulnerability * | vuln | ) |

Parameters

  vuln | CVRF Vulnerability structure

Returns
  Iterator representing list of all Threats in the Vulnerability

## ◆ cvrf_vulnerability_get_title()

const char * cvrf_vulnerability_get_title | ( | const struct cvrf_vulnerability * | vuln | ) |

Parameters

  vuln | CVRF Vulnerability structure Canonical name of Vulnerability; should match nomenclature of references elsewhere

Returns
  contents of a Title element within a Vulnerability element

## ◆ cvrf_vulnerability_get_vulnerability_cwes()

struct cvrf_vulnerability_cwe_iterator * cvrf_vulnerability_get_vulnerability_cwes | ( | const struct cvrf_vulnerability * | vuln | ) |

Parameters

  vuln | CVRF Vulnerability structure

Returns
  Iterator representing list of all CWEs in the Vulnerability

## ◆ cvrf_vulnerability_new()

struct cvrf_vulnerability * cvrf_vulnerability_new | ( | void |  | ) |

New CVRF Vulnerability.

Returns
  New CVRF Vulnerability

## ◆ cvrf_vulnerability_set_cve_id()

bool cvrf_vulnerability_set_cve_id | ( | struct cvrf_vulnerability * | vuln,
|  | const char * | cve_id
| ) |  |

Parameters

  vuln | CVRF Vulnerability structure
  cve_id | MITRE standard CVE ID used to track Vulnerabilities

Returns
  true on success

## ◆ cvrf_vulnerability_set_discovery_date()

bool cvrf_vulnerability_set_discovery_date | ( | struct cvrf_vulnerability * | vuln,
|  | const char * | discovery_date
| ) |  |

Parameters

  vuln | CVRF Vulnerability structure
  Original | discovery time for this Vulnerability

Returns
  true on success

## ◆ cvrf_vulnerability_set_ordinal()

bool cvrf_vulnerability_set_ordinal | ( | struct cvrf_vulnerability * | vuln,
|  | int | ordinal
| ) |  |

Parameters

  vuln | CVRF Vulnerability structure
  ordinal | Index of a Vulnerability element within a document

Returns
  true on success

## ◆ cvrf_vulnerability_set_release_date()

bool cvrf_vulnerability_set_release_date | ( | struct cvrf_vulnerability * | vuln,
|  | const char * | release_date
| ) |  |

Parameters

  vuln | CVRF Vulnerability structure
  release_date | Original public release time for this Vulnerability

Returns
  true on success

## ◆ cvrf_vulnerability_set_system_id()

bool cvrf_vulnerability_set_system_id | ( | struct cvrf_vulnerability * | vuln,
|  | const char * | id
| ) |  |

Parameters

  vuln | CVRF Vulnerability structure
  id | Unique ID of the Vulnerability given by the document producer

Returns
  true on success

## ◆ cvrf_vulnerability_set_system_name()

bool cvrf_vulnerability_set_system_name | ( | struct cvrf_vulnerability * | vuln,
|  | const char * | sys_name
| ) |  |

Parameters

  vuln | CVRF Vulnerability structure
  sys_name | Name or numbering system of the Vulnerability ID

Returns
  true on success

## ◆ cvrf_vulnerability_set_title()

bool cvrf_vulnerability_set_title | ( | struct cvrf_vulnerability * | vuln,
|  | const char * | vulnerability_title
| ) |  |

Parameters

  vuln | CVRF Vulnerability structure
  vulnerability_title | Canonical name of Vulnerability

Returns
  true on success

## ◆ get_cvrf_product_id_from_cpe()

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.

Parameters

  tree | ProductTree structure to be searched
  cpe | CPE string in the FullProductName element used to get the ProductID

Returns
  ProductID for the given CPE