Greenbone Vulnerability Manager  9.0.1
Macros | Functions
manage_pg.c File Reference

GVM management layer: PostgreSQL specific facilities. More...

#include <strings.h>
#include <assert.h>
#include "sql.h"
#include "manage_sql.h"
#include "manage_utils.h"
#include "manage_acl.h"

Macros

#define G_LOG_DOMAIN   "md manage"
 GLib log domain.
 
#define OVERRIDES_SQL(severity_sql)
 Common overrides SQL for SQL functions.
 
#define VULNS_RESULTS_WHERE
 Results WHERE SQL for creating views in create_tabes. More...
 

Functions

void manage_session_init (const char *uuid)
 Setup session. More...
 
void manage_session_set_timezone (const char *zone)
 Setup session timezone. More...
 
int manage_db_empty ()
 Check whether database is empty. More...
 
int manage_cert_db_exists ()
 Check if CERT db exists. More...
 
int manage_scap_db_exists ()
 Check if SCAP db exists. More...
 
int manage_update_cert_db_init ()
 Database specific setup for CERT update. More...
 
void manage_update_cert_db_cleanup ()
 Database specific cleanup after CERT update.
 
int manage_update_scap_db_init ()
 Database specific setup for SCAP update. More...
 
void manage_update_scap_db_cleanup ()
 Database specific cleanup after SCAP update.
 
void sql_rename_column (const char *old_table, const char *new_table, const char *old_name, const char *new_name)
 Move data from a table to a new table, heeding column rename. More...
 
int manage_create_sql_functions ()
 Create functions. More...
 
void manage_create_result_indexes ()
 Create result indexes.
 
void create_tables ()
 Create all tables.
 
void check_db_sequences ()
 Ensure sequences for automatic ids are in a consistent state. More...
 
void manage_attach_databases ()
 Attach external databases.
 
void manage_db_remove (const gchar *name)
 Attach external databases. More...
 
int manage_db_init (const gchar *name)
 Init external database. More...
 
void manage_db_check_mode (const gchar *name)
 Dummy function. More...
 
int manage_db_check (const gchar *name)
 Dummy function. More...
 
int manage_cert_loaded ()
 Check whether CERT is available. More...
 
int manage_scap_loaded ()
 Check whether SCAP is available. More...
 

Detailed Description

GVM management layer: PostgreSQL specific facilities.

This file contains the parts of the GVM management layer that need to be coded for each backend. This is the PostgreSQL version.

Macro Definition Documentation

◆ VULNS_RESULTS_WHERE

#define VULNS_RESULTS_WHERE
Value:
" WHERE uuid IN" \
" (SELECT nvt FROM results" \
" WHERE (results.severity != " G_STRINGIFY (SEVERITY_ERROR) "))"

Results WHERE SQL for creating views in create_tabes.

Function Documentation

◆ check_db_sequences()

void check_db_sequences ( )

Ensure sequences for automatic ids are in a consistent state.

Caller must organise a transaction.

◆ manage_cert_db_exists()

int manage_cert_db_exists ( )

Check if CERT db exists.

Returns
1 if exists, else 0.

◆ manage_cert_loaded()

int manage_cert_loaded ( )

Check whether CERT is available.

Returns
1 if CERT database is loaded, else 0.

◆ manage_create_sql_functions()

int manage_create_sql_functions ( )

Create functions.

Returns
0 success, -1 error.

◆ manage_db_check()

int manage_db_check ( const gchar *  name)

Dummy function.

Parameters
[in]nameDummy arg.
Returns
0.

◆ manage_db_check_mode()

void manage_db_check_mode ( const gchar *  name)

Dummy function.

Parameters
[in]nameDummy arg.

◆ manage_db_empty()

int manage_db_empty ( )

Check whether database is empty.

Returns
1 if empty, else 0.

◆ manage_db_init()

int manage_db_init ( const gchar *  name)

Init external database.

Parameters
[in]nameName. "cert" or "scap".
Returns
0 success, -1 error.

◆ manage_db_remove()

void manage_db_remove ( const gchar *  name)

Attach external databases.

Parameters
[in]nameDatabase name.

◆ manage_scap_db_exists()

int manage_scap_db_exists ( )

Check if SCAP db exists.

Returns
1 if exists, else 0.

◆ manage_scap_loaded()

int manage_scap_loaded ( )

Check whether SCAP is available.

Returns
1 if SCAP database is loaded, else 0.

◆ manage_session_init()

void manage_session_init ( const char *  uuid)

Setup session.

Parameters
[in]uuidUser UUID.

◆ manage_session_set_timezone()

void manage_session_set_timezone ( const char *  zone)

Setup session timezone.

Parameters
[in]zoneTimezone.

◆ manage_update_cert_db_init()

int manage_update_cert_db_init ( )

Database specific setup for CERT update.

Returns
0 success, -1 error.

◆ manage_update_scap_db_init()

int manage_update_scap_db_init ( )

Database specific setup for SCAP update.

Returns
0 success, -1 error.

◆ sql_rename_column()

void sql_rename_column ( const char *  old_table,
const char *  new_table,
const char *  old_name,
const char *  new_name 
)

Move data from a table to a new table, heeding column rename.

Parameters
[in]old_tableExisting table.
[in]new_tableNew empty table with renamed column.
[in]old_nameName of column in old table.
[in]new_nameName of column in new table.