Greenbone Vulnerability Management Libraries 22.14.0
cpeutils.h
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2009-2024 Greenbone AG
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later
4 */
5
11#ifndef _GVM_CPEUTILS_H
12#define _GVM_CPEUTILS_H
13
14#include <glib.h>
15#include <stdio.h>
16
22typedef struct
23{
24 char *part;
25 char *vendor;
26 char *product;
27 char *version;
28 char *update;
29 char *edition;
31 char *target_sw;
32 char *target_hw;
33 char *other;
34 char *language;
36
37char *
38uri_cpe_to_fs_cpe (const char *);
39
40char *
41uri_cpe_to_fs_product (const char *);
42
43char *
44fs_cpe_to_uri_cpe (const char *);
45
46char *
47fs_cpe_to_uri_product (const char *);
48
49void
50uri_cpe_to_cpe_struct (const char *, cpe_struct_t *);
51
52char *
54
55char *
57
58char *
59get_version_from_uri_cpe (const char *);
60
61void
62fs_cpe_to_cpe_struct (const char *, cpe_struct_t *);
63
64char *
66
67char *
69
70void
72
73void
75
76gboolean
78
79gboolean
81
90
91#define CPE_COMPONENT_IS_ANY(component) (component[0] == 'A')
92
93#endif
void cpe_struct_init(cpe_struct_t *)
Initialize a CPE struct.
Definition cpeutils.c:1158
void fs_cpe_to_cpe_struct(const char *, cpe_struct_t *)
Read a formatted string CPE into the CPE struct.
Definition cpeutils.c:346
char * cpe_struct_to_uri_cpe(const cpe_struct_t *)
Convert a CPE struct into a URI CPE.
Definition cpeutils.c:220
void uri_cpe_to_cpe_struct(const char *, cpe_struct_t *)
Read a URI CPE into the CPE struct.
Definition cpeutils.c:180
char * cpe_struct_to_fs_product(const cpe_struct_t *)
Convert a CPE struct into a formatted string product.
Definition cpeutils.c:476
gboolean cpe_struct_match_tail(cpe_struct_t *, cpe_struct_t *)
Returns if the part behind the version of source is a match for that part of target....
Definition cpeutils.c:1318
char * get_version_from_uri_cpe(const char *)
Get the version from an uri cpe.
Definition cpeutils.c:330
char * fs_cpe_to_uri_product(const char *)
Convert a formatted string CPE to an URI product.
Definition cpeutils.c:160
void cpe_struct_free(cpe_struct_t *)
Free a CPE struct.
Definition cpeutils.c:1182
set_relation
Definition cpeutils.h:83
@ SUBSET
Definition cpeutils.h:86
@ DISJOINT
Definition cpeutils.h:84
@ EQUAL
Definition cpeutils.h:85
@ UNDEFINED
Definition cpeutils.h:88
@ SUPERSET
Definition cpeutils.h:87
char * cpe_struct_to_uri_product(const cpe_struct_t *)
Convert a CPE struct into a URI product.
Definition cpeutils.c:289
char * fs_cpe_to_uri_cpe(const char *)
Convert a formatted string CPE to a URI CPE.
Definition cpeutils.c:140
char * uri_cpe_to_fs_product(const char *)
Convert a URI CPE to a formatted string product.
Definition cpeutils.c:120
char * cpe_struct_to_fs_cpe(const cpe_struct_t *)
Convert a CPE struct into a formatted string CPE.
Definition cpeutils.c:382
gboolean cpe_struct_match(cpe_struct_t *, cpe_struct_t *)
Returns if source is a match for target. That means that source is a superset of target.
Definition cpeutils.c:1263
char * uri_cpe_to_fs_cpe(const char *)
Convert a URI CPE to a formatted string CPE.
Definition cpeutils.c:100
XML context.
Definition cpeutils.h:23
char * sw_edition
Definition cpeutils.h:30
char * target_sw
Definition cpeutils.h:31
char * vendor
Definition cpeutils.h:25
char * version
Definition cpeutils.h:27
char * update
Definition cpeutils.h:28
char * product
Definition cpeutils.h:26
char * part
Definition cpeutils.h:24
char * edition
Definition cpeutils.h:29
char * language
Definition cpeutils.h:34
char * target_hw
Definition cpeutils.h:32
char * other
Definition cpeutils.h:33