Open SCAP Library

cvrf_priv.h
1 /*
2 * Copyright 2017 Red Hat Inc., Durham, North Carolina.
3 * All Rights Reserved.
4 *
5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Lesser General Public
7 * License as published by the Free Software Foundation; either
8 * version 2.1 of the License, or (at your option) any later version.
9 *
10 * This library is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Lesser General Public License for more details.
14 *
15 * You should have received a copy of the GNU Lesser General Public
16 * License along with this library; if not, write to the Free Software
17 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 *
19 * Authors:
20 * Katarina Jankov <kj226@cornell.edu>
21 *
22 */
23 #ifndef CVRF_PRIV_H_
24 #define CVRF_PRIV_H_
25
26 #include <libxml/xmlreader.h>
27 #include <libxml/tree.h>
28 #include <libxml/xpath.h>
29 #include <libxml/parser.h>
30 #include <libxml/xpathInternals.h>
31
32 #include "../common/list.h"
33 #include "../common/elements.h"
34 #include "cvrf.h"
35
36 OSCAP_HIDDEN_START;
37
38 // namespaces
39 #define CVRF_NS BAD_CAST "http://www.icasi.org/CVRF/schema/cvrf/1.1"
40 #define PROD_NS BAD_CAST "http://www.icasi.org/CVRF/schema/prod/1.1"
41 #define VULN_NS BAD_CAST "http://www.icasi.org/CVRF/schema/vuln/1.1"
42
43 /*-----------------------------------------------------------------------------------------*\
44 | CVRF Enum Definitions |
45 \*-----------------------------------------------------------------------------------------*/
46
47 /************************************************************************************************
48 * Type attribute of a DocumentPublisher element and Party attribute of an Involvement element
49 * (these must match in the same document)
50 */
51 typedef enum {
52 CVRF_DOC_PUBLISHER_UNKNOWN = 0,
53 CVRF_DOC_PUBLISHER_VENDOR,
54 CVRF_DOC_PUBLISHER_DISCOVERER,
55 CVRF_DOC_PUBLISHER_COORDINATOR,
56 CVRF_DOC_PUBLISHER_USER,
57 CVRF_DOC_PUBLISHER_OTHER,
58 } cvrf_doc_publisher_type_t;
59
66 cvrf_doc_publisher_type_t cvrf_doc_publisher_get_type(struct cvrf_doc_publisher *publisher);
67
74 cvrf_doc_publisher_type_t cvrf_involvement_get_party(struct cvrf_involvement *involve);
75
81 cvrf_doc_publisher_type_t cvrf_doc_publisher_type_parse(xmlTextReaderPtr reader);
82
89 cvrf_doc_publisher_type_t cvrf_involvement_party_parse(xmlTextReaderPtr reader);
90
96 const char *cvrf_doc_publisher_type_get_text(cvrf_doc_publisher_type_t type);
97
98 /************************************************************************************************
99 * Type represented as a child node of the DocumentTracking element
100 * Refers to stage of completeness of the document and likelihood of it changing
101 */
102 typedef enum {
103 CVRF_DOC_STATUS_UNKNOWN = 0,
104 CVRF_DOC_STATUS_DRAFT,
105 CVRF_DOC_STATUS_INTERIM,
106 CVRF_DOC_STATUS_FINAL,
107 } cvrf_doc_status_type_t;
108
115 cvrf_doc_status_type_t cvrf_doc_tracking_get_status(struct cvrf_doc_tracking *tracking);
116
122 cvrf_doc_status_type_t cvrf_doc_status_type_parse(xmlTextReaderPtr reader);
123
129 const char *cvrf_doc_status_type_get_text(cvrf_doc_status_type_t type);
130
131 /************************************************************************************************
132 * Type attribute of the Note element
133 * Category of information provided by a Note element
134 */
135 typedef enum {
136 CVRF_NOTE_UNKNOWN = 0,
137 CVRF_NOTE_GENERAL,
138 CVRF_NOTE_DETAILS,
139 CVRF_NOTE_DESCRIPTION,
140 CVRF_NOTE_SUMMARY,
141 CVRF_NOTE_FAQ,
142 CVRF_NOTE_LEGAL_DISCLAIMER,
143 CVRF_NOTE_OTHER,
144 } cvrf_note_type_t;
145
152 cvrf_note_type_t cvrf_note_get_note_type(const struct cvrf_note *note);
153
159 cvrf_note_type_t cvrf_note_type_parse(xmlTextReaderPtr reader);
160
166 const char *cvrf_note_type_get_text(cvrf_note_type_t type);
167
168 /************************************************************************************************
169 * Type attribute of the Reference element
170 * Indicates whether the reference refers to a document or to an external source
171 */
172 typedef enum {
173 CVRF_REFERENCE_UNKNOWN = 0,
174 CVRF_REFERENCE_EXTERNAL,
175 CVRF_REFERENCE_SELF,
176 } cvrf_reference_type_t;
177
184 cvrf_reference_type_t cvrf_reference_get_reference_type(struct cvrf_reference *reference);
185
191 cvrf_reference_type_t cvrf_reference_type_parse(xmlTextReaderPtr reader);
192
198 const char *cvrf_reference_type_get_text(cvrf_reference_type_t type);
199
200 /************************************************************************************************
201 * Type attribute of the Branch element
202 * Category and context for the information provided in the Name attribute
203 */
204 typedef enum {
205 CVRF_BRANCH_UNKNOWN = 0,
206 CVRF_BRANCH_VENDOR,
207 CVRF_BRANCH_PRODUCT_FAMILY,
208 CVRF_BRANCH_PRODUCT_NAME,
209 CVRF_BRANCH_PRODUCT_VERSION,
210 CVRF_BRANCH_PATCH_LEVEL,
211 CVRF_BRANCH_SERVICE_PACK,
212 CVRF_BRANCH_ARCHITECTURE,
213 CVRF_BRANCH_LANGUAGE,
214 CVRF_BRANCH_LEGACY,
215 CVRF_BRANCH_SPECIFICATION,
216 } cvrf_branch_type_t;
217
224 cvrf_branch_type_t cvrf_branch_get_branch_type(struct cvrf_branch *branch);
225
231 cvrf_branch_type_t cvrf_branch_type_parse(xmlTextReaderPtr reader);
232
238 const char *cvrf_branch_type_get_text(cvrf_branch_type_t type);
239
240 /************************************************************************************************
241 * RelationType attribute of the Relationship element
242 * Defines how the products named in the ProductReference and RelatesToProductReference attributes
243 * are related
244 * EX:
245 * <Relationship ProductReference="A" RelationType="?" RelatesToProductReference="B">
246 */
247 typedef enum {
248 CVRF_RELATIONSHIP_UNKNOWN = 0,
249 CVRF_RELATIONSHIP_DEFAULT_COMPONENT,
250 CVRF_RELATIONSHIP_OPTIONAL_COMPONENT,
251 CVRF_RELATIONSHIP_EXTERNAL_COMPONENT,
252 CVRF_RELATIONSHIP_INSTALLED_ON,
253 CVRF_RELATIONSHIP_INSTALLED_WITH,
254 } cvrf_relationship_type_t;
255
262 cvrf_relationship_type_t cvrf_relationship_get_relation_type(struct cvrf_relationship *relation);
263
269 cvrf_relationship_type_t cvrf_relationship_type_parse(xmlTextReaderPtr reader);
270
276 const char *cvrf_relationship_type_get_text(cvrf_relationship_type_t type);
277
278 /************************************************************************************************
279 * Status attribute of the Involvement element
280 * Indicates level of involvement of the Party referenced in the Involvement's Party attribute
281 */
282 typedef enum {
283 CVRF_INVOLVEMENT_UNKNOWN = 0,
284 CVRF_INVOLVEMENT_OPEN,
285 CVRF_INVOLVEMENT_DISPUTED,
286 CVRF_INVOLVEMENT_IN_PROGRESS,
287 CVRF_INVOLVEMENT_COMPLETED,
288 CVRF_INVOLVEMENT_CONTACT_ATTEMPTED,
289 CVRF_INVOLVEMENT_NOT_CONTACTED,
290 } cvrf_involvement_status_type_t;
291
298 cvrf_involvement_status_type_t cvrf_involvement_get_status_type(struct cvrf_involvement *involve);
299
305 cvrf_involvement_status_type_t cvrf_involvement_status_type_parse(xmlTextReaderPtr reader);
306
312 const char *cvrf_involvement_status_type_get_text(cvrf_involvement_status_type_t type);
313
314
315 /************************************************************************************************
316 * Type attribute of the Status element
317 * Indicates the status of products with regards to a Vulnerability: whether this Vulnerability
318 * is known to affect the product, whether a fix exists for the version in the release, etc.
319 */
320 typedef enum {
321 CVRF_PRODUCT_STATUS_UNKNOWN = 0,
322 CVRF_PRODUCT_STATUS_FIRST_AFFECTED,
323 CVRF_PRODUCT_STATUS_KNOWN_AFFECTED,
324 CVRF_PRODUCT_STATUS_KNOWN_NOT_AFFECTED,
325 CVRF_PRODUCT_STATUS_FIRST_FIXED,
326 CVRF_PRODUCT_STATUS_FIXED,
327 CVRF_PRODUCT_STATUS_RECOMMENDED,
328 CVRF_PRODUCT_STATUS_LAST_AFFECTED,
329 } cvrf_product_status_type_t;
330
331
338 cvrf_product_status_type_t cvrf_product_status_get_type(struct cvrf_product_status *stat);
339
345 cvrf_product_status_type_t cvrf_product_status_type_parse(xmlTextReaderPtr reader);
346
352 const char *cvrf_product_status_type_get_text(cvrf_product_status_type_t product_status_type);
353
354 /************************************************************************************************
355 * Type attribute of the Threat element
356 * Category of information the Threat provides about the Vulnerability; gives context about
357 * impact and damage done by the Vulnerability
358 */
359 typedef enum {
360 CVRF_THREAT_UNKNOWN = 0,
361 CVRF_THREAT_IMPACT,
362 CVRF_THREAT_EXPLOIT_STATUS,
363 CVRF_THREAT_TARGET_SET,
364 } cvrf_threat_type_t;
365
372 cvrf_threat_type_t cvrf_threat_get_threat_type(struct cvrf_threat *threat);
373
379 cvrf_threat_type_t cvrf_threat_type_parse(xmlTextReaderPtr reader);
380
386 const char *cvrf_threat_type_get_text(cvrf_threat_type_t threat_type);
387
388 /************************************************************************************************
389 * Type attribute of the Remediation element
390 * Category of and status about ways to avoid, mitigate, or resolve a Vulnerability
391 */
392 typedef enum {
393 CVRF_REMEDIATION_UNKNOWN = 0,
394 CVRF_REMEDIATION_WORKAROUND,
395 CVRF_REMEDIATION_MITIGATION,
396 CVRF_REMEDIATION_VENDOR_FIX,
397 CVRF_REMEDIATION_NONE_AVAILABLE,
398 CVRF_REMEDIATION_WILL_NOT_FIX,
399 } cvrf_remediation_type_t;
400
407 cvrf_remediation_type_t cvrf_remediation_get_type(struct cvrf_remediation *remed);
408
414 cvrf_remediation_type_t cvrf_remediation_type_parse(xmlTextReaderPtr reader);
415
421 const char *cvrf_remediation_type_get_text(cvrf_remediation_type_t remediation_type);
422
423
424 /************************************************************************************************
425 * @struct cvrf_item_spec
426 * Maps a cvrf_item_type_t enum to its text representation within a CVRF XML file,
427 * as well as the parent container (if one exists)
428 */
429 struct cvrf_item_spec;
430
431 typedef enum {
432 CVRF_ITEM_UNKNOWN = 0,
433 CVRF_DOCUMENT_PUBLISHER,
434 CVRF_DOCUMENT_TRACKING,
435 CVRF_REVISION,
436 CVRF_DOCUMENT_NOTE,
437 CVRF_DOCUMENT_REFERENCE,
438 CVRF_ACKNOWLEDGMENT,
439 CVRF_PRODUCT_TREE,
440 CVRF_BRANCH,
441 CVRF_GROUP,
442 CVRF_RELATIONSHIP,
443 CVRF_PRODUCT_NAME,
444 CVRF_VULNERABILITY,
445 CVRF_VULNERABILITY_CWE,
446 CVRF_NOTE,
447 CVRF_INVOLVEMENT,
448 CVRF_SCORE_SET,
449 CVRF_PRODUCT_STATUS,
450 CVRF_THREAT,
451 CVRF_REMEDIATION,
452 CVRF_REFERENCE,
453 } cvrf_item_type_t;
454
460 const char *cvrf_item_type_get_text(cvrf_item_type_t type);
461
467 cvrf_item_type_t cvrf_item_type_from_text(const char *item);
468
473 bool cvrf_is_valid_item_type(const char *item);
474
480 const char *cvrf_item_type_get_container(cvrf_item_type_t type);
481
488 bool cvrf_item_type_has_container(cvrf_item_type_t type);
489
490
491 /*-----------------------------------------------------------------------------------------*\
492 | CVRF Parsing & Serialization Functions |
493 \*-----------------------------------------------------------------------------------------*/
494
500 struct cvrf_remediation *cvrf_remediation_parse(xmlTextReaderPtr reader);
501
507 struct cvrf_score_set *cvrf_score_set_parse(xmlTextReaderPtr reader);
508
514 struct cvrf_threat *cvrf_threat_parse(xmlTextReaderPtr reader);
515
521 struct cvrf_product_status *cvrf_product_status_parse(xmlTextReaderPtr reader);
522
528 struct cvrf_involvement *cvrf_involvement_parse(xmlTextReaderPtr reader);
529
535 struct cvrf_vulnerability_cwe *cvrf_vulnerability_cwe_parse(xmlTextReaderPtr reader);
536
542 struct cvrf_vulnerability *cvrf_vulnerability_parse(xmlTextReaderPtr reader);
543
549 struct cvrf_product_name *cvrf_product_name_parse(xmlTextReaderPtr reader);
550
556 struct cvrf_group *cvrf_group_parse(xmlTextReaderPtr reader);
557
563 struct cvrf_relationship *cvrf_relationship_parse(xmlTextReaderPtr reader);
564
570 struct cvrf_branch *cvrf_branch_parse(xmlTextReaderPtr reader);
571
577 struct cvrf_product_tree *cvrf_product_tree_parse(xmlTextReaderPtr reader);
578
584 struct cvrf_acknowledgment *cvrf_acknowledgment_parse(xmlTextReaderPtr reader);
585
591 struct cvrf_reference *cvrf_reference_parse(xmlTextReaderPtr reader);
592
598 struct cvrf_note *cvrf_note_parse(xmlTextReaderPtr reader);
599
605 struct cvrf_revision *cvrf_revision_parse(xmlTextReaderPtr reader);
606
612 struct cvrf_doc_tracking *cvrf_doc_tracking_parse(xmlTextReaderPtr reader);
613
619 struct cvrf_doc_publisher *cvrf_doc_publisher_parse(xmlTextReaderPtr reader);
620
627 struct cvrf_document *cvrf_document_parse(xmlTextReaderPtr reader);
628
634 struct cvrf_model *cvrf_model_parse(xmlTextReaderPtr reader);
635
641 struct cvrf_index *cvrf_index_parse_xml(struct oscap_source *index_source);
642
643
651 void cvrf_element_add_container(struct oscap_list *list, cvrf_item_type_t cvrf_type, xmlNode *parent);
652
660 void cvrf_element_add_stringlist(struct oscap_stringlist *list, const char *tag_name, xmlNode *parent);
661
669 void cvrf_element_add_attribute(const char *attr_name, const char *attr_value, xmlNode *element);
670
678 void cvrf_element_add_child(const char *elm_name, const char *elm_value, xmlNode *parent);
679
686 xmlNode *cvrf_element_to_dom(const char *elm_name, const char *elm_value);
687
694 xmlNode *cvrf_remediation_to_dom(const struct cvrf_remediation *remed);
695
702 xmlNode *cvrf_threat_to_dom(const struct cvrf_threat *threat);
703
710 xmlNode *cvrf_score_set_to_dom(const struct cvrf_score_set *score_set);
711
718 xmlNode *cvrf_product_status_to_dom(const struct cvrf_product_status *stat);
719
726 xmlNode *cvrf_involvement_to_dom(const struct cvrf_involvement *involve);
727
734 xmlNode *cvrf_vulnerability_cwe_to_dom(const struct cvrf_vulnerability_cwe *vuln_cwe);
735
742 xmlNode *cvrf_vulnerability_to_dom(const struct cvrf_vulnerability *vuln);
743
750 xmlNode *cvrf_product_name_to_dom(struct cvrf_product_name *full_name);
751
758 xmlNode *cvrf_group_to_dom(const struct cvrf_group *group);
759
766 xmlNode *cvrf_relationship_to_dom(const struct cvrf_relationship *relation);
767
774 xmlNode *cvrf_branch_to_dom(struct cvrf_branch *branch);
775
782 xmlNode *cvrf_product_tree_to_dom(struct cvrf_product_tree *tree);
783
790 xmlNode *cvrf_acknowledgment_to_dom(struct cvrf_acknowledgment *ack);
791
798 xmlNode *cvrf_reference_to_dom(struct cvrf_reference *ref);
799
807 xmlNode *cvrf_note_to_dom(struct cvrf_note *note);
808
815 xmlNode *cvrf_revision_to_dom(struct cvrf_revision *revision);
816
823 xmlNode *cvrf_doc_tracking_to_dom(struct cvrf_doc_tracking *tracking);
824
831 xmlNode *cvrf_doc_publisher_to_dom(struct cvrf_doc_publisher *publisher);
832
840 xmlNode *cvrf_document_to_dom(struct cvrf_document *document);
841
850 xmlNode *cvrf_model_to_dom(struct cvrf_model *model, xmlDocPtr doc, xmlNode *parent, void *user_args);
851
859 xmlNode *cvrf_index_to_dom(struct cvrf_index *index, xmlDocPtr doc, xmlNode *parent, void *user_args);
860
861 bool cvrf_product_vulnerability_fixed(struct cvrf_vulnerability *vuln, const char *product);
862
863 OSCAP_HIDDEN_END;
864
865 #endif /* _CVRF_PRIV_H_ */
cvrf_vulnerability_cwe
Definition: cvrf_priv.c:361
cvrf_doc_publisher::cvrf_doc_publisher_to_dom
xmlNode * cvrf_doc_publisher_to_dom(struct cvrf_doc_publisher *publisher)
Parent: CVRF Model root node.
Definition: cvrf_priv.c:2230
cvrf_threat::cvrf_threat_to_dom
xmlNode * cvrf_threat_to_dom(const struct cvrf_threat *threat)
Parent: Threats container in a CVRF Vulnerability element.
Definition: cvrf_priv.c:1715
cvrf_branch::cvrf_branch_get_branch_type
cvrf_branch_type_t cvrf_branch_get_branch_type(struct cvrf_branch *branch)
Definition: cvrf_priv.c:695
cvrf_vulnerability_cwe::cvrf_vulnerability_cwe_to_dom
xmlNode * cvrf_vulnerability_cwe_to_dom(const struct cvrf_vulnerability_cwe *vuln_cwe)
Parent: Vulnerability element.
Definition: cvrf_priv.c:1788
cvrf_product_status::cvrf_product_status_get_type
cvrf_product_status_type_t cvrf_product_status_get_type(struct cvrf_product_status *stat)
Definition: cvrf_priv.c:282
cvrf.h
Interface to Common Vulnerability Reporting Framework.
oscap_stringlist
A collection of strings.
Definition: oscap_text.h:59
cvrf_group::cvrf_group_to_dom
xmlNode * cvrf_group_to_dom(const struct cvrf_group *group)
Parent: CVRF ProductGroups container.
Definition: cvrf_priv.c:1911
cvrf_model
Definition: cvrf_priv.c:1235
cvrf_item_spec
Definition: cvrf_enumeration.c:241
cvrf_remediation::cvrf_remediation_to_dom
xmlNode * cvrf_remediation_to_dom(const struct cvrf_remediation *remed)
Parent: Remediations container in a CVRF Vulnerability element.
Definition: cvrf_priv.c:1632
cvrf_product_name
Definition: cvrf_priv.c:553
cvrf_involvement
Definition: cvrf_priv.c:315
cvrf_remediation::cvrf_remediation_get_type
cvrf_remediation_type_t cvrf_remediation_get_type(struct cvrf_remediation *remed)
Definition: cvrf_priv.c:77
cvrf_relationship
Definition: cvrf_priv.c:633
cvrf_score_set
Definition: cvrf_priv.c:132
cvrf_vulnerability
Definition: cvrf_priv.c:398
cvrf_product_tree::cvrf_product_tree_to_dom
xmlNode * cvrf_product_tree_to_dom(struct cvrf_product_tree *tree)
Parent: CVRF Model root node.
Definition: cvrf_priv.c:2014
cvrf_document::cvrf_document_to_dom
xmlNode * cvrf_document_to_dom(struct cvrf_document *document)
Creates a list of xmlNode siblings of all document elements, all of which will be added as a child li...
Definition: cvrf_priv.c:2268
cvrf_product_status::cvrf_product_status_to_dom
xmlNode * cvrf_product_status_to_dom(const struct cvrf_product_status *stat)
Parent: ProductStatuses container in a CVRF Vulnerability element.
Definition: cvrf_priv.c:1746
cvrf_branch
Definition: cvrf_priv.c:682
cvrf_branch::cvrf_branch_to_dom
xmlNode * cvrf_branch_to_dom(struct cvrf_branch *branch)
Parent: CVRF ProductTree element or another Branch element.
Definition: cvrf_priv.c:1968
cvrf_involvement::cvrf_involvement_get_party
cvrf_doc_publisher_type_t cvrf_involvement_get_party(struct cvrf_involvement *involve)
Definition: cvrf_priv.c:326
cvrf_index
Definition: cvrf_priv.c:1309
cvrf_reference::cvrf_reference_get_reference_type
cvrf_reference_type_t cvrf_reference_get_reference_type(struct cvrf_reference *reference)
Definition: cvrf_priv.c:1123
cvrf_group
Definition: cvrf_priv.c:589
cvrf_reference
Definition: cvrf_priv.c:1115
cvrf_product_name::cvrf_product_name_to_dom
xmlNode * cvrf_product_name_to_dom(struct cvrf_product_name *full_name)
Parent: CVRF ProductTree, Branch, Relationship, or Group element.
Definition: cvrf_priv.c:1881
cvrf_acknowledgment
Definition: cvrf_priv.c:838
cvrf_doc_publisher
Definition: cvrf_priv.c:1065
oscap_list
Definition: list.h:54
cvrf_doc_tracking::cvrf_doc_tracking_to_dom
xmlNode * cvrf_doc_tracking_to_dom(struct cvrf_doc_tracking *tracking)
Parent: CVRF Model root node.
Definition: cvrf_priv.c:2193
cvrf_remediation
Definition: cvrf_priv.c:63
oscap_source
Definition: oscap_source.c:62
cvrf_involvement::cvrf_involvement_to_dom
xmlNode * cvrf_involvement_to_dom(const struct cvrf_involvement *involve)
Parent: Involvements container in a CVRF Vulnerability element.
Definition: cvrf_priv.c:1769
cvrf_revision
Definition: cvrf_priv.c:946
cvrf_note::cvrf_note_to_dom
xmlNode * cvrf_note_to_dom(struct cvrf_note *note)
Parent: Notes or DocumentNotes container (of root node or Vulnerability node, respectively) ...
Definition: cvrf_priv.c:2105
cvrf_score_set::cvrf_score_set_to_dom
xmlNode * cvrf_score_set_to_dom(const struct cvrf_score_set *score_set)
Parent: CVSSScoreSets container in a CVRF Vulnerability element.
Definition: cvrf_priv.c:1673
cvrf_relationship::cvrf_relationship_get_relation_type
cvrf_relationship_type_t cvrf_relationship_get_relation_type(struct cvrf_relationship *relation)
Definition: cvrf_priv.c:643
cvrf_reference::cvrf_reference_to_dom
xmlNode * cvrf_reference_to_dom(struct cvrf_reference *ref)
Parent: References or DocumentReferences container.
Definition: cvrf_priv.c:2078
cvrf_vulnerability::cvrf_vulnerability_to_dom
xmlNode * cvrf_vulnerability_to_dom(const struct cvrf_vulnerability *vuln)
Parent: CVRF Model root node.
Definition: cvrf_priv.c:1846
cvrf_involvement::cvrf_involvement_get_status_type
cvrf_involvement_status_type_t cvrf_involvement_get_status_type(struct cvrf_involvement *involve)
Definition: cvrf_priv.c:322
cvrf_product_tree
Definition: cvrf_priv.c:750
cvrf_note
Definition: cvrf_priv.c:893
cvrf_doc_tracking
Definition: cvrf_priv.c:987
cvrf_document
Definition: cvrf_priv.c:1159
cvrf_acknowledgment::cvrf_acknowledgment_to_dom
xmlNode * cvrf_acknowledgment_to_dom(struct cvrf_acknowledgment *ack)
Parent: Acknowledgements container.
Definition: cvrf_priv.c:2048
cvrf_doc_publisher::cvrf_doc_publisher_get_type
cvrf_doc_publisher_type_t cvrf_doc_publisher_get_type(struct cvrf_doc_publisher *publisher)
Definition: cvrf_priv.c:1075
cvrf_product_status
Definition: cvrf_priv.c:274
oscap_source::type
oscap_source_type_t type
Internal type of the oscap_source.
Definition: oscap_source.c:65
cvrf_relationship::cvrf_relationship_to_dom
xmlNode * cvrf_relationship_to_dom(const struct cvrf_relationship *relation)
Parent: CVRF ProductTree element.
Definition: cvrf_priv.c:1933
cvrf_doc_tracking::cvrf_doc_tracking_get_status
cvrf_doc_status_type_t cvrf_doc_tracking_get_status(struct cvrf_doc_tracking *tracking)
Definition: cvrf_priv.c:1008
cvrf_threat::cvrf_threat_get_threat_type
cvrf_threat_type_t cvrf_threat_get_threat_type(struct cvrf_threat *threat)
Definition: cvrf_priv.c:225
cvrf_revision::cvrf_revision_to_dom
xmlNode * cvrf_revision_to_dom(struct cvrf_revision *revision)
Parent: RevisionHistory container in CVRF DocumentTracking element.
Definition: cvrf_priv.c:2136
cvrf_note::cvrf_note_get_note_type
cvrf_note_type_t cvrf_note_get_note_type(const struct cvrf_note *note)
Definition: cvrf_priv.c:905
cvrf_threat
Definition: cvrf_priv.c:215