34#include "oscap_source.h"
36#include "oscap_export.h"
339OSCAP_API
char *cvrf_score_set_get_base_score(
const struct cvrf_score_set *score_set);
347OSCAP_API
char *cvrf_score_set_get_environmental_score(
const struct cvrf_score_set *score_set);
355OSCAP_API
char *cvrf_score_set_get_temporal_score(
const struct cvrf_score_set *score_set);
681struct cvrf_vulnerability_cwe_iterator;
703OSCAP_API
struct cvrf_vulnerability_cwe *cvrf_vulnerability_cwe_iterator_next(
struct cvrf_vulnerability_cwe_iterator *it);
710OSCAP_API
bool cvrf_vulnerability_cwe_iterator_has_more(
struct cvrf_vulnerability_cwe_iterator *it);
717OSCAP_API
void cvrf_vulnerability_cwe_iterator_free(
struct cvrf_vulnerability_cwe_iterator *it);
724OSCAP_API
void cvrf_vulnerability_cwe_iterator_reset(
struct cvrf_vulnerability_cwe_iterator *it);
731OSCAP_API
void cvrf_vulnerability_cwe_iterator_remove(
struct cvrf_vulnerability_cwe_iterator *it);
738struct cvrf_involvement_iterator;
760OSCAP_API
struct cvrf_involvement *cvrf_involvement_iterator_next(
struct cvrf_involvement_iterator *it);
767OSCAP_API
bool cvrf_involvement_iterator_has_more(
struct cvrf_involvement_iterator *it);
774OSCAP_API
void cvrf_involvement_iterator_free(
struct cvrf_involvement_iterator *it);
781OSCAP_API
void cvrf_involvement_iterator_reset(
struct cvrf_involvement_iterator *it);
788OSCAP_API
void cvrf_involvement_iterator_remove(
struct cvrf_involvement_iterator *it);
795struct cvrf_score_set_iterator;
817OSCAP_API
struct cvrf_score_set *cvrf_score_set_iterator_next(
struct cvrf_score_set_iterator *it);
824OSCAP_API
bool cvrf_score_set_iterator_has_more(
struct cvrf_score_set_iterator *it);
831OSCAP_API
void cvrf_score_set_iterator_free(
struct cvrf_score_set_iterator *it);
838OSCAP_API
void cvrf_score_set_iterator_reset(
struct cvrf_score_set_iterator *it);
845OSCAP_API
void cvrf_score_set_iterator_remove(
struct cvrf_score_set_iterator *it);
852struct cvrf_product_status_iterator;
874OSCAP_API
struct cvrf_product_status *cvrf_product_status_iterator_next(
struct cvrf_product_status_iterator *it);
881OSCAP_API
bool cvrf_product_status_iterator_has_more(
struct cvrf_product_status_iterator *it);
888OSCAP_API
void cvrf_product_status_iterator_free(
struct cvrf_product_status_iterator *it);
895OSCAP_API
void cvrf_product_status_iterator_reset(
struct cvrf_product_status_iterator *it);
902OSCAP_API
void cvrf_product_status_iterator_remove(
struct cvrf_product_status_iterator *it);
909struct cvrf_remediation_iterator;
931OSCAP_API
struct cvrf_remediation *cvrf_remediation_iterator_next(
struct cvrf_remediation_iterator *it);
938OSCAP_API
bool cvrf_remediation_iterator_has_more(
struct cvrf_remediation_iterator *it);
945OSCAP_API
void cvrf_remediation_iterator_free(
struct cvrf_remediation_iterator *it);
952OSCAP_API
void cvrf_remediation_iterator_reset(
struct cvrf_remediation_iterator *it);
959OSCAP_API
void cvrf_remediation_iterator_remove(
struct cvrf_remediation_iterator *it);
966struct cvrf_threat_iterator;
988OSCAP_API
struct cvrf_threat *cvrf_threat_iterator_next(
struct cvrf_threat_iterator *it);
995OSCAP_API
bool cvrf_threat_iterator_has_more(
struct cvrf_threat_iterator *it);
1002OSCAP_API
void cvrf_threat_iterator_free(
struct cvrf_threat_iterator *it);
1009OSCAP_API
void cvrf_threat_iterator_reset(
struct cvrf_threat_iterator *it);
1016OSCAP_API
void cvrf_threat_iterator_remove(
struct cvrf_threat_iterator *it);
1373struct cvrf_product_name_iterator;
1395OSCAP_API
struct cvrf_product_name *cvrf_product_name_iterator_next(
struct cvrf_product_name_iterator *it);
1402OSCAP_API
bool cvrf_product_name_iterator_has_more(
struct cvrf_product_name_iterator *it);
1409OSCAP_API
void cvrf_product_name_iterator_free(
struct cvrf_product_name_iterator *it);
1416OSCAP_API
void cvrf_product_name_iterator_reset(
struct cvrf_product_name_iterator *it);
1423OSCAP_API
void cvrf_product_name_iterator_remove(
struct cvrf_product_name_iterator *it);
1430struct cvrf_relationship_iterator;
1452OSCAP_API
struct cvrf_relationship *cvrf_relationship_iterator_next(
struct cvrf_relationship_iterator *it);
1459OSCAP_API
bool cvrf_relationship_iterator_has_more(
struct cvrf_relationship_iterator *it);
1466OSCAP_API
void cvrf_relationship_iterator_free(
struct cvrf_relationship_iterator *it);
1473OSCAP_API
void cvrf_relationship_iterator_reset(
struct cvrf_relationship_iterator *it);
1480OSCAP_API
void cvrf_relationship_iterator_remove(
struct cvrf_relationship_iterator *it);
1488struct cvrf_group_iterator;
1510OSCAP_API
struct cvrf_group *cvrf_group_iterator_next(
struct cvrf_group_iterator *it);
1517OSCAP_API
bool cvrf_group_iterator_has_more(
struct cvrf_group_iterator *it);
1524OSCAP_API
void cvrf_group_iterator_free(
struct cvrf_group_iterator *it);
1531OSCAP_API
void cvrf_group_iterator_reset(
struct cvrf_group_iterator *it);
1538OSCAP_API
void cvrf_group_iterator_remove(
struct cvrf_group_iterator *it);
1931struct cvrf_revision_iterator;
1953OSCAP_API
struct cvrf_revision *cvrf_revision_iterator_next(
struct cvrf_revision_iterator *it);
1960OSCAP_API
bool cvrf_revision_iterator_has_more(
struct cvrf_revision_iterator *it);
1967OSCAP_API
void cvrf_revision_iterator_free(
struct cvrf_revision_iterator *it);
1974OSCAP_API
void cvrf_revision_iterator_reset(
struct cvrf_revision_iterator *it);
1981OSCAP_API
void cvrf_revision_iterator_remove(
struct cvrf_revision_iterator *it);
2353OSCAP_API
const char *cvrf_model_get_identification(
struct cvrf_model *model);
2368struct cvrf_vulnerability_iterator;
2390OSCAP_API
struct cvrf_vulnerability *cvrf_vulnerability_iterator_next(
struct cvrf_vulnerability_iterator *it);
2397OSCAP_API
bool cvrf_vulnerability_iterator_has_more(
struct cvrf_vulnerability_iterator *it);
2404OSCAP_API
void cvrf_vulnerability_iterator_free(
struct cvrf_vulnerability_iterator *it);
2411OSCAP_API
void cvrf_vulnerability_iterator_reset(
struct cvrf_vulnerability_iterator *it);
2418OSCAP_API
void cvrf_vulnerability_iterator_remove(
struct cvrf_vulnerability_iterator *it);
2486struct cvrf_model_iterator;
2508OSCAP_API
struct cvrf_model *cvrf_model_iterator_next(
struct cvrf_model_iterator *it);
2515OSCAP_API
bool cvrf_model_iterator_has_more(
struct cvrf_model_iterator *it);
2522OSCAP_API
void cvrf_model_iterator_free(
struct cvrf_model_iterator *it);
2529OSCAP_API
void cvrf_model_iterator_reset(
struct cvrf_model_iterator *it);
2536OSCAP_API
void cvrf_model_iterator_remove(
struct cvrf_model_iterator *it);
2704OSCAP_API
const char * cvrf_model_supported(
void);
2747OSCAP_API
struct oscap_source *cvrf_model_get_results_source(
struct oscap_source *import_source,
const char *os_name);
2757OSCAP_API
struct oscap_source *cvrf_index_get_results_source(
struct oscap_source *import_source,
const char *os_name);
Interface to Common Vulnerability Scoring System Version 2.
OSCAP_API bool cvrf_score_set_set_impact(struct cvrf_score_set *score_set, struct cvss_impact *impact)
OSCAP_API bool cvrf_model_set_doc_title(struct cvrf_model *model, const char *doc_title)
OSCAP_API const char * cvrf_acknowledgment_get_description(const struct cvrf_acknowledgment *ack)
OSCAP_API struct cvrf_acknowledgment * cvrf_acknowledgment_clone(const struct cvrf_acknowledgment *ack)
Definition: cvrf_priv.c:884
OSCAP_API const char * cvrf_branch_get_branch_name(const struct cvrf_branch *branch)
OSCAP_API bool cvrf_document_set_namespace(struct cvrf_document *doc, const char *ns)
OSCAP_API struct cvrf_session * cvrf_session_new_from_source_model(struct oscap_source *source)
Definition: cvrf_eval.c:88
OSCAP_API const char * cvrf_doc_tracking_get_init_release_date(const struct cvrf_doc_tracking *tracking)
OSCAP_API void cvrf_relationship_free(struct cvrf_relationship *relationship)
Deallocates memory for a Relationship element.
Definition: cvrf_priv.c:663
OSCAP_API void cvrf_doc_tracking_free(struct cvrf_doc_tracking *tracking)
Deallocates memory for a DocumentTracking element.
Definition: cvrf_priv.c:1035
OSCAP_API struct cvrf_product_name * cvrf_product_name_clone(const struct cvrf_product_name *full_name)
Definition: cvrf_priv.c:582
OSCAP_API bool cvrf_relationship_set_product_name(struct cvrf_relationship *relation, struct cvrf_product_name *name)
OSCAP_API bool cvrf_model_set_document(struct cvrf_model *model, struct cvrf_document *doc)
OSCAP_API void cvrf_product_status_free(struct cvrf_product_status *status)
Deallocates memory for a Status element of the ProductStatuses container.
Definition: cvrf_priv.c:297
OSCAP_API struct cvrf_revision_iterator * cvrf_doc_tracking_get_revision_history(const struct cvrf_doc_tracking *tracking)
OSCAP_API bool cvrf_acknowledgment_set_description(struct cvrf_acknowledgment *ack, const char *description)
OSCAP_API 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 relati...
Definition: cvrf_priv.c:813
OSCAP_API const char * cvrf_product_name_get_product_id(const struct cvrf_product_name *full_name)
OSCAP_API struct cvrf_group * cvrf_group_new(void)
New CVRF Group child of ProductGroups container element.
Definition: cvrf_priv.c:604
OSCAP_API struct cvrf_note * cvrf_note_clone(const struct cvrf_note *note)
Definition: cvrf_priv.c:935
OSCAP_API bool cvrf_remediation_set_date(struct cvrf_remediation *remed, const char *date)
OSCAP_API bool cvrf_revision_set_number(struct cvrf_revision *revision, const char *number)
OSCAP_API const char * cvrf_group_get_description(const struct cvrf_group *group)
OSCAP_API bool cvrf_revision_set_date(struct cvrf_revision *revision, const char *date)
OSCAP_API bool cvrf_product_name_set_cpe(struct cvrf_product_name *full_name, const char *cpe)
OSCAP_API struct cvrf_doc_publisher * cvrf_doc_publisher_new(void)
New CVRF DocumentPublisher structure.
Definition: cvrf_priv.c:1082
OSCAP_API void cvrf_score_set_free(struct cvrf_score_set *score_set)
Deallocates memory for a ScoreSet element of the CVSSScoreSets container.
Definition: cvrf_priv.c:194
OSCAP_API struct cvrf_acknowledgment * cvrf_acknowledgment_new(void)
New CVRF Acknowledgment element within Acknowledgments container.
Definition: cvrf_priv.c:861
OSCAP_API struct cvrf_doc_tracking * cvrf_doc_tracking_clone(const struct cvrf_doc_tracking *tracking)
Definition: cvrf_priv.c:1050
OSCAP_API struct cvrf_doc_publisher * cvrf_doc_publisher_clone(const struct cvrf_doc_publisher *publisher)
Definition: cvrf_priv.c:1104
OSCAP_API const char * cvrf_vulnerability_get_system_name(const struct cvrf_vulnerability *vuln)
OSCAP_API bool cvrf_score_set_set_vector(struct cvrf_score_set *score_set, const char *vector)
OSCAP_API struct cvrf_product_status_iterator * cvrf_vulnerability_get_product_statuses(const struct cvrf_vulnerability *vuln)
OSCAP_API bool cvrf_vulnerability_add_threat(struct cvrf_vulnerability *vuln, struct cvrf_threat *threat)
OSCAP_API void cvrf_product_name_free(struct cvrf_product_name *full_name)
Deallocates memory for a FullProductName element.
Definition: cvrf_priv.c:573
OSCAP_API const char * cvrf_product_name_get_cpe(const struct cvrf_product_name *full_name)
OSCAP_API const char * cvrf_remediation_get_entitlement(const struct cvrf_remediation *remed)
OSCAP_API struct cvrf_product_tree * cvrf_product_tree_clone(const struct cvrf_product_tree *tree)
Definition: cvrf_priv.c:793
OSCAP_API bool cvrf_rpm_attributes_set_rpm_name(struct cvrf_rpm_attributes *attributes, const char *rpm_name)
OSCAP_API const char * cvrf_group_get_group_id(const struct cvrf_group *group)
OSCAP_API struct cvrf_reference * cvrf_reference_new(void)
New CVRF Reference structure.
Definition: cvrf_priv.c:1130
OSCAP_API const char * cvrf_vulnerability_get_discovery_date(const struct cvrf_vulnerability *vuln)
OSCAP_API struct cvrf_model * cvrf_model_import(struct oscap_source *source)
Parses the specified XML file and creates a list of CVRF data structures.
Definition: cvrf.c:58
OSCAP_API struct cvrf_model * cvrf_model_new(void)
New CVRF model.
Definition: cvrf_priv.c:1260
OSCAP_API bool cvrf_vulnerability_set_ordinal(struct cvrf_vulnerability *vuln, int ordinal)
OSCAP_API void cvrf_rpm_attributes_free(struct cvrf_rpm_attributes *attributes)
Deallocate memory for the CVRF RPM attributes structure.
Definition: cvrf_eval.c:155
OSCAP_API struct cvrf_group_iterator * cvrf_product_tree_get_product_groups(const struct cvrf_product_tree *tree)
OSCAP_API struct cvrf_involvement_iterator * cvrf_vulnerability_get_involvements(const struct cvrf_vulnerability *vuln)
OSCAP_API struct cvrf_involvement * cvrf_involvement_new(void)
New CVRF Involvement.
Definition: cvrf_priv.c:331
OSCAP_API bool cvrf_note_set_title(struct cvrf_note *note, const char *title)
OSCAP_API const char * cvrf_threat_get_date(const struct cvrf_threat *threat)
OSCAP_API struct cvrf_vulnerability_cwe * cvrf_vulnerability_cwe_clone(const struct cvrf_vulnerability_cwe *cwe)
Definition: cvrf_priv.c:388
OSCAP_API void cvrf_revision_free(struct cvrf_revision *revision)
Deallocates memory for a Revision element of the RevisionHistory container.
Definition: cvrf_priv.c:969
OSCAP_API const char * cvrf_vulnerability_cwe_get_cwe(const struct cvrf_vulnerability_cwe *vuln_cwe)
OSCAP_API bool cvrf_doc_tracking_set_cur_release_date(struct cvrf_doc_tracking *tracking, const char *cur_release_date)
OSCAP_API 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.
OSCAP_API void cvrf_document_free(struct cvrf_document *doc)
Deallocates memory for the CVRF Document structure and all its child DocumentTracking,...
Definition: cvrf_priv.c:1206
OSCAP_API struct cvrf_doc_tracking * cvrf_document_get_tracking(const struct cvrf_document *doc)
OSCAP_API struct cvrf_product_name * cvrf_branch_get_product_name(const struct cvrf_branch *branch)
OSCAP_API struct cvrf_remediation_iterator * cvrf_vulnerability_get_remediations(const struct cvrf_vulnerability *vuln)
OSCAP_API struct cvrf_product_name * cvrf_relationship_get_product_name(const struct cvrf_relationship *relation)
OSCAP_API struct cvrf_product_status * cvrf_product_status_new(void)
New Status member of a ProductStatuses container within a Vulnerability element.
Definition: cvrf_priv.c:287
OSCAP_API bool cvrf_product_tree_add_product_name(struct cvrf_product_tree *tree, struct cvrf_product_name *full_name)
OSCAP_API const char * cvrf_session_get_os_name(const struct cvrf_session *session)
OSCAP_API void cvrf_note_free(struct cvrf_note *note)
Deallocates memory for a Note element of the Notes container.
Definition: cvrf_priv.c:925
OSCAP_API const char * cvrf_doc_tracking_get_version(const struct cvrf_doc_tracking *tracking)
OSCAP_API const char * cvrf_vulnerability_get_system_id(const struct cvrf_vulnerability *vuln)
OSCAP_API bool cvrf_reference_set_description(struct cvrf_reference *reference, const char *description)
OSCAP_API struct cvrf_relationship_iterator * cvrf_product_tree_get_relationships(const struct cvrf_product_tree *tree)
OSCAP_API bool cvrf_doc_publisher_set_issuing_authority(struct cvrf_doc_publisher *publisher, const char *issuing_authority)
OSCAP_API bool cvrf_vulnerability_cwe_set_id(struct cvrf_vulnerability_cwe *vuln_cwe, const char *id)
OSCAP_API bool cvrf_session_set_index(struct cvrf_session *session, struct cvrf_index *index)
Add the CVRF index to be evaluated to the Session structure.
OSCAP_API bool cvrf_model_set_doc_type(struct cvrf_model *model, const char *doc_type)
OSCAP_API bool cvrf_rpm_attributes_set_full_package_name(struct cvrf_rpm_attributes *attributes, const char *full_package)
OSCAP_API struct cvrf_product_name_iterator * cvrf_product_tree_get_product_names(const struct cvrf_product_tree *tree)
OSCAP_API bool cvrf_document_set_publisher(struct cvrf_document *doc, struct cvrf_doc_publisher *publisher)
OSCAP_API bool cvrf_product_tree_add_relationship(struct cvrf_product_tree *tree, struct cvrf_relationship *relation)
OSCAP_API const char * cvrf_relationship_get_relates_to_ref(const struct cvrf_relationship *relation)
OSCAP_API bool cvrf_vulnerability_add_cwe(struct cvrf_vulnerability *vuln, struct cvrf_vulnerability_cwe *vulnerability_cwe)
OSCAP_API const char * cvrf_revision_get_description(const struct cvrf_revision *revision)
OSCAP_API struct cvrf_document * cvrf_model_get_document(const struct cvrf_model *model)
OSCAP_API bool cvrf_note_set_ordinal(struct cvrf_note *note, int ordinal)
OSCAP_API bool cvrf_doc_tracking_set_generator_date(struct cvrf_doc_tracking *tracking, const char *generator_date)
OSCAP_API struct cvrf_vulnerability_iterator * cvrf_model_get_vulnerabilities(const struct cvrf_model *model)
OSCAP_API void cvrf_doc_publisher_free(struct cvrf_doc_publisher *publisher)
Deallocates memory for a DocumentPublisher element.
Definition: cvrf_priv.c:1094
OSCAP_API struct cvrf_vulnerability_cwe_iterator * cvrf_vulnerability_get_cwes(const struct cvrf_vulnerability *vuln)
OSCAP_API void cvrf_product_tree_free(struct cvrf_product_tree *tree)
Deallocates memory for a ProductTree element and all its child Branches, Relationships,...
Definition: cvrf_priv.c:782
OSCAP_API bool cvrf_remediation_set_entitlement(struct cvrf_remediation *remed, const char *entitlement)
OSCAP_API bool cvrf_doc_tracking_set_init_release_date(struct cvrf_doc_tracking *tracking, const char *init_release_date)
OSCAP_API struct cvrf_rpm_attributes * cvrf_rpm_attributes_new(void)
Create a new CVRF RPM attributes structure.
Definition: cvrf_eval.c:144
OSCAP_API struct cvrf_involvement * cvrf_involvement_clone(const struct cvrf_involvement *involve)
Definition: cvrf_priv.c:350
OSCAP_API bool cvrf_vulnerability_add_score_set(struct cvrf_vulnerability *vuln, struct cvrf_score_set *score_set)
OSCAP_API void cvrf_branch_free(struct cvrf_branch *branch)
Deallocates memory for a Branch element.
Definition: cvrf_priv.c:714
OSCAP_API bool cvrf_index_add_model(struct cvrf_index *index, struct cvrf_model *model)
OSCAP_API struct cvrf_threat * cvrf_threat_new(void)
New CVRF Threat element.
Definition: cvrf_priv.c:236
OSCAP_API struct cvrf_index * cvrf_index_new(void)
New index structure holding all CVRF models.
Definition: cvrf_priv.c:1322
OSCAP_API 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 ...
Definition: cvrf.c:46
OSCAP_API const char * cvrf_remediation_get_description(const struct cvrf_remediation *remed)
OSCAP_API struct cvrf_score_set * cvrf_score_set_clone(const struct cvrf_score_set *score_set)
Definition: cvrf_priv.c:204
OSCAP_API const char * cvrf_vulnerability_cwe_get_id(const struct cvrf_vulnerability_cwe *vuln_cwe)
OSCAP_API bool cvrf_vulnerability_set_cve_id(struct cvrf_vulnerability *vuln, const char *cve_id)
OSCAP_API 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 ...
Definition: cvrf_priv.c:1295
OSCAP_API void cvrf_index_free(struct cvrf_index *index)
Deallocates memory for the CVRF Index structure and all the Models it contains.
Definition: cvrf_priv.c:1333
OSCAP_API bool cvrf_vulnerability_set_release_date(struct cvrf_vulnerability *vuln, const char *release_date)
OSCAP_API bool cvrf_vulnerability_add_cvrf_product_status(struct cvrf_vulnerability *vuln, struct cvrf_product_status *stat)
OSCAP_API bool cvrf_doc_tracking_set_generator_engine(struct cvrf_doc_tracking *tracking, const char *generator_engine)
OSCAP_API 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.
OSCAP_API const char * cvrf_revision_get_number(const struct cvrf_revision *revision)
OSCAP_API bool cvrf_note_set_contents(struct cvrf_note *note, const char *contents)
OSCAP_API struct cvrf_branch * cvrf_branch_clone(const struct cvrf_branch *branch)
Definition: cvrf_priv.c:724
OSCAP_API bool cvrf_threat_set_date(struct cvrf_threat *threat, const char *date)
OSCAP_API const char * cvrf_vulnerability_get_release_date(const struct cvrf_vulnerability *vuln)
OSCAP_API bool cvrf_doc_tracking_set_version(struct cvrf_doc_tracking *tracking, const char *version)
OSCAP_API const char * cvrf_doc_tracking_get_cur_release_date(const struct cvrf_doc_tracking *tracking)
OSCAP_API const char * cvrf_doc_tracking_get_generator_date(const struct cvrf_doc_tracking *tracking)
OSCAP_API struct cvrf_vulnerability * cvrf_vulnerability_new(void)
New CVRF Vulnerability.
Definition: cvrf_priv.c:451
OSCAP_API const char * cvrf_remediation_get_url(const struct cvrf_remediation *remed)
OSCAP_API void cvrf_group_free(struct cvrf_group *group)
Deallocates memory for a Group element.
Definition: cvrf_priv.c:615
OSCAP_API struct cvrf_document * cvrf_document_new(void)
New CVRF Document structure.
Definition: cvrf_priv.c:1190
OSCAP_API const char * cvrf_index_get_source_url(const struct cvrf_index *index)
OSCAP_API struct cvrf_remediation * cvrf_remediation_new(void)
New CVRF Remediation.
Definition: cvrf_priv.c:89
OSCAP_API bool cvrf_remediation_set_url(struct cvrf_remediation *remed, const char *url)
OSCAP_API void cvrf_threat_free(struct cvrf_threat *threat)
Deallocates memory for a Threat element of the Threats container.
Definition: cvrf_priv.c:250
OSCAP_API const char * cvrf_doc_publisher_get_issuing_authority(const struct cvrf_doc_publisher *publisher)
OSCAP_API bool cvrf_vulnerability_set_title(struct cvrf_vulnerability *vuln, const char *vulnerability_title)
OSCAP_API bool cvrf_doc_tracking_add_revision(struct cvrf_doc_tracking *tracking, struct cvrf_revision *revision)
OSCAP_API struct cvrf_doc_tracking * cvrf_doc_tracking_new(void)
New CVRF DocumentTracking structure.
Definition: cvrf_priv.c:1018
OSCAP_API void cvrf_vulnerability_cwe_free(struct cvrf_vulnerability_cwe *cwe)
Deallocates memory for a CWE element.
Definition: cvrf_priv.c:379
OSCAP_API bool cvrf_vulnerability_set_discovery_date(struct cvrf_vulnerability *vuln, const char *discovery_date)
OSCAP_API bool cvrf_threat_set_description(struct cvrf_threat *threat, const char *description)
OSCAP_API bool cvrf_vulnerability_set_system_name(struct cvrf_vulnerability *vuln, const char *sys_name)
OSCAP_API int cvrf_vulnerability_filter_by_product(struct cvrf_vulnerability *vuln, const char *prod)
Definition: cvrf_priv.c:517
OSCAP_API void cvrf_reference_free(struct cvrf_reference *reference)
Deallocates memory for a Reference element of the References container.
Definition: cvrf_priv.c:1142
OSCAP_API struct cvrf_model * cvrf_model_clone(const struct cvrf_model *model)
Definition: cvrf_priv.c:1285
OSCAP_API struct cvrf_score_set * cvrf_score_set_new(void)
New ScoreSet member of a CVSSScoreSets container within a Vulnerability element.
Definition: cvrf_priv.c:183
OSCAP_API struct cvrf_relationship * cvrf_relationship_new(void)
New CVRF Relationship element within ProductTree.
Definition: cvrf_priv.c:650
OSCAP_API bool cvrf_doc_publisher_set_contact_details(struct cvrf_doc_publisher *publisher, const char *contact_details)
OSCAP_API bool cvrf_doc_tracking_set_tracking_id(struct cvrf_doc_tracking *tracking, const char *id)
OSCAP_API bool cvrf_document_set_tracking(struct cvrf_document *doc, struct cvrf_doc_tracking *track)
OSCAP_API bool cvrf_document_set_aggregate_severity(struct cvrf_document *doc, const char *severity)
OSCAP_API struct cvrf_branch * cvrf_branch_new(void)
New CVRF branch of ProductTree or sub-branch.
Definition: cvrf_priv.c:702
OSCAP_API void cvrf_model_free(struct cvrf_model *cvrf)
Deallocates memory for the CVRF Model structure and all its child elements.
Definition: cvrf_priv.c:1273
OSCAP_API void cvrf_involvement_free(struct cvrf_involvement *involve)
Deallocates memory for an Involvement element.
Definition: cvrf_priv.c:342
OSCAP_API bool cvrf_involvement_set_description(struct cvrf_involvement *involve, const char *description)
OSCAP_API bool cvrf_rpm_attributes_set_evr_format(struct cvrf_rpm_attributes *attributes, const char *evr_format)
OSCAP_API bool cvrf_revision_set_description(struct cvrf_revision *revision, const char *description)
OSCAP_API bool cvrf_reference_set_url(struct cvrf_reference *reference, const char *url)
OSCAP_API bool cvrf_doc_publisher_set_vendor_id(struct cvrf_doc_publisher *publisher, const char *vendor_id)
OSCAP_API const char * cvrf_doc_publisher_get_contact_details(const struct cvrf_doc_publisher *publisher)
OSCAP_API struct cvrf_vulnerability * cvrf_vulnerability_clone(const struct cvrf_vulnerability *vuln)
Definition: cvrf_priv.c:497
OSCAP_API bool cvrf_group_set_description(struct cvrf_group *group, const char *description)
OSCAP_API const char * cvrf_reference_get_description(const struct cvrf_reference *reference)
OSCAP_API struct cvrf_threat * cvrf_threat_clone(const struct cvrf_threat *threat)
Definition: cvrf_priv.c:261
OSCAP_API const char * cvrf_note_get_contents(const struct cvrf_note *note)
OSCAP_API const char * cvrf_rpm_attributes_get_full_package_name(const struct cvrf_rpm_attributes *attributes)
OSCAP_API struct cvrf_score_set_iterator * cvrf_vulnerability_get_score_sets(const struct cvrf_vulnerability *vuln)
OSCAP_API int cvrf_vulnerability_get_ordinal(const struct cvrf_vulnerability *vuln)
OSCAP_API struct cvrf_revision * cvrf_revision_clone(const struct cvrf_revision *revision)
Definition: cvrf_priv.c:979
OSCAP_API void cvrf_vulnerability_free(struct cvrf_vulnerability *vulnerability)
Deallocates memory for a Vulnerability element.
Definition: cvrf_priv.c:475
OSCAP_API const char * cvrf_vulnerability_get_cve_id(const struct cvrf_vulnerability *vuln)
OSCAP_API bool cvrf_relationship_set_relates_to_ref(struct cvrf_relationship *relation, const char *relates_to_ref)
OSCAP_API bool cvrf_vulnerability_add_involvement(struct cvrf_vulnerability *vuln, struct cvrf_involvement *involvement)
OSCAP_API 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 Pr...
Definition: cvrf_priv.c:802
OSCAP_API struct cvrf_note * cvrf_note_new(void)
New CVRF Note element within Notes or DocumentNotes container.
Definition: cvrf_priv.c:912
OSCAP_API struct cvrf_revision * cvrf_revision_new(void)
New CVRF Revision structure.
Definition: cvrf_priv.c:958
OSCAP_API struct cvss_impact * cvrf_score_set_get_impact(const struct cvrf_score_set *score_set)
OSCAP_API bool cvrf_branch_set_product_name(struct cvrf_branch *branch, struct cvrf_product_name *name)
OSCAP_API bool cvrf_branch_set_branch_name(struct cvrf_branch *branch, const char *branch_name)
OSCAP_API struct cvrf_reference * cvrf_reference_clone(const struct cvrf_reference *ref)
Definition: cvrf_priv.c:1151
OSCAP_API const char * cvrf_relationship_get_product_reference(const struct cvrf_relationship *relation)
OSCAP_API const char * cvrf_reference_get_url(const struct cvrf_reference *reference)
OSCAP_API bool cvrf_note_set_audience(struct cvrf_note *note, const char *audience)
OSCAP_API bool cvrf_vulnerability_cwe_set_cwe(struct cvrf_vulnerability_cwe *vuln_cwe, const char *cwe)
OSCAP_API const char * cvrf_score_set_get_vector(const struct cvrf_score_set *score_set)
OSCAP_API bool cvrf_remediation_set_description(struct cvrf_remediation *remed, const char *description)
OSCAP_API const char * cvrf_document_get_doc_distribution(const struct cvrf_document *doc)
OSCAP_API bool cvrf_relationship_set_product_reference(struct cvrf_relationship *relation, const char *product_reference)
OSCAP_API struct cvrf_session * cvrf_session_new_from_source_index(struct oscap_source *source)
Definition: cvrf_eval.c:106
OSCAP_API const char * cvrf_note_get_title(const struct cvrf_note *note)
OSCAP_API bool cvrf_group_set_group_id(struct cvrf_group *group, const char *group_id)
OSCAP_API const char * cvrf_model_get_doc_title(const struct cvrf_model *model)
OSCAP_API const char * cvrf_note_get_audience(const struct cvrf_note *note)
OSCAP_API const char * cvrf_doc_tracking_get_generator_engine(const struct cvrf_doc_tracking *tracking)
OSCAP_API struct cvrf_index * cvrf_session_get_index(const struct cvrf_session *session)
OSCAP_API const char * cvrf_involvement_get_description(const struct cvrf_involvement *involve)
OSCAP_API const char * cvrf_document_get_namespace(const struct cvrf_document *doc)
OSCAP_API const char * cvrf_threat_get_description(const struct cvrf_threat *threat)
OSCAP_API const char * cvrf_document_get_aggregate_severity(const struct cvrf_document *doc)
OSCAP_API bool cvrf_product_tree_add_group(struct cvrf_product_tree *tree, struct cvrf_group *group)
OSCAP_API struct cvrf_product_tree * cvrf_product_tree_new(void)
New ProductTree structure.
Definition: cvrf_priv.c:770
OSCAP_API bool cvrf_index_set_index_file(struct cvrf_index *index, const char *index_file)
OSCAP_API const char * cvrf_doc_publisher_get_vendor_id(const struct cvrf_doc_publisher *publisher)
OSCAP_API struct cvrf_relationship * cvrf_relationship_clone(const struct cvrf_relationship *relation)
Definition: cvrf_priv.c:673
OSCAP_API struct cvrf_doc_publisher * cvrf_document_get_publisher(const struct cvrf_document *doc)
OSCAP_API bool cvrf_product_name_set_product_id(struct cvrf_product_name *full_name, const char *product_id)
OSCAP_API void cvrf_acknowledgment_free(struct cvrf_acknowledgment *ack)
Deallocates memory for an Acknowledgment element of the Acknowledgments container.
Definition: cvrf_priv.c:873
OSCAP_API const char * cvrf_model_get_doc_type(const struct cvrf_model *model)
OSCAP_API struct cvrf_document * cvrf_document_clone(const struct cvrf_document *doc)
Definition: cvrf_priv.c:1221
OSCAP_API const char * cvrf_vulnerability_get_title(const struct cvrf_vulnerability *vuln)
OSCAP_API bool cvrf_vulnerability_add_remediation(struct cvrf_vulnerability *vuln, struct cvrf_remediation *remed)
OSCAP_API 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.
OSCAP_API int cvrf_note_get_ordinal(const struct cvrf_note *note)
OSCAP_API bool cvrf_document_set_doc_distribution(struct cvrf_document *doc, const char *distribution)
OSCAP_API bool cvrf_vulnerability_set_system_id(struct cvrf_vulnerability *vuln, const char *id)
OSCAP_API struct cvrf_vulnerability_cwe * cvrf_vulnerability_cwe_new(void)
New CVRF CWE structure.
Definition: cvrf_priv.c:369
OSCAP_API void cvrf_session_free(struct cvrf_session *session)
Deallocates memory for a CVRF Session structure.
Definition: cvrf_eval.c:120
OSCAP_API bool cvrf_model_add_vulnerability(struct cvrf_model *model, struct cvrf_vulnerability *vuln)
OSCAP_API struct cvrf_remediation * cvrf_remediation_clone(const struct cvrf_remediation *remed)
Definition: cvrf_priv.c:117
OSCAP_API void cvrf_remediation_free(struct cvrf_remediation *remed)
Deallocates memory for a Remediation element of the Remediations container.
Definition: cvrf_priv.c:104
OSCAP_API const char * cvrf_index_get_index_file(const struct cvrf_index *index)
OSCAP_API struct cvrf_model_iterator * cvrf_index_get_models(const struct cvrf_index *index)
OSCAP_API struct cvrf_product_status * cvrf_product_status_clone(const struct cvrf_product_status *stat)
Definition: cvrf_priv.c:305
OSCAP_API struct cvrf_threat_iterator * cvrf_vulnerability_get_threats(const struct cvrf_vulnerability *vuln)
OSCAP_API const char * cvrf_revision_get_date(const struct cvrf_revision *revision)
OSCAP_API struct cvrf_group * cvrf_group_clone(const struct cvrf_group *group)
Definition: cvrf_priv.c:625
OSCAP_API bool cvrf_index_set_source_url(struct cvrf_index *index, const char *url)
OSCAP_API struct cvrf_index * cvrf_index_clone(const struct cvrf_index *index)
Definition: cvrf_priv.c:1343
OSCAP_API const char * cvrf_remediation_get_date(const struct cvrf_remediation *remed)
OSCAP_API const char * cvrf_doc_tracking_get_tracking_id(const struct cvrf_doc_tracking *tracking)
OSCAP_API struct cvrf_product_name * cvrf_product_name_new(void)
New FullProductName of Branch or ProductTree.
Definition: cvrf_priv.c:563
cvss_category
CVSS score category.
Definition: cvss_score.h:48
General OpenScap functions and types.
Definition: cvrf_priv.c:841
Definition: cvrf_priv.c:685
Definition: cvrf_priv.c:1068
Definition: cvrf_priv.c:990
Definition: cvrf_priv.c:1162
Definition: cvrf_priv.c:592
Definition: cvrf_priv.c:1312
Definition: cvrf_priv.c:316
Definition: cvrf_priv.c:1238
Definition: cvrf_priv.c:896
Definition: cvrf_priv.c:556
Definition: cvrf_priv.c:275
Definition: cvrf_priv.c:753
Definition: cvrf_priv.c:1118
Definition: cvrf_priv.c:636
Definition: cvrf_priv.c:949
Definition: cvrf_eval.c:134
Definition: cvrf_priv.c:133
Definition: cvrf_eval.c:67
Definition: cvrf_priv.c:216
Definition: cvrf_priv.c:362
Definition: cvrf_priv.c:399
CVSS impact.
Definition: cvss_priv.h:80
Definition: oscap_source.c:66