Greenbone Vulnerability Management Libraries 22.18.1
nvti.h File Reference

Protos and data structures for NVT Information data sets. More...

#include <glib.h>

Go to the source code of this file.

Macros

#define NVTPREF_TIMEOUT_ID   0
 

Typedefs

typedef GHashTable nvtis_t
 A collection of information records corresponding to NVTs.
 

Functions

nvtpref_tnvtpref_new (int, const gchar *, const gchar *, const gchar *)
 Create a new nvtpref structure filled with the given values.
 
void nvtpref_free (nvtpref_t *)
 Free memory of a nvtpref structure.
 
gchar * nvtpref_name (const nvtpref_t *)
 Get the Name of a NVT Preference.
 
gchar * nvtpref_type (const nvtpref_t *)
 Get the Type of a NVT Preference.
 
gchar * nvtpref_default (const nvtpref_t *)
 Get the Default of a NVT Preference.
 
int nvtpref_id (const nvtpref_t *)
 Get the ID of a NVT Preference.
 
vtref_tvtref_new (const gchar *, const gchar *, const gchar *)
 Create a new vtref structure filled with the given values.
 
void vtref_free (vtref_t *)
 Free memory of a vtref structure.
 
const gchar * vtref_type (const vtref_t *)
 Get the type of a reference.
 
const gchar * vtref_id (const vtref_t *)
 Get the id of a reference.
 
const gchar * vtref_text (const vtref_t *)
 Get the text of a reference.
 
vtseverity_tvtseverity_new (const gchar *, const gchar *, int, double, const gchar *)
 Create a new vtseverity structure filled with the given values.
 
void vtseverity_free (vtseverity_t *)
 Free memory of a vtseverity structure.
 
const gchar * vtseverity_type (const vtseverity_t *)
 Get the type of a severity.
 
const gchar * vtseverity_origin (const vtseverity_t *)
 Get the origin of a severity.
 
const gchar * vtseverity_value (const vtseverity_t *)
 Get the value of a severity.
 
int vtseverity_date (const vtseverity_t *)
 Get the date of a severity.
 
double vtseverity_score (const vtseverity_t *)
 Get the score of a severity.
 
int nvti_add_vtref (nvti_t *, vtref_t *)
 Add a reference to the VT Info.
 
guint nvti_vtref_len (const nvti_t *)
 Get the number of references of the NVT.
 
vtref_tnvti_vtref (const nvti_t *, guint)
 Get the n'th reference of the NVT.
 
int nvti_add_vtseverity (nvti_t *, vtseverity_t *)
 Add a severity to the VT Info.
 
guint nvti_vtseverities_len (const nvti_t *)
 Get the number of severities of the NVT.
 
vtseverity_tnvti_vtseverity (const nvti_t *, guint)
 Get the n'th reference of the NVT.
 
double nvti_severity_score (const nvti_t *)
 Get the maximum severity score.
 
gchar * nvti_severity_vector_from_tag (const nvti_t *)
 Get the severity score.
 
nvti_tnvti_new (void)
 Create a new (empty) nvti structure.
 
void nvti_free (nvti_t *)
 Free memory of a nvti structure.
 
gchar * nvti_oid (const nvti_t *)
 Get the OID string.
 
gchar * nvti_name (const nvti_t *)
 Get the name.
 
gchar * nvti_summary (const nvti_t *)
 Get the summary.
 
gchar * nvti_affected (const nvti_t *)
 Get the text about affected systems.
 
gchar * nvti_impact (const nvti_t *)
 Get the text about impact.
 
time_t nvti_creation_time (const nvti_t *)
 Get the creation time.
 
time_t nvti_modification_time (const nvti_t *)
 Get the modification time.
 
gchar * nvti_insight (const nvti_t *)
 Get the text about insight.
 
gchar * nvti_refs (const nvti_t *, const gchar *, const char *, guint)
 
gchar * nvti_solution (const nvti_t *)
 Get the solution.
 
gchar * nvti_solution_type (const nvti_t *)
 Get the solution type.
 
gchar * nvti_solution_method (const nvti_t *)
 Get the solution method.
 
gchar * nvti_tag (const nvti_t *)
 Get the tags.
 
gchar * nvti_get_tag (const nvti_t *, const gchar *)
 Get a tag value by a tag name.
 
gchar * nvti_cvss_base (const nvti_t *)
 Get the CVSS base.
 
gchar * nvti_dependencies (const nvti_t *)
 Get the dependencies list.
 
gchar * nvti_required_keys (const nvti_t *)
 Get the required keys list.
 
gchar * nvti_mandatory_keys (const nvti_t *)
 Get the mandatory keys list.
 
gchar * nvti_excluded_keys (const nvti_t *)
 Get the excluded keys list.
 
gchar * nvti_required_ports (const nvti_t *)
 Get the required ports list.
 
gchar * nvti_required_udp_ports (const nvti_t *)
 Get the required udp ports list.
 
gchar * nvti_detection (const nvti_t *)
 Get the text about detection.
 
gchar * nvti_qod_type (const nvti_t *)
 Get the QoD type.
 
gchar * nvti_qod (const nvti_t *)
 Get the QoD.
 
gint nvti_timeout (const nvti_t *)
 
gint nvti_category (const nvti_t *)
 Get the category for this NVT.
 
gchar * nvti_family (const nvti_t *)
 Get the family name.
 
guint nvti_pref_len (const nvti_t *)
 Get the number of preferences of the NVT.
 
const nvtpref_tnvti_pref (const nvti_t *, guint)
 Get the n'th preferences of the NVT.
 
int nvti_set_oid (nvti_t *, const gchar *)
 Set the OID of a NVT Info.
 
int nvti_set_name (nvti_t *, const gchar *)
 Set the name of a NVT.
 
int nvti_put_name (nvti_t *, gchar *)
 Set the name of a NVT, using the given memory.
 
int nvti_set_summary (nvti_t *, const gchar *)
 Set the summary of a NVT.
 
int nvti_put_summary (nvti_t *, gchar *)
 Set the summary of a NVT, using the given memory.
 
int nvti_set_insight (nvti_t *, const gchar *)
 Set the insight text of a NVT.
 
int nvti_put_insight (nvti_t *, gchar *)
 Set the insight text of a NVT, using the given memory.
 
int nvti_set_affected (nvti_t *, const gchar *)
 Set the affected text of a NVT.
 
int nvti_put_affected (nvti_t *, gchar *)
 Set the affected text of a NVT, using the given memory.
 
int nvti_set_impact (nvti_t *, const gchar *)
 Set the impact text of a NVT.
 
int nvti_put_impact (nvti_t *, gchar *)
 Set the impact text of a NVT, using the given memory.
 
int nvti_set_creation_time (nvti_t *, const time_t)
 Set the creation time of a NVT.
 
int nvti_set_modification_time (nvti_t *, const time_t)
 Set the modification time of a NVT.
 
int nvti_set_solution (nvti_t *, const gchar *)
 Set the solution of a NVT.
 
int nvti_put_solution (nvti_t *, gchar *)
 Set the solution of a NVT, using the given memory.
 
int nvti_set_solution_type (nvti_t *, const gchar *)
 Set the solution type of a NVT.
 
int nvti_set_solution_method (nvti_t *, const gchar *)
 Set the solution method of a NVT.
 
int nvti_add_tag (nvti_t *, const gchar *, const gchar *)
 Add a tag to the NVT tags. The tag names "severity_date", "last_modification" and "creation_date" are treated special: The value is expected to be a timestamp and it is being converted to seconds since epoch before added as a tag value. The tag name "cvss_base" will be ignored and not added.
 
int nvti_set_tag (nvti_t *, const gchar *)
 Set the tags of a NVT.
 
int nvti_set_cvss_base (nvti_t *, const gchar *)
 Set the CVSS base of an NVT.
 
int nvti_set_dependencies (nvti_t *, const gchar *)
 Set the dependencies of a NVT.
 
int nvti_set_required_keys (nvti_t *, const gchar *)
 Set the required keys of a NVT.
 
int nvti_set_mandatory_keys (nvti_t *, const gchar *)
 Set the mandatory keys of a NVT.
 
int nvti_set_excluded_keys (nvti_t *, const gchar *)
 Set the excluded keys of a NVT.
 
int nvti_set_required_ports (nvti_t *, const gchar *)
 Set the required ports of a NVT.
 
int nvti_set_required_udp_ports (nvti_t *, const gchar *)
 Set the required udp ports of a NVT.
 
int nvti_set_detection (nvti_t *, const gchar *)
 Set the detection text of a NVT.
 
int nvti_put_detection (nvti_t *, gchar *)
 Set the detection text of a NVT, using the given memory.
 
int nvti_set_qod_type (nvti_t *, const gchar *)
 Set the QoD type of a NVT.
 
int nvti_set_qod (nvti_t *, const gchar *)
 Set the QoD of a NVT.
 
int nvti_set_timeout (nvti_t *, const gint)
 
int nvti_set_category (nvti_t *, const gint)
 Set the category type of a NVT Info.
 
int nvti_set_family (nvti_t *, const gchar *)
 Set the family of a NVT.
 
int nvti_put_family (nvti_t *, gchar *)
 Set the family of a NVT, using the given memory.
 
int nvti_add_refs (nvti_t *, const gchar *, const gchar *, const gchar *)
 Add many new vtref from a comma-separated list.
 
int nvti_add_required_keys (nvti_t *, const gchar *)
 Add a required key of a NVT.
 
int nvti_add_mandatory_keys (nvti_t *, const gchar *)
 Add a mandatory key of a NVT.
 
int nvti_add_excluded_keys (nvti_t *, const gchar *)
 Add a excluded key of a NVT.
 
int nvti_add_required_ports (nvti_t *, const gchar *)
 Add a required port of a NVT.
 
int nvti_add_required_udp_ports (nvti_t *, const gchar *)
 Add a required udp port of a NVT.
 
int nvti_add_pref (nvti_t *, nvtpref_t *)
 Add a preference to the NVT Info.
 
nvtis_tnvtis_new (void)
 Make a collection of NVT Infos.
 
void nvtis_free (nvtis_t *)
 Free a collection of NVT Infos.
 
void nvtis_add (nvtis_t *, nvti_t *)
 Add an NVT Info to a collection of NVT Infos.
 
nvti_tnvtis_lookup (nvtis_t *, const char *)
 Add an NVT Info to a collection of NVT Infos.
 

Detailed Description

Protos and data structures for NVT Information data sets.

This file contains the protos for nvti.c

Macro Definition Documentation

◆ NVTPREF_TIMEOUT_ID

#define NVTPREF_TIMEOUT_ID   0

Typedef Documentation

◆ nvtis_t

typedef GHashTable nvtis_t

A collection of information records corresponding to NVTs.

Function Documentation

◆ nvti_add_excluded_keys()

int nvti_add_excluded_keys ( nvti_t * n,
const gchar * key )

Add a excluded key of a NVT.

Parameters
nThe NVT Info structure.
keyThe excluded key to add. A copy will be created from this.
Returns
0 for success. 1 if n was NULL. 2 if key was NULL.

◆ nvti_add_mandatory_keys()

int nvti_add_mandatory_keys ( nvti_t * n,
const gchar * key )

Add a mandatory key of a NVT.

Parameters
nThe NVT Info structure.
keyThe mandatory key to add. A copy will be created from this.
Returns
0 for success. 1 if n was NULL. 2 if key was NULL.

◆ nvti_add_pref()

int nvti_add_pref ( nvti_t * n,
nvtpref_t * np )

Add a preference to the NVT Info.

Parameters
nThe NVT Info structure.
npThe NVT preference to add.
Returns
0 for success. Anything else indicates an error.

◆ nvti_add_refs()

int nvti_add_refs ( nvti_t * n,
const gchar * type,
const gchar * ref_ids,
const gchar * ref_text )

Add many new vtref from a comma-separated list.

Parameters
nThe NVTI where to add the references.
typeThe type for all references. If NULL, then for ref_ids a syntax is expected that includes the type like "type:id,type:id".
ref_idsA CSV of reference to be added.
ref_textThe optional text accompanying all references.
Returns
0 for success. 1 if n was NULL, 2 if ref_ids was NULL.

◆ nvti_add_required_keys()

int nvti_add_required_keys ( nvti_t * n,
const gchar * key )

Add a required key of a NVT.

Parameters
nThe NVT Info structure.
keyThe required key to add. A copy will be created from this.
Returns
0 for success. 1 if n was NULL. 2 if key was NULL.

◆ nvti_add_required_ports()

int nvti_add_required_ports ( nvti_t * n,
const gchar * port )

Add a required port of a NVT.

Parameters
nThe NVT Info structure.
portThe required port to add. A copy will be created from this.
Returns
0 for success. 1 if n was NULL. 2 if port was NULL.

◆ nvti_add_required_udp_ports()

int nvti_add_required_udp_ports ( nvti_t * n,
const gchar * port )

Add a required udp port of a NVT.

Parameters
nThe NVT Info structure.
portThe required udp port to add. A copy will be created from this.
Returns
0 for success. 1 if n was NULL. 2 if port was NULL.

◆ nvti_add_tag()

int nvti_add_tag ( nvti_t * n,
const gchar * name,
const gchar * value )

Add a tag to the NVT tags. The tag names "severity_date", "last_modification" and "creation_date" are treated special: The value is expected to be a timestamp and it is being converted to seconds since epoch before added as a tag value. The tag name "cvss_base" will be ignored and not added.

Parameters
nThe NVT Info structure.
nameThe tag name. A copy will be created from this.
valueThe tag value. A copy will be created from this.
Returns
0 for success. Anything else indicates an error.

◆ nvti_add_vtref()

int nvti_add_vtref ( nvti_t * vt,
vtref_t * ref )

Add a reference to the VT Info.

Parameters
vtThe VT Info structure.
refThe VT reference to add.
Returns
0 for success. Anything else indicates an error.

◆ nvti_add_vtseverity()

int nvti_add_vtseverity ( nvti_t * vt,
vtseverity_t * s )

Add a severity to the VT Info.

Parameters
vtThe VT Info structure.
sThe VT severity to add.
Returns
0 for success. Anything else indicates an error.

◆ nvti_affected()

gchar * nvti_affected ( const nvti_t * n)

Get the text about affected systems.

Parameters
nThe NVT Info structure of which the affected description should be returned.
Returns
The affected string. Don't free this.

◆ nvti_category()

gint nvti_category ( const nvti_t * n)

Get the category for this NVT.

Parameters
nThe NVT Info structure of which the category should be returned.
Returns
The category integer code. A value <= 0 indicates it is not set.

◆ nvti_creation_time()

time_t nvti_creation_time ( const nvti_t * n)

Get the creation time.

Parameters
nThe NVT Info structure of which the creation time should be returned.
Returns
The creation time in seconds since epoch.

◆ nvti_cvss_base()

gchar * nvti_cvss_base ( const nvti_t * n)

Get the CVSS base.

Parameters
nThe NVT Info structure of which the CVSS base should be returned.
Returns
The cvss_base string. Don't free this.

◆ nvti_dependencies()

gchar * nvti_dependencies ( const nvti_t * n)

Get the dependencies list.

Parameters
nThe NVT Info structure of which the name should be returned.
Returns
The dependencies string. Don't free this.

◆ nvti_detection()

gchar * nvti_detection ( const nvti_t * n)

Get the text about detection.

Parameters
nThe NVT Info structure of which the detection should be returned.
Returns
The detection string. Don't free this.

◆ nvti_excluded_keys()

gchar * nvti_excluded_keys ( const nvti_t * n)

Get the excluded keys list.

Parameters
nThe NVT Info structure of which the name should be returned.
Returns
The excluded keys string. Don't free this.

◆ nvti_family()

gchar * nvti_family ( const nvti_t * n)

Get the family name.

Parameters
nThe NVT Info structure of which the name should be returned.
Returns
The family name string. Don't free this.

◆ nvti_free()

void nvti_free ( nvti_t * n)

Free memory of a nvti structure.

Parameters
nThe structure to be freed.

◆ nvti_get_tag()

gchar * nvti_get_tag ( const nvti_t * n,
const gchar * name )

Get a tag value by a tag name.

Parameters
nThe NVT Info structure from where to search for the tag name.
nameThe name of the tag for which to return the value.
Returns
The tag value string as a copy or NULL if not found. Needs to be free'd.

◆ nvti_impact()

gchar * nvti_impact ( const nvti_t * n)

Get the text about impact.

Parameters
nThe NVT Info structure of which the impact description should be returned.
Returns
The impact string. Don't free this.

◆ nvti_insight()

gchar * nvti_insight ( const nvti_t * n)

Get the text about insight.

Parameters
nThe NVT Info structure of which the insight description should be returned.
Returns
The insight string. Don't free this.

◆ nvti_mandatory_keys()

gchar * nvti_mandatory_keys ( const nvti_t * n)

Get the mandatory keys list.

Parameters
nThe NVT Info structure of which the name should be returned.
Returns
The mandatory keys string. Don't free this.

◆ nvti_modification_time()

time_t nvti_modification_time ( const nvti_t * n)

Get the modification time.

Parameters
nThe NVT Info structure of which the modification time should be returned.
Returns
The modification time in seconds since epoch.

◆ nvti_name()

gchar * nvti_name ( const nvti_t * n)

Get the name.

Parameters
nThe NVT Info structure of which the name should be returned.
Returns
The name string. Don't free this.

◆ nvti_new()

nvti_t * nvti_new ( void )

Create a new (empty) nvti structure.

Returns
An empty nvti structure which needs to be released using nvti_free . The whole struct is initialized with 0's.

◆ nvti_oid()

gchar * nvti_oid ( const nvti_t * n)

Get the OID string.

Parameters
nThe NVT Info structure of which the OID should be returned.
Returns
The OID string. Don't free this.

◆ nvti_pref()

const nvtpref_t * nvti_pref ( const nvti_t * n,
guint p )

Get the n'th preferences of the NVT.

Parameters
nThe NVT Info structure.
pThe position of the preference to return.
Returns
The preference. NULL on error.

◆ nvti_pref_len()

guint nvti_pref_len ( const nvti_t * n)

Get the number of preferences of the NVT.

Parameters
nThe NVT Info structure.
Returns
The number of preferences.

◆ nvti_put_affected()

int nvti_put_affected ( nvti_t * n,
gchar * affected )

Set the affected text of a NVT, using the given memory.

Parameters
nThe NVT Info structure.
affectedThe affected text to set. The string will be used directly.
Returns
0 for success. Anything else indicates an error.

◆ nvti_put_detection()

int nvti_put_detection ( nvti_t * n,
gchar * detection )

Set the detection text of a NVT, using the given memory.

Parameters
nThe NVT Info structure.
detectionThe detection text to set. The string will be used directly.
Returns
0 for success. Anything else indicates an error.

◆ nvti_put_family()

int nvti_put_family ( nvti_t * n,
gchar * family )

Set the family of a NVT, using the given memory.

Parameters
nThe NVT Info structure.
familyThe family to set. The string will be used directly.
Returns
0 for success. Anything else indicates an error.

◆ nvti_put_impact()

int nvti_put_impact ( nvti_t * n,
gchar * impact )

Set the impact text of a NVT, using the given memory.

Parameters
nThe NVT Info structure.
impactThe impact text to set. The string will be used directly.
Returns
0 for success. Anything else indicates an error.

◆ nvti_put_insight()

int nvti_put_insight ( nvti_t * n,
gchar * insight )

Set the insight text of a NVT, using the given memory.

Parameters
nThe NVT Info structure.
insightThe insight text to set. The string will be used directly.
Returns
0 for success. Anything else indicates an error.

◆ nvti_put_name()

int nvti_put_name ( nvti_t * n,
gchar * name )

Set the name of a NVT, using the given memory.

Parameters
nThe NVT Info structure.
nameThe name to set. The string will be used directly.
Returns
0 for success. Anything else indicates an error.

◆ nvti_put_solution()

int nvti_put_solution ( nvti_t * n,
gchar * solution )

Set the solution of a NVT, using the given memory.

Parameters
nThe NVT Info structure.
solutionThe solution to set. The string will be used directly.
Returns
0 for success. Anything else indicates an error.

◆ nvti_put_summary()

int nvti_put_summary ( nvti_t * n,
gchar * summary )

Set the summary of a NVT, using the given memory.

Parameters
nThe NVT Info structure.
summaryThe summary to set. The string will be used directly.
Returns
0 for success. Anything else indicates an error.

◆ nvti_qod()

gchar * nvti_qod ( const nvti_t * n)

Get the QoD.

Parameters
nThe NVT Info structure of which the QoD should be returned.
Returns
The QoD as string. Don't free this.

◆ nvti_qod_type()

gchar * nvti_qod_type ( const nvti_t * n)

Get the QoD type.

Parameters
nThe NVT Info structure of which the QoD type should be returned.
Returns
The QoD type as string. Don't free this.

◆ nvti_refs()

gchar * nvti_refs ( const nvti_t * ,
const gchar * ,
const char * ,
guint  )

◆ nvti_required_keys()

gchar * nvti_required_keys ( const nvti_t * n)

Get the required keys list.

Parameters
nThe NVT Info structure of which the name should be returned.
Returns
The required keys string. Don't free this.

◆ nvti_required_ports()

gchar * nvti_required_ports ( const nvti_t * n)

Get the required ports list.

Parameters
nThe NVT Info structure of which the name should be returned.
Returns
The required ports string. Don't free this.

◆ nvti_required_udp_ports()

gchar * nvti_required_udp_ports ( const nvti_t * n)

Get the required udp ports list.

Parameters
nThe NVT Info structure of which the name should be returned.
Returns
The required udp ports string. Don't free this.

◆ nvti_set_affected()

int nvti_set_affected ( nvti_t * n,
const gchar * affected )

Set the affected text of a NVT.

Parameters
nThe NVT Info structure.
affectedThe affected text to set. A copy will be created from this.
Returns
0 for success. Anything else indicates an error.

◆ nvti_set_category()

int nvti_set_category ( nvti_t * n,
const gint category )

Set the category type of a NVT Info.

Parameters
nThe NVT Info structure.
categoryThe category to set. Values <= 0 will indicate it is not set.
Returns
0 for success. Anything else indicates an error.

◆ nvti_set_creation_time()

int nvti_set_creation_time ( nvti_t * n,
const time_t creation_time )

Set the creation time of a NVT.

Parameters
nThe NVT Info structure.
creation_timeThe creation time to set.
Returns
0 for success. Anything else indicates an error.

◆ nvti_set_cvss_base()

int nvti_set_cvss_base ( nvti_t * n,
const gchar * cvss_base )

Set the CVSS base of an NVT.

Parameters
nThe NVT Info structure.
cvss_baseThe CVSS base to set. A copy will be created from this.
Returns
0 for success. Anything else indicates an error.

◆ nvti_set_dependencies()

int nvti_set_dependencies ( nvti_t * n,
const gchar * dependencies )

Set the dependencies of a NVT.

Parameters
nThe NVT Info structure.
dependenciesThe dependencies to set. A copy will be created from this.
Returns
0 for success. Anything else indicates an error.

◆ nvti_set_detection()

int nvti_set_detection ( nvti_t * n,
const gchar * detection )

Set the detection text of a NVT.

Parameters
nThe NVT Info structure.
detectionThe detection text to set. A copy will be created from this.
Returns
0 for success. Anything else indicates an error.

◆ nvti_set_excluded_keys()

int nvti_set_excluded_keys ( nvti_t * n,
const gchar * excluded_keys )

Set the excluded keys of a NVT.

Parameters
nThe NVT Info structure.
excluded_keysThe excluded keys to set. A copy will be created from this.
Returns
0 for success. Anything else indicates an error.

◆ nvti_set_family()

int nvti_set_family ( nvti_t * n,
const gchar * family )

Set the family of a NVT.

Parameters
nThe NVT Info structure.
familyThe family to set. A copy will be created from this.
Returns
0 for success. Anything else indicates an error.

◆ nvti_set_impact()

int nvti_set_impact ( nvti_t * n,
const gchar * impact )

Set the impact text of a NVT.

Parameters
nThe NVT Info structure.
impactThe impact text to set. A copy will be created from this.
Returns
0 for success. Anything else indicates an error.

◆ nvti_set_insight()

int nvti_set_insight ( nvti_t * n,
const gchar * insight )

Set the insight text of a NVT.

Parameters
nThe NVT Info structure.
insightThe insight text to set. A copy will be created from this.
Returns
0 for success. Anything else indicates an error.

◆ nvti_set_mandatory_keys()

int nvti_set_mandatory_keys ( nvti_t * n,
const gchar * mandatory_keys )

Set the mandatory keys of a NVT.

Parameters
nThe NVT Info structure.
mandatory_keysThe mandatory keys to set. A copy will be created from this.
Returns
0 for success. Anything else indicates an error.

◆ nvti_set_modification_time()

int nvti_set_modification_time ( nvti_t * n,
const time_t modification_time )

Set the modification time of a NVT.

Parameters
nThe NVT Info structure.
modification_timeThe modification time to set.
Returns
0 for success. Anything else indicates an error.

◆ nvti_set_name()

int nvti_set_name ( nvti_t * n,
const gchar * name )

Set the name of a NVT.

Parameters
nThe NVT Info structure.
nameThe name to set. A copy will be created from this.
Returns
0 for success. Anything else indicates an error.

◆ nvti_set_oid()

int nvti_set_oid ( nvti_t * n,
const gchar * oid )

Set the OID of a NVT Info.

Parameters
nThe NVT Info structure.
oidThe OID to set. A copy will be created from this.
Returns
0 for success. Anything else indicates an error.

◆ nvti_set_qod()

int nvti_set_qod ( nvti_t * n,
const gchar * qod )

Set the QoD of a NVT.

Parameters
nThe NVT Info structure.
qodThe QoD to set. A copy will be created from this. The string is not checked, any string is accepted as type.
Returns
0 for success. Anything else indicates an error.

◆ nvti_set_qod_type()

int nvti_set_qod_type ( nvti_t * n,
const gchar * qod_type )

Set the QoD type of a NVT.

Parameters
nThe NVT Info structure.
qod_typeThe QoD type to set. A copy will be created from this. The string is not checked, any string is accepted as type.
Returns
0 for success. Anything else indicates an error.

◆ nvti_set_required_keys()

int nvti_set_required_keys ( nvti_t * n,
const gchar * required_keys )

Set the required keys of a NVT.

Parameters
nThe NVT Info structure.
required_keysThe required keys to set. A copy will be created from this.
Returns
0 for success. Anything else indicates an error.

◆ nvti_set_required_ports()

int nvti_set_required_ports ( nvti_t * n,
const gchar * required_ports )

Set the required ports of a NVT.

Parameters
nThe NVT Info structure.
required_portsThe required ports to set. A copy will be created from this.
Returns
0 for success. Anything else indicates an error.

◆ nvti_set_required_udp_ports()

int nvti_set_required_udp_ports ( nvti_t * n,
const gchar * required_udp_ports )

Set the required udp ports of a NVT.

Parameters
nThe NVT Info structure.
required_udp_portsThe required udp ports to set. A copy will be created from this.
Returns
0 for success. Anything else indicates an error.

◆ nvti_set_solution()

int nvti_set_solution ( nvti_t * n,
const gchar * solution )

Set the solution of a NVT.

Parameters
nThe NVT Info structure.
solutionThe solution to set. A copy will be created from this.
Returns
0 for success. Anything else indicates an error.

◆ nvti_set_solution_method()

int nvti_set_solution_method ( nvti_t * n,
const gchar * solution_method )

Set the solution method of a NVT.

Parameters
nThe NVT Info structure.
solution_methodThe solution method to set. A copy will be created from this.
Returns
0 for success. Anything else indicates an error.

◆ nvti_set_solution_type()

int nvti_set_solution_type ( nvti_t * n,
const gchar * solution_type )

Set the solution type of a NVT.

Parameters
nThe NVT Info structure.
solution_typeThe solution type to set. A copy will be created from this.
Returns
0 for success. Anything else indicates an error.

◆ nvti_set_summary()

int nvti_set_summary ( nvti_t * n,
const gchar * summary )

Set the summary of a NVT.

Parameters
nThe NVT Info structure.
summaryThe summary to set. A copy will be created from this.
Returns
0 for success. Anything else indicates an error.

◆ nvti_set_tag()

int nvti_set_tag ( nvti_t * n,
const gchar * tag )

Set the tags of a NVT.

Parameters
nThe NVT Info structure.
tagThe tags to set. A copy will be created from this.
Returns
0 for success. Anything else indicates an error.

◆ nvti_set_timeout()

int nvti_set_timeout ( nvti_t * ,
const gint  )

◆ nvti_severity_score()

double nvti_severity_score ( const nvti_t * n)

Get the maximum severity score.

Parameters
nThe NVT Info structure.
Returns
The severity score, -1 indicates an error.

◆ nvti_severity_vector_from_tag()

gchar * nvti_severity_vector_from_tag ( const nvti_t * n)

Get the severity score.

Extended severity was introduced but still not all vts are using it. Therefore it must be checked if we can calculate the score from the severity_vector tag or if we have to calculate it from the deprecated cvss_base_vector tag.

Parameters
nThe NVT Info structure.
Returns
The severity_vector if present or cvss_base_vector otherwise. NULL indicates an error. Must be free()'d by the caller.

◆ nvti_solution()

gchar * nvti_solution ( const nvti_t * n)

Get the solution.

Parameters
nThe NVT Info structure of which the solution should be returned.
Returns
The solution string. Don't free this.

◆ nvti_solution_method()

gchar * nvti_solution_method ( const nvti_t * n)

Get the solution method.

Parameters
nThe NVT Info structure of which the solution method should be returned.
Returns
The solution method string. Don't free this.

◆ nvti_solution_type()

gchar * nvti_solution_type ( const nvti_t * n)

Get the solution type.

Parameters
nThe NVT Info structure of which the solution type should be returned.
Returns
The solution type string. Don't free this.

◆ nvti_summary()

gchar * nvti_summary ( const nvti_t * n)

Get the summary.

Parameters
nThe NVT Info structure of which the summary should be returned.
Returns
The summary string. Don't free this.

◆ nvti_tag()

gchar * nvti_tag ( const nvti_t * n)

Get the tags.

Parameters
nThe NVT Info structure of which the tags should be returned.
Returns
The tags string. Don't free this.

◆ nvti_timeout()

gint nvti_timeout ( const nvti_t * )

◆ nvti_vtref()

vtref_t * nvti_vtref ( const nvti_t * n,
guint p )

Get the n'th reference of the NVT.

Parameters
nThe NVT Info structure.
pThe position of the reference to return.
Returns
The reference. NULL on error.

◆ nvti_vtref_len()

guint nvti_vtref_len ( const nvti_t * n)

Get the number of references of the NVT.

Parameters
nThe NVT Info structure.
Returns
The number of references.

◆ nvti_vtseverities_len()

guint nvti_vtseverities_len ( const nvti_t * n)

Get the number of severities of the NVT.

Parameters
nThe NVT Info structure.
Returns
The number of severities.

◆ nvti_vtseverity()

vtseverity_t * nvti_vtseverity ( const nvti_t * n,
guint p )

Get the n'th reference of the NVT.

Parameters
nThe NVT Info structure.
pThe position of the reference to return.
Returns
The reference. NULL on error.

◆ nvtis_add()

void nvtis_add ( nvtis_t * nvtis,
nvti_t * nvti )

Add an NVT Info to a collection of NVT Infos.

Parameters
nvtisThe collection of NVT Infos.
nvtiThe NVT Info to add.

◆ nvtis_free()

void nvtis_free ( nvtis_t * nvtis)

Free a collection of NVT Infos.

Parameters
nvtisThe collection of NVT Infos.

◆ nvtis_lookup()

nvti_t * nvtis_lookup ( nvtis_t * nvtis,
const char * oid )

Add an NVT Info to a collection of NVT Infos.

Parameters
nvtisThe collection of NVT Infos.
oidThe OID of the NVT.
Returns
The NVT Info, if found, else NULL.

◆ nvtis_new()

nvtis_t * nvtis_new ( void )

Make a collection of NVT Infos.

Returns
An empty collection of NVT Infos.

◆ nvtpref_default()

gchar * nvtpref_default ( const nvtpref_t * np)

Get the Default of a NVT Preference.

Parameters
npThe NVT Pref structure of which the Default should be returned.
Returns
The default string. Don't free this.

◆ nvtpref_free()

void nvtpref_free ( nvtpref_t * np)

Free memory of a nvtpref structure.

Parameters
npThe structure to be freed.

◆ nvtpref_id()

int nvtpref_id ( const nvtpref_t * np)

Get the ID of a NVT Preference.

Parameters
npThe NVT Pref structure of which the Name should be returned.
Returns
The ID value.

◆ nvtpref_name()

gchar * nvtpref_name ( const nvtpref_t * np)

Get the Name of a NVT Preference.

Parameters
npThe NVT Pref structure of which the Name should be returned.
Returns
The name string. Don't free this.

◆ nvtpref_new()

nvtpref_t * nvtpref_new ( int id,
const gchar * name,
const gchar * type,
const gchar * dflt )

Create a new nvtpref structure filled with the given values.

Parameters
idThe ID to be set.
nameThe name to be set. A copy will created of this.
typeThe type to be set. A copy will created of this.
dfltThe default to be set. A copy will created of this.
Returns
An nvtpref structure which needs to be released using nvtpref_free .

◆ nvtpref_type()

gchar * nvtpref_type ( const nvtpref_t * np)

Get the Type of a NVT Preference.

Parameters
npThe NVT Pref structure of which the Type should be returned.
Returns
The type string. Don't free this.

◆ vtref_free()

void vtref_free ( vtref_t * ref)

Free memory of a vtref structure.

Parameters
refThe structure to be freed.

◆ vtref_id()

const gchar * vtref_id ( const vtref_t * r)

Get the id of a reference.

Parameters
rThe VT Reference structure of which the id should be returned.
Returns
The id string. Don't free this.

◆ vtref_new()

vtref_t * vtref_new ( const gchar * type,
const gchar * ref_id,
const gchar * ref_text )

Create a new vtref structure filled with the given values.

Parameters
typeThe type to be set.
ref_idThe actual reference to be set.
ref_textThe optional text accompanying a reference.
Returns
A vtref structure which needs to be released using vtref_free .

◆ vtref_text()

const gchar * vtref_text ( const vtref_t * r)

Get the text of a reference.

Parameters
rThe VT Reference structure of which the id should be returned.
Returns
The id string. Don't free this.

◆ vtref_type()

const gchar * vtref_type ( const vtref_t * r)

Get the type of a reference.

Parameters
rThe VT Reference structure of which the type should be returned.
Returns
The type string. Don't free this.

◆ vtseverity_date()

int vtseverity_date ( const vtseverity_t * s)

Get the date of a severity.

Parameters
sThe VT Severity structure of which the date should be returned.
Returns
The date.

◆ vtseverity_free()

void vtseverity_free ( vtseverity_t * s)

Free memory of a vtseverity structure.

Parameters
sThe structure to be freed.

◆ vtseverity_new()

vtseverity_t * vtseverity_new ( const gchar * type,
const gchar * origin,
int date,
double score,
const gchar * value )

Create a new vtseverity structure filled with the given values.

Parameters
[in]typeThe severity type to be set.
[in]originThe origin reference to be set, can be NULL.
[in]dateThe date to be set.
[in]scoreThe score to be set.
[in]valueThe value corresponding to the type.
Returns
A vtref structure which needs to be released using vtref_free .

◆ vtseverity_origin()

const gchar * vtseverity_origin ( const vtseverity_t * s)

Get the origin of a severity.

Parameters
sThe VT Severity structure of which the origin should be returned.
Returns
The origin string. Don't free this.

◆ vtseverity_score()

double vtseverity_score ( const vtseverity_t * s)

Get the score of a severity.

Parameters
sThe VT Severity structure of which the score should be returned.
Returns
The score.

◆ vtseverity_type()

const gchar * vtseverity_type ( const vtseverity_t * s)

Get the type of a severity.

Parameters
sThe VT Severity structure of which the type should be returned.
Returns
The type string. Don't free this.

◆ vtseverity_value()

const gchar * vtseverity_value ( const vtseverity_t * s)

Get the value of a severity.

Parameters
sThe VT Severity structure of which the value should be returned.
Returns
The value string. Don't free this.